|
482f4651ff
|
language/core: add 'portable' decorator
|
2014-10-13 17:04:32 +08:00 |
|
|
4361c7cb49
|
language/core: support cycles_to_time and time_to_cycles outside of kernel
|
2014-10-12 22:59:19 +08:00 |
|
|
9925568473
|
devices/runtime: add returns_twice attribute on __eh_setjmp (fixes exception crashes)
|
2014-10-11 12:59:39 +08:00 |
|
|
3ee9a87a00
|
transforms/lower_time: optimize time_to_cycles(cycles_to_time(x)) -> x
|
2014-10-11 12:04:14 +08:00 |
|
Yann Sionneau
|
e3ef077cb2
|
Fix module installation
Allow to use setup.py for ARTIQ instead of PYTHONPATH.
Without this, the installation is incomplete.
|
2014-10-11 00:42:26 +08:00 |
|
|
c659acb26e
|
transforms/lower_time: fix time_to_cycles/cycles_to_time
|
2014-10-11 00:35:49 +08:00 |
|
|
2920ac85d2
|
transforms/inline: support attributes on user variables/calls
|
2014-10-08 18:01:15 +08:00 |
|
|
e22301ea05
|
transforms: track units, now() returns seconds, implement time_to_cycles and cycles_to_time
|
2014-10-06 23:28:56 +08:00 |
|
|
1a64e92e75
|
language/units: add mod
|
2014-10-06 23:26:35 +08:00 |
|
|
0985a53df2
|
language/core: add time_to_cycles and cycles_to_time
|
2014-10-06 23:26:21 +08:00 |
|
|
9caaaeb414
|
py2llvm/fractions: add lt, le, gt, ge comparisons
|
2014-10-06 23:22:05 +08:00 |
|
|
8612a8a9ca
|
devices/dds_core: remove stale kernel_attr
|
2014-10-06 17:23:00 +08:00 |
|
|
70fc0f6ce7
|
language/units: better support for ops on different dimensions
|
2014-10-05 23:15:25 +08:00 |
|
|
6c44fe0a87
|
language/units: fix printing
|
2014-10-05 21:35:24 +08:00 |
|
|
2a19d7d32b
|
language/units: use only a string to identify units
|
2014-10-05 21:01:08 +08:00 |
|
|
2944592201
|
Remove microcycle unit
Introducing it complicates things and has no advantage with good rational arithmetic support.
|
2014-10-05 17:54:22 +08:00 |
|
|
59194176a9
|
add rudimentary master/controller/client
|
2014-10-05 16:25:31 +08:00 |
|
|
76fed11d59
|
rtio: raise RTIOSequenceError exceptions when events are not submitted in-order
|
2014-09-30 19:32:11 +08:00 |
|
|
73d0a84b44
|
doc: various cleanups
|
2014-09-30 18:10:40 +08:00 |
|
|
cb036a30c7
|
devices/dds_core: document
|
2014-09-30 17:38:52 +08:00 |
|
|
5ac42e42c1
|
rename artiq.language.std -> artiq
|
2014-09-30 17:38:02 +08:00 |
|
|
821834891e
|
language/core: use 'var' for class attribute docstring
|
2014-09-30 16:43:27 +08:00 |
|
|
05d8dde412
|
language/core: pass docstrings through kernel decorator
|
2014-09-30 16:43:00 +08:00 |
|
|
5099643f84
|
devices/rtio_core: rename RTIOCounter to RTIOIn and document
|
2014-09-30 16:42:07 +08:00 |
|
|
c95f5bdff3
|
transforms/inline: strip docstrings
|
2014-09-30 00:46:14 +08:00 |
|
|
d3e70ec53d
|
language/units: cleanup and add docstrings
|
2014-09-29 23:41:37 +08:00 |
|
|
f105e5e214
|
language: add std module with common user features
|
2014-09-29 23:14:10 +08:00 |
|
|
1ae7724a15
|
transforms/interleave: support try statements
|
2014-09-29 18:09:48 +08:00 |
|
|
2a40d69290
|
transforms/inline: fix runtime exception encoding
|
2014-09-29 18:09:26 +08:00 |
|
|
4572b7657f
|
devices/runtime_exceptions: fix exception_map generation
|
2014-09-29 18:08:58 +08:00 |
|
|
035b541a73
|
language/core: add RuntimeException
|
2014-09-29 17:36:35 +08:00 |
|
|
4a1cad5227
|
language/core: reduce namespace pollution
|
2014-09-29 17:28:14 +08:00 |
|
|
741228878c
|
add basic setup.py and infrastructure
|
2014-09-27 21:28:06 +08:00 |
|
|
7289c18a42
|
transforms/unroll_loops: count statements in try blocks
|
2014-09-27 11:57:47 +08:00 |
|
|
4a5e398857
|
py2llvm: support continue statement
|
2014-09-27 00:27:11 +08:00 |
|
|
89fdab2176
|
py2llvm: factorize basic block termination test
|
2014-09-26 23:53:56 +08:00 |
|
|
d10112688f
|
py2llvm: execute finally block when exception is re-raised in handler
|
2014-09-26 23:44:44 +08:00 |
|
|
4978f8b3d7
|
py2llvm: remove LLVM-crashing (unreachable) non-SSA path with exception ID
|
2014-09-26 19:38:14 +08:00 |
|
|
20ca97485c
|
py2llvm: support break/return in try block
|
2014-09-26 19:21:49 +08:00 |
|
|
8852dd394e
|
transforms/unroll_loop: handle breaks in try and with blocks
|
2014-09-26 19:20:56 +08:00 |
|
|
f332def3a2
|
py2llvm: fix behaviour of 'break' in 'else' clause of loops
|
2014-09-26 18:16:20 +08:00 |
|
|
af0cd902d3
|
get frequency from RTIO, support fractional frequencies
|
2014-09-26 17:24:06 +08:00 |
|
|
dd6de244fe
|
minor cleanups
|
2014-09-26 17:21:51 +08:00 |
|
|
e0cd45b1ba
|
devices/corecom_serial: do not use deprecated logger.warn
|
2014-09-25 12:58:11 +08:00 |
|
|
4f26b6281d
|
host: support runtime device exceptions
|
2014-09-25 12:57:26 +08:00 |
|
|
cf1f1269b2
|
py2llvm/fractions: use internal linkage for gcd function
|
2014-09-24 19:21:45 +08:00 |
|
|
8aebab580f
|
transforms/inline: support non-hashable host objects
|
2014-09-24 17:16:40 +08:00 |
|
|
82da734e89
|
transforms/inline: remove _is_in_attr_list
|
2014-09-24 17:02:33 +08:00 |
|
|
4d3d15ad99
|
transforms/inline: support reraise and tuple exception matching
|
2014-09-23 22:10:15 +08:00 |
|
|
f7075b24f6
|
py2llvm: fix exception matching
|
2014-09-23 22:09:35 +08:00 |
|
|
af15f45bb9
|
runtime: do not use buggy llvm.eh.sjlj.* intrinsics
|
2014-09-23 22:09:08 +08:00 |
|
|
8b769a0417
|
devices/runtime: add more eh functions
|
2014-09-23 16:25:41 +08:00 |
|
|
d1085449aa
|
py2llvm: support for try/except/else/finally blocks
|
2014-09-23 16:23:54 +08:00 |
|
|
c989daf4d6
|
py2llvm: stop after other types of termination instructions
|
2014-09-23 16:21:48 +08:00 |
|
|
e8c92c3b6f
|
transforms/inline: support catchall 'except' clauses
|
2014-09-23 16:20:36 +08:00 |
|
|
bad87ef38b
|
devices/corecom_serial: unpack unsigned chars
|
2014-09-22 13:23:39 +08:00 |
|
|
19abab3feb
|
devices/runtime: rename syscall to build_syscall
|
2014-09-22 13:22:38 +08:00 |
|
|
5244a63b55
|
devices/runtime: register eh_raise service
|
2014-09-22 13:22:04 +08:00 |
|
|
a8df1703fb
|
py2llvm: support raise statement
|
2014-09-22 13:20:27 +08:00 |
|
|
3de24619b2
|
corecom: exception support
|
2014-09-21 23:36:10 +08:00 |
|
|
e821f9eb83
|
transforms/inline: encode exceptions
|
2014-09-21 23:30:40 +08:00 |
|
|
655835e8de
|
language/core: cleanup
|
2014-09-21 23:18:33 +08:00 |
|
|
320d3c36ed
|
language/core: add EncodedException
|
2014-09-21 23:17:46 +08:00 |
|
|
426d6dd979
|
corecom_serial: logger/debugging
|
2014-09-21 18:19:14 +08:00 |
|
|
7e45cd62ef
|
language/core: add docstrings
|
2014-09-18 17:44:11 +08:00 |
|
|
f5167f21fb
|
language/core: make KernelFunctionInfo private
|
2014-09-18 17:20:34 +08:00 |
|
|
3249b8ad3e
|
language/core: reduce namespace pollution
|
2014-09-18 16:30:38 +08:00 |
|
|
5fe3cffc84
|
transforms/unroll_loop: do not unroll breakable loops
|
2014-09-18 09:53:08 +08:00 |
|
|
0b1ebb1ba5
|
devices/core: raise loop unrolling limit
|
2014-09-17 19:52:18 +08:00 |
|
|
9af0e9c91a
|
devices/runtime: support dumping of ELF object via ARTIQ_DUMP_OBJECT environment variable
|
2014-09-17 18:03:54 +08:00 |
|
|
af6457c5fa
|
devices/core: enable unparser via ARTIQ_UNPARSE environment variable
|
2014-09-17 17:06:51 +08:00 |
|
|
a79709f0ae
|
transforms/inline: let float() calls through
|
2014-09-17 16:42:28 +08:00 |
|
|
97ad9efa85
|
py2llvm/base_types: implement int, floor, floordiv, and boolean ops on floats
|
2014-09-17 16:24:37 +08:00 |
|
|
80f4bc7741
|
py2llvm/base_types: fix corner cases with bool/int/float conversion
|
2014-09-17 16:23:02 +08:00 |
|
|
2e45d7267d
|
py2llvm/fractions: fix round()
|
2014-09-17 16:22:00 +08:00 |
|
|
dc38356ad9
|
transform/tools/value_to_ast: support floats
|
2014-09-16 23:11:53 +08:00 |
|
|
f061b15994
|
py2llvm: add floating point support
|
2014-09-16 23:11:30 +08:00 |
|
|
dbca62c1d7
|
py2llvm/fractions: fix or_sub
|
2014-09-16 16:43:01 +08:00 |
|
|
140b4eb594
|
devices/rtio_core: set OE, implement gate/count
|
2014-09-15 22:48:22 +08:00 |
|
|
8bf7b27a89
|
runtime: increase initial_time
|
2014-09-15 22:47:19 +08:00 |
|
|
11d8840277
|
runtime: new serial protocol, support multiple entry points and log messages
|
2014-09-15 22:40:33 +08:00 |
|
|
f529361c8b
|
runtime: add rtio_oe and rtio_get syscalls
|
2014-09-14 23:30:33 +08:00 |
|
|
a55018953d
|
devices/rtio_core: add dummy counter
|
2014-09-13 19:37:57 +08:00 |
|
|
5c228f9114
|
Consistent variable naming
|
2014-09-13 19:32:21 +08:00 |
|
|
71adcb74bf
|
language/core: remove kernel_attr_ro
|
2014-09-13 19:24:58 +08:00 |
|
|
123ddb26a1
|
transforms/inline: refactor and fix _ReferenceManager.inline
|
2014-09-13 19:24:32 +08:00 |
|
|
dc9515fc62
|
transforms/inline: support for function return values
|
2014-09-13 16:17:16 +08:00 |
|
|
3d440d5f15
|
py2llvm: support pass statements
|
2014-09-13 16:16:15 +08:00 |
|
|
6861d28d2d
|
runtime: support arbitrarily long initial DDS setup time
|
2014-09-12 15:40:34 +08:00 |
|
|
92efde1e40
|
devices/dds_core: support realtime FUD and zero-length pulse collapsing
|
2014-09-12 15:36:17 +08:00 |
|
|
a60e6237bf
|
runtime: increase initial time
This leaves some time for DDS FUD operations to complete.
|
2014-09-12 15:34:29 +08:00 |
|
|
16b2d9f177
|
runtime: support real-time FUD
|
2014-09-12 15:34:11 +08:00 |
|
|
b5f145d976
|
devices: new RTIO driver
|
2014-09-12 15:28:02 +08:00 |
|
|
10d796e026
|
runtime: add rtio_replace syscall
|
2014-09-11 23:14:45 +08:00 |
|
|
f0c2003778
|
py2llvm/fractions: fix addsub with int
|
2014-09-11 23:11:57 +08:00 |
|
|
7e889b014d
|
py2llvm: add break statement support
|
2014-09-10 16:16:12 +08:00 |
|
|
d66448a486
|
py2llvm: for loop and range support
|
2014-09-10 16:06:27 +08:00 |
|
|
5144da3f9a
|
transforms/inline: add sequential block when inlining function
|
2014-09-09 22:01:28 +08:00 |
|
|
e6530075d9
|
devices/dds_core: add on/off methods
|
2014-09-09 22:00:51 +08:00 |
|
|
0ad2b4d09b
|
transform/inline: fix subscript handling
|
2014-09-09 21:03:15 +08:00 |
|