forked from M-Labs/artiq
1
0
Fork 0
artiq/lit-test
whitequark cb3b811fd7 compiler: maintain both the IR and iodelay forms of delay expressions.
After this commit, the delay instruction (again) does not generate
any LLVM IR: all heavy lifting is relegated to the delay and delay_mu
intrinsics. When the interleave transform needs to adjust the global
timeline, it synthesizes a delay_mu intrinsnic. This way,
the interleave transformation becomes composable, as the input and
the output IR invariants are the same.

Also, code generation is adjusted so that a basic block is split off
not only after a delay call, but also before one; otherwise, e.g.,
code immediately at the beginning of a `with parallel:` branch
would have no choice but to execute after another branch has already
advanced the timeline.

This takes care of issue #1 described in 50e7b44 and is a step
to solving issue #2.
2015-11-21 03:22:47 +08:00
..
libartiq_support Fix tests. 2015-11-07 15:17:31 +03:00
test compiler: maintain both the IR and iodelay forms of delay expressions. 2015-11-21 03:22:47 +08:00
harness.py Make sure tests pass both on ARTIQ Python and CPython. 2015-07-23 08:09:25 +03:00
not.py Implement exception raising. 2015-07-27 05:46:43 +03:00