artiq/artiq/coredevice
David Nadlinger 4f311e7448 compiler: Raise exception on failed assert()s rather than panic
This allows assert() to be used on Zynq, where abort() is not
currently implemented for kernels. Furthermore, this is arguably
the more natural implementation of assertions on all kernel targets
(i.e. where embedding into host Python is used), as it matches host
Python behavior, and the exception information actually makes it to
the user rather than leading to a ConnectionClosed error.

Since this does not implement printing of the subexpressions, I
left the old print+abort implementation as default for the time
being.

The lit/integration/instance.py diff isn't just a spurious change;
the exception-based assert implementation exposes a limitation in
the existing closure lifetime tracking algorithm (which is not
supposed to be what is tested there).

GitHub: Fixes #1539.
2020-11-10 00:51:24 +01:00
..
__init__.py integrate new AD9914 driver 2018-05-13 23:29:35 +08:00
ad53xx.py ad53xx: distinguish errors 2020-09-17 14:13:10 +00:00
ad9154_reg.py add back ad9154_reg.py 2017-06-19 23:45:32 +08:00
ad9154_spi.py firmware, sayma: port converter_spi to spi2 2018-03-01 11:19:18 +01:00
ad9910.py AD9910: Write correct number of bits to POW register (#1498) 2020-08-07 10:10:44 +02:00
ad9912_reg.py coredevice/ad9912: add [untested, wip] 2017-11-24 18:47:46 +01:00
ad9912.py ad9912: Fix typing problem on ad9912 (#1466) 2020-06-16 20:17:22 +02:00
ad9914.py Coredevice Input Validation (#1447) 2020-05-17 15:09:11 +02:00
adf5355.py adf5355: style 2020-01-20 13:13:08 +01:00
basemod_att.py basemod_att: fix imports 2020-01-20 20:14:24 +08:00
cache.py compiler: allow specifying per-function "fast-math" flags. 2016-03-28 21:44:08 +00:00
comm_analyzer.py comm_analyzer: make header error flag more general 2020-07-20 19:39:19 +08:00
comm_kernel.py rpc: fixed _write_bool 2020-09-04 13:49:22 +08:00
comm_mgmt.py coredevice: simplify/cleanup network connection code 2019-12-23 19:53:49 +08:00
comm_moninj.py tweak moninj to allow old dashboard with new firmware 2018-08-02 19:34:14 +08:00
core.py compiler: Raise exception on failed assert()s rather than panic 2020-11-10 00:51:24 +01:00
dac34h84.py phaser: another artiq-python signed integer quirk 2020-09-23 15:40:54 +00:00
dma.py documentation improvements 2018-09-26 12:12:37 +08:00
edge_counter.py fix permissions 2019-03-11 20:43:28 +08:00
exceptions.py compiler: Raise exception on failed assert()s rather than panic 2020-11-10 00:51:24 +01:00
fastino.py fastino: documentation and eem pass-through 2020-09-22 17:58:53 +02:00
fmcdio_vhdci_eem.py fmcdio_vhdci_eem: cleanup and document 2018-07-20 09:57:03 +08:00
grabber.py grabber: work around windows numpy int peculiarity (same as a81c12de9) 2018-11-30 18:41:14 +08:00
i2c.py i2c: refactor common operations 2018-06-18 09:34:09 +00:00
kasli_i2c.py add Kasli I2C driver 2019-03-13 15:33:50 +08:00
mirny.py mirny: add to manual 2020-01-20 13:13:08 +01:00
novogorny.py coredevice: configurable initial backing state 2018-05-21 18:55:06 +02:00
pcf8574a.py coredevice: add pcf8574a driver 2018-03-06 14:27:19 +01:00
pcu.py pcu: spelling 2018-06-08 14:39:22 +00:00
phaser.py coredevice/phaser: fix typos in docstring 2020-10-29 20:27:08 +01:00
profiler.py firmware: implement an edge profiler. 2018-05-16 21:53:53 +00:00
rtio.py coredevice, firmware: Add rtio_input_timestamped_data 2018-12-15 00:35:04 +00:00
runtime.py artiq_dir: move out of tools to unlink dependencies 2016-01-25 18:15:50 -07:00
sampler.py coredevice: configurable initial backing state 2018-05-21 18:55:06 +02:00
sawg.py sawg: use new rtio_output() API 2018-11-08 20:16:30 +08:00
shiftreg.py shiftreg: fix get method 2019-12-21 14:17:22 +08:00
spi2.py Docs: fix build warnings (#1234) 2019-01-09 11:39:23 +08:00
spline.py sawg: use new rtio_output() API 2018-11-08 20:16:30 +08:00
spr.py coredevice: expose PCU 2017-02-18 14:09:12 +01:00
suservo.py Coredevice Input Validation (#1447) 2020-05-17 15:09:11 +02:00
trf372017.py phaser: tweak slacks and errors, identify trf 2020-09-24 08:38:30 +00:00
ttl.py doc: clarify TTL direction control with buffered cards 2019-07-24 10:04:45 +08:00
urukul.py Coredevice Input Validation (#1447) 2020-05-17 15:09:11 +02:00
zotino.py zotino: use None as default for ldac and clr 2018-04-22 15:03:01 +08:00