code wiki / _hdl_build / ee_abs.nx

ee_abs.nx source

↩ module page · 23 lines · 746 B

1// DISCOVERED BY nx_evo_cf (evolved control-flow program from examples) -- f(x) w/ a real if-branch, at a HELD-OUT x. license_tier: ORIGINAL 2import "nx_syscalls.nx" 3func main() -> i64 { 4 let x: i64 = -5 5 var acc: i64 = x 6 acc = acc 7 acc = acc + x 8 acc = 0 - acc 9 acc = acc + x 10 if acc < 0 { 11 acc = 0 - acc 12 } 13 sys_write(1, "RESULT=" as *u8, 7) 14 var mm: i64 = acc 15 if mm < 0 { sys_write(1, "-" as *u8, 1); mm = 0 - mm } 16 let t: *u8 = sys_mmap(28) 17 var k: i64 = 0 18 if mm == 0 { t[0] = 48 as u8; k = 1 } 19 while mm > 0 { t[k] = (48 + (mm % 10)) as u8; mm = mm / 10; k = k + 1 } 20 while k > 0 { k = k - 1; sys_write(1, (((t as i64)+k) as *u8), 1) } 21 sys_write(1, "\n" as *u8, 1) 22 return 0 23}