nac3/nac3standalone/demo/src
David Mak 31dcd2dde9 core: Use i8 for boolean variable allocation
In LLVM, i1 represents a 1-byte integer with a single valid bit; The
rest of the 7 upper bits are undefined. This causes problems when
using these variables in memory operations (e.g. memcpy/memmove as
needed by List slicing and assignment).

We fix this by treating all local boolean variables as i8 so that they
are well-defined for memory operations. Function ABIs will continue to
use i1, as memory operations cannot be directly performed on function
arguments or return types, instead they are always converted back into
local boolean variables (which are i8s anyways).

Fixes #315.
2023-09-25 15:42:07 +08:00
..
bool_literal_condition.py core: Use i8 for boolean variable allocation 2023-09-25 15:42:07 +08:00
classes.py nac3standalone: reorganize demos, compare against cpython 2022-01-23 10:35:06 +08:00
default_param.py nac3standalone: add test for default param 2022-03-30 04:05:47 +08:00
inheritance.py nac3standalone: add more tests 2022-06-01 17:58:16 +08:00
len.py nac3standalone: add tests for list slice and len 2022-01-26 03:58:27 +08:00
list_slice_issue315.py core: Use i8 for boolean variable allocation 2023-09-25 15:42:07 +08:00
lists.py nac3standalone: fix broken test 2022-04-05 18:21:46 +08:00
loop_decr.py core: Preserve value of variable shadowed by for loop 2023-09-06 20:09:36 +08:00
loop_iterable.py core: Use C-style for loop logic for iterables 2023-09-06 20:09:38 +08:00
loop_mutate_var.py core: Preserve value of variable shadowed by for loop 2023-09-06 20:09:36 +08:00
loop.py standalone: Adapt loop example to output loop variable 2023-09-06 18:56:45 +08:00
mandelbrot.py nac3standalone: reorganize demos, compare against cpython 2022-01-23 10:35:06 +08:00
min_max_abs.py nac3standalone: add test for abs function 2022-03-08 23:26:01 +08:00
operators.py nac3standalone: add tests for operators 2022-04-18 15:31:56 +08:00
option.py Option type support (#224) 2022-03-26 15:09:15 +08:00
pow.py nac3standalone: add tests for power 2022-04-04 22:10:56 +08:00
recursive_type.py nac3standalone: add more tests 2022-06-01 17:58:16 +08:00
tuple.py nac3standalone: add tests for tuple 2022-03-27 10:31:20 +08:00
typevar.py nac3standalone: add more tests 2022-06-01 17:58:16 +08:00