2
0
mirror of https://github.com/m-labs/artiq.git synced 2024-12-28 12:48:26 +08:00
Commit Graph

3780 Commits

Author SHA1 Message Date
8f2d85fc5b add back ad9154_reg.py 2017-06-19 23:45:32 +08:00
c86029bca2 i2c: expose restart as syscall, add structure for I2C-over-DRTIO 2017-06-19 23:44:51 +08:00
268b7d8aaf typo 2017-06-19 15:42:10 +08:00
09d198c7a1 test: add test for exception on non-existent I2C bus 2017-06-19 15:32:09 +08:00
d08bd58dff versioneer: cut git hashes consistently (#753) 2017-06-19 15:31:48 +08:00
6c6bb67618 libboard: fix compiler warning on not(has_i2c) 2017-06-19 14:57:15 +08:00
5d63489080 i2c,spi: add busno error detection 2017-06-19 14:27:30 +08:00
0d8067256b rtio: refactor RelaxedAsyncResetSynchronizer 2017-06-18 14:37:08 +02:00
8399f8893d add kernel access to non-realtime SPI buses (#740) 2017-06-18 12:45:07 +08:00
424b2bfbd8 rtio: describe rio and rio_phy domains a bit more 2017-06-17 12:21:07 +02:00
219dfd8984 rtio: add one register level for rio and rio_phy resets
* This should give Vivado some wiggle room during PnR.
* It needs three new clock domains which is ugly. But since
AsyncResetSynchronizer can only drive clock domains resets directly
there seems to be no other way to add one register level currently.
2017-06-17 12:17:48 +02:00
8fea361412 firmware: always use 8 characters to abbreviate git commit hashes 2017-06-17 14:43:50 +08:00
e19bfd4781 test_sawg_fe: add ref_multiplier to simulated core 2017-06-16 19:45:24 +02:00
b5772f478a sawg: add channel reset (closes #751) 2017-06-16 19:31:57 +02:00
2a76034fbc cri: add note about clearing of o_data 2017-06-16 19:06:00 +02:00
fecc42fd0c sawg/phaser: expand documentation (closes #750) 2017-06-14 11:49:52 +02:00
858c1be381 sawg: expand documentation 2017-06-13 18:51:48 +02:00
3f37870e25 sawg: register pre-hbf adder 2017-06-13 18:15:44 +02:00
e229edd5d5 sawg: add register after hbf for timing 2017-06-12 23:08:27 +02:00
315338fca9 test/sawg: test HBF overshoot, fix sim patching 2017-06-12 20:35:47 +02:00
9a8a7b9102 sawg: handle clipping interpolator
* give 1 bit headroom to interpolator to handle overshoot
* fix Config limiter widths (NFC)
* move clipper to behind the HBF to correctly shield DUC

This leaves a factor of two headroom for the sum of the following
effects:

  * HBF overshoot (~15 % of the step)
  * A1/A2 DDS sum

While this is technically not sufficient and can still lead to
overflows, it is unlikely that one would trigger those. It would require
doing large amplitude A1, large amplitude A2 and additionally doing
amplitude/phase jumps that would overshoot the HBF. No sane person would
try that, right?

closes #743
2017-06-12 20:33:54 +02:00
1fb3995ffc Revert "fir/ParallelHBFUpsampler: add headroom (gain=2)"
This reverts commit 6ac9d0c41e.

Overshooting behavior must to be handled outside the FIR.
2017-06-12 20:07:25 +02:00
332bcc7f3b fir: check widths 2017-06-12 20:07:23 +02:00
39a1dcbb3d test/fir: look at overshoot behavior 2017-06-12 20:06:07 +02:00
6ac9d0c41e fir/ParallelHBFUpsampler: add headroom (gain=2)
This addresses part of #743
2017-06-12 18:59:45 +02:00
566ff73dff pdq: unify spi-PDQ and usb-PDQ protocols 2017-06-10 15:03:25 +02:00
6c54c0f834 sawg: update example 2017-06-10 11:52:48 +02:00
d8aee931ba sawg: extend phase mode docs 2017-06-09 12:26:49 +02:00
whitequark
f7254dd3ce compiler.validators.constness: take AugAssign into account. 2017-06-09 07:31:08 +00:00
whitequark
ad2ee714c2 compiler: do not permit iterating str values.
This currently breaks badly on UTF-8, and doesn't even return
a value of a correct type.
2017-06-09 07:29:31 +00:00
whitequark
4e7493843a compiler: Constness is a validator, not analysis. 2017-06-09 07:29:31 +00:00
whitequark
5d841d08e9 compiler: do not permit mutation of bytes values (#714). 2017-06-09 07:29:28 +00:00
whitequark
284382b1f5 compiler: add support for bytearray values in RPC (#714). 2017-06-09 07:15:25 +00:00
whitequark
9ed4e9c1cd compiler: add support for printing of bytearray values (#714). 2017-06-09 07:15:25 +00:00
whitequark
e9564b15c8 compiler: add support for bytearray type (#714). 2017-06-09 07:15:24 +00:00
whitequark
5b4fde30a8 compiler: unbreak subscripts for bytes values (#714). 2017-06-09 07:10:48 +00:00
whitequark
66a683f583 compiler: add support for bytes values in RPC (#714). 2017-06-09 07:10:48 +00:00
whitequark
778e7dc2ab compiler: add support for concatenating bytes values (#714). 2017-06-09 07:10:48 +00:00
whitequark
7b2da5294f compiler: add support for printing of bytes values (#714). 2017-06-09 07:10:48 +00:00
whitequark
dba4e1a28b compiler: add support for bytes type and b"x" literals (#714). 2017-06-09 07:10:48 +00:00
whitequark
d0e92067c3 ksupport: fix UB. 2017-06-09 06:18:20 +00:00
91ad2bc600 sawg: add note about disabled q-exchange 2017-06-07 09:13:01 +02:00
94273e9455 sawg: add non-mu methods for limiter 2017-06-07 09:12:36 +02:00
ebb4660207 coredevice: compare software and gateware versions strictly 2017-06-07 02:11:54 +08:00
f3c7a7de3b phaser: remove non-functional SPI examples
Those will be reimplemented after we have converter SPI access, but this will not be part of the 3.0 release.
2017-06-06 17:37:13 +08:00
ab493a860d coredevice: fix socket resource leak 2017-06-05 15:45:40 +08:00
bea7a47349 coredevice: compare gateware and software versions on release numbers only. Closes #738 2017-06-05 13:52:24 +08:00
9c973793df update versioneer 2017-06-05 13:27:26 +08:00
92307d1f9c fix some missing pdq2→pdq renames 2017-06-03 18:35:36 +08:00
2458da1ade pdq: get new host driver, adapt 2017-05-31 00:20:10 +02:00
2895448477 sawg: link Spline in docs 2017-05-23 10:33:04 +02:00
52625d57f0 sawg: explain DUC 2017-05-23 10:28:23 +02:00
bfc224d4ba phaser: adjust to new jesd 2017-05-22 19:59:53 +02:00
679060af1d phaser: enable dma 2017-05-22 19:32:34 +02:00
06721c19c4 sawg: work around bool->int 2017-05-22 18:50:58 +02:00
1562f79101 sawg: expose config channel 2017-05-22 18:27:42 +02:00
4901cb9a8a sawg: fix clr width 2017-05-22 17:46:55 +02:00
253ee950f6 sawg: fix config channel addr 2017-05-22 17:45:14 +02:00
e845de2ff2 remove aqcli_pdq2 2017-05-22 19:17:23 +08:00
e4a631a3d7 scheduler: consider the pipeline flushed if everything has a lower priority than us. Closes #640 2017-05-22 18:43:59 +08:00
5fc953119e fix usage of CommMgmt 2017-05-22 17:32:11 +08:00
6bdb76e9ea core device logging controller WIP (#691) 2017-05-22 16:48:00 +08:00
5ccca74a3f fold comm device into core device 2017-05-22 15:45:45 +08:00
e7382f4753 fix test_ctlmgr 2017-05-22 15:04:46 +08:00
0ae5e6d8b1 test_lda: more thorough and consistent test of simulation mode 2017-05-22 00:26:05 +08:00
3ed70afaa1 Use commandline prefix for controllers
This keeps them better organized and consistent with the artiq_* naming scheme.
Tab completion from aqctl_ also lists all the controllers installed on a machine.
2017-05-22 00:22:10 +08:00
c83e15d040 artiq_corelog: cleanup 2017-05-22 00:06:03 +08:00
8cf0628435 fix lit tests 2017-05-18 23:41:01 +08:00
b7a94d466d fix experiment name conflict in phaser example 2017-05-18 23:14:55 +08:00
cd757c0f16 generate device database from executable python file 2017-05-18 23:14:55 +08:00
Florent Kermarrec
db3e1aef77 examples/phaser: adapt test_ad9154_prbs to new prbs in fabric 2017-05-15 16:12:02 +02:00
9ab63920e0 Remove Pipistrello support
Closes #658
Closes #381
2017-05-15 17:17:44 +08:00
ad85a0cee3 add session manager (#691) 2017-05-15 17:05:22 +08:00
0b6fb95deb firmware: fix revision of compiler_builtins for satman 2017-05-13 15:12:53 +01:00
170d2886fd Merge branch 'pdq'
* pdq:
  pdq: documentation
  pdq2 -> pdq
  pdq2: use 16 bit data, buffered read_mem()
  spi: style
  pdq2: mem_read
  pdq2: align subsequent writes to end
  sma_spi: undo cri_con
  pdq2: memory write, kernel_invariants
  sma_spi: cri/cd changes
  sma_spi: LVCMOS25
  coredevice.spi: kernel invariants and style
  sma_spi: free up user_sma pins
  sma_spi: add demo target with SPI on four SMA
  pdq2: memory write
  pdq2: crc/frame register accessors
  doc: pdq2 spi backend
  pdq2: config writes
2017-05-12 11:46:45 +02:00
fed24309b8 pdq: documentation 2017-05-02 18:55:02 +02:00
1a1edb13bf pdq2 -> pdq 2017-05-02 18:05:41 +02:00
Florent Kermarrec
79c339d4ac gateware/targets/phaser: jesd core now handles jsync completely 2017-04-26 22:25:08 +02:00
8ebb33c05c master: record time run() is called 2017-04-26 23:36:19 +08:00
Florent Kermarrec
0546affd4c gateware/target/phaser: jesd start signal renamed to jsync 2017-04-26 12:27:40 +02:00
whitequark
bb64992395 compiler: remove dead code. 2017-04-21 18:38:43 +00:00
whitequark
c5d7445973 compiler: reject reachable implicit return if not returning TNone.
Fixes #718.
2017-04-21 18:11:14 +00:00
whitequark
ed2b10c5aa compiler: in codegen for delay(), round fp instead of truncating.
Consider delay(8*us). It results in the following computation...
  >>> 8*1e-06/1e-09
  7999.999999999999
with the result promptly getting truncated to 7999.

Fixes #706.
2017-04-21 17:36:44 +00:00
whitequark
a820ae98cf ksupport: avoid allocations on I/O error paths.
Fixes #715.
2017-04-21 17:20:50 +00:00
whitequark
b913d1d6f2 runtime: make a copy of startup/idle kernel firmware before loading.
Fixes #716.
2017-04-21 16:46:40 +00:00
whitequark
726ee7370a runtime: update smoltcp.
This brings in correct TIME-WAIT handling. Fixes #722.
2017-04-21 16:08:04 +00:00
whitequark
0e68eaa879 runtime: print a heap dump on out-of-memory condition. 2017-04-21 14:48:10 +00:00
whitequark
fd994ceef3 DMA: various fixes to bring tests in line. 2017-04-20 20:05:03 +00:00
whitequark
db494967c5 firmware use Rust 0.18.0. 2017-04-19 09:38:24 +00:00
fe05aede78 firmware: DmaPlayback → DMARetrieve 2017-04-19 11:11:42 +08:00
e8f7f8ef9c DMA: speed up playback
Time reduced from 1.53µs to 1.37µs.
2017-04-19 10:59:12 +08:00
whitequark
41c4de4556 DMA: add API for a much faster replay using handles. 2017-04-18 08:20:12 +00:00
whitequark
c6e8d5c901 runtime: allow setting UART log level explicitly.
This is way more convenient than commenting out parts
of session.rs when debugging.
2017-04-15 08:27:18 +00:00
whitequark
0531dc45c3 DMA: erase trace before re-recording it.
Or we could needlessly OOM replacing a large trace.
2017-04-15 07:48:02 +00:00
whitequark
9dfe9c1248 DMA: improve recording performance.
This commit moves DMA serialization code to the kernel CPU
(to cope with the existence of rtio_output_wide) and batches
the resulting sequences. This results in less data being transferred
between kernel and comms CPUs (24 octets with one pointer before,
18 octets with no pointers now, for the common case of rtio_output),
but most importantly reduces cache flushes, which now happen
once per 64k octets.

On average, it now takes about 15us to record a single RTIO event
in a DMA trace.

Fixes #712.
2017-04-15 07:29:52 +00:00
whitequark
ea753bed17 runtime: advise to set panic_reboot=1 on panic. 2017-04-15 07:29:36 +00:00
534e681d0b pdq2: use 16 bit data, buffered read_mem() 2017-04-13 20:49:46 +02:00
90cf11994e spi: style 2017-04-13 13:38:29 +02:00
8446cccb4e pdq2: mem_read 2017-04-13 13:38:13 +02:00
whitequark
0b9601f12d artiq_devtool: more robust defaults. 2017-04-13 08:26:48 +00:00
whitequark
3a1fc729cf compiler: refactor type annotations recognizing in kernels.
The new implementation is much more generic, more robust,
and shares code with the same for syscalls as well as RPCs.

Fixes #713.
2017-04-13 08:26:10 +00:00
whitequark
31048f4b6a compiler: fix monomorphization of coerced integer literals.
Fixes #703.
2017-04-12 04:11:47 +00:00
whitequark
296dc3b0c4 artiq_coreboot: allow hot-rebooting the device. 2017-04-11 03:24:24 +00:00
whitequark
1bd4d13391 artiq_compile: make print() write to core log, not an invalid op.
Fixes #710.
2017-04-11 03:16:34 +00:00
20652ce128 pdq2: align subsequent writes to end 2017-04-09 13:50:19 +02:00
ed8edf318d sma_spi: undo cri_con 2017-04-08 17:19:35 +02:00
78dd4b8614 pdq2: memory write, kernel_invariants 2017-04-08 17:16:19 +02:00
16b7f8f50c sma_spi: cri/cd changes 2017-04-08 17:16:19 +02:00
1e6e81a19e sma_spi: LVCMOS25 2017-04-08 17:16:19 +02:00
0838981bed coredevice.spi: kernel invariants and style 2017-04-08 17:16:19 +02:00
555b3c38c1 sma_spi: free up user_sma pins 2017-04-08 17:16:19 +02:00
2c7c6143ab sma_spi: add demo target with SPI on four SMA 2017-04-08 17:16:19 +02:00
f13f6eb7be pdq2: memory write 2017-04-08 17:16:19 +02:00
b9c61ae2da pdq2: crc/frame register accessors 2017-04-08 17:16:19 +02:00
aebbaa339e pdq2: config writes 2017-04-08 17:16:18 +02:00
f314f8b8f5 relax test_rpc_timing 2017-04-08 22:45:08 +08:00
c2667debf8 drtio: test replace in RTL simulation 2017-04-06 16:33:59 +08:00
729e7b52f0 drtio: collision/replace fixes 2017-04-06 16:33:49 +08:00
83d87b5805 drtio: remove outdated comment 2017-04-06 12:45:10 +08:00
c0100ebc56 rtio: fix indentation 2017-04-06 12:08:13 +08:00
207453efcd rtio: add a missing case for collision reporting 2017-04-06 11:28:16 +08:00
whitequark
14ae1cc100 runtime: advance now on DMA replay.
Fixes #700.
2017-04-05 18:34:36 +00:00
674bf82f3a gateware: add cri_con CSRs to all DMA-capable targets 2017-04-06 01:14:09 +08:00
5e3aef45dc drtio: support collision/replace + detect sequence errors at satellite 2017-04-06 01:06:56 +08:00
whitequark
56918fb375 test: re-enable DMA tests as the feature is now stable. 2017-04-05 16:43:22 +00:00
whitequark
17b5388259 gateware: remove one stray CRI arbiter remnant. 2017-04-05 16:38:56 +00:00
whitequark
464202d0aa gateware: connect CRI switch to kernel CPU. 2017-04-05 16:10:53 +00:00
whitequark
47632f81b1 gateware: CRIArbiter -> CRISwitch. 2017-04-05 16:10:39 +00:00
whitequark
391660e545 gateware: simplify the CRI arbiter to use a plain mux. 2017-04-05 15:09:19 +00:00
12249dac57 rtio: do not clear asynchronous error flags on RTIO reset 2017-04-03 00:20:30 +08:00
db3118b916 drtio: use BlindTransfer for error reporting 2017-04-03 00:18:07 +08:00
8c414cebc7 drtio: report busy errors 2017-04-03 00:11:08 +08:00
008678b741 drtio: add infrastructure for reporting busy/collision errors 2017-04-02 23:45:55 +08:00
0a687b7902 drtio: report satellite errors through firmware 2017-04-01 12:18:00 +08:00
whitequark
8b98e1ea6d test: relax test_rpc_timing: rpc_time_mean <2ms → <3ms. 2017-03-31 20:41:47 +00:00
7ec14f26c2 examples: fix after introduction of RangeScan 2017-03-31 16:54:07 +08:00
58da76a169 gui: remove unnecessary state test 2017-03-31 16:48:39 +08:00
bdf1ca25c6 scannable: fix RangeScan randomize seeding 2017-03-31 16:48:39 +08:00
07c71bf020 language,gui: combine LinearScan and RandomScan into RangeScan. Closes #679 2017-03-31 16:48:39 +08:00
28211e0b32 gateware: reset RTIO DMA core when kernel CPU is reset 2017-03-31 15:35:28 +08:00
200c499114 test: change base address in DMA simulation testbench 2017-03-31 13:17:00 +08:00
whitequark
245e186347 Commit missing parts of 948ed6fb. 2017-03-29 18:34:08 +00:00
756e8a415e language: fix PYONValue list defaults (fixes #682) 2017-03-29 21:58:34 +08:00
whitequark
d04d7ed120 runtime: show a more informative message for interrupted sessions.
Fixes #690.
2017-03-29 03:36:49 +00:00
whitequark
948ed6fb0a Extract core device management interface from session interface (#691). 2017-03-29 03:36:21 +00:00
2e2d0be201 skip crashing DMA tests on buildbot 2017-03-29 09:36:51 +08:00
452bc6ecac monkey_patches: fix 3af29f7 2017-03-29 01:07:32 +02:00
whitequark
b643847da5 Fix a misleading message for non-clean kernel termination. 2017-03-28 14:22:20 +00:00
whitequark
7eb368fd5d test: add DMA test that checks the analyzer trace. 2017-03-28 14:22:20 +00:00
6caab4d10b test: verify that RTIO collisions appear in log 2017-03-27 18:08:03 +08:00
432c6b99e2 master: still save results when analyze fails. Closes #684 2017-03-27 17:57:02 +08:00
70343b244d test: add more RTIO slack in test_clock_generator_loopback 2017-03-27 17:26:23 +08:00
58ee09dbdc test: re-enable test_clock_generator_loopback
It passes now for some reason.
2017-03-27 17:26:02 +08:00
b9ff5afc85 dma: improve/fix documentation 2017-03-27 17:21:39 +08:00
2c3f720301 runtime: report asynchronous RTIO errors (collision, busy) in log. Closes #681 2017-03-27 17:14:14 +08:00
ea3af1e20e drtio: remove obsolete CSR accesses from test 2017-03-27 16:44:22 +08:00
b74d6fb9ba make collision and busy asynchronous errors, and simplify CPU/gateware handshake for output errors and reads 2017-03-27 16:32:23 +08:00
1ee3f96482 test: self.break_realtime → self.core.break_realtime 2017-03-27 16:31:11 +08:00
whitequark
ac9e8b8568 test: avoid underflow in DMA replay test. 2017-03-17 12:09:02 +00:00
whitequark
dbea679e96 Revert "test: relax test_rpc_timing on Windows."
This reverts commit e9cf451c0b.
2017-03-17 11:34:45 +00:00
whitequark
e9cf451c0b test: relax test_rpc_timing on Windows. 2017-03-17 11:20:16 +00:00
whitequark
7dc7dcda2c test: relax test_pulse_rate_dds to only catch catastrophic slowdown. 2017-03-17 11:17:47 +00:00
whitequark
4de336fbe9 gateware: reverse bytes of SDRAM word, not bits. 2017-03-17 11:16:46 +00:00
whitequark
6b63322106 gateware: reverse SDRAM words in RTIO DMA engine. 2017-03-17 07:29:28 +00:00
whitequark
4b14887ddb gateware: work around ISE/Vivado bugs with very wide shifts. 2017-03-17 07:29:28 +00:00
f5aa73b8fa satman: unbreak after c586035c 2017-03-15 17:26:09 +08:00
whitequark
c586035caa runtime: add an option to reboot after a panic. 2017-03-14 09:02:28 +00:00
whitequark
80c75ed505 firmware: fix for unwinder update. 2017-03-14 08:50:32 +00:00
whitequark
4beda73217 firmware: don't build libdyld through misoc. 2017-03-14 08:33:31 +00:00
a7de58b604 rtio: Inout → InOut 2017-03-14 14:18:55 +08:00
13ae1d1a38 drtio: input unittest 2017-03-14 14:14:55 +08:00
56fd9b3b4b drtio: input fixes 2017-03-14 14:14:43 +08:00
856a64f6d2 drtio: use TTLInOut in device_db 2017-03-14 14:13:52 +08:00
95ede18809 drtio: support PHY latency compensation 2017-03-14 00:01:38 +08:00
497c795d8c drtio: input support (untested) 2017-03-13 23:54:44 +08:00
d1b9f9d737 drtio: rt_packets → rt_packet 2017-03-13 00:10:07 +08:00
6b7c781ff2 drtio: introduce 'standard request' interface in RT packet layer 2017-03-13 00:08:03 +08:00
2b8729f326 drtio: clear any read request on satellite reset 2017-03-13 00:00:38 +08:00
whitequark
b391598c87 artiq_devtool: add reset action. 2017-03-07 14:37:08 +00:00
whitequark
5bbb05362b runtime: update smoltcp. 2017-03-07 11:36:28 +00:00
whitequark
d52723d5bc runtime: allow setting log level in configuration. 2017-03-07 11:36:28 +00:00
whitequark
cce1481fac artiq_devtool: add hotswap action. 2017-03-07 11:36:28 +00:00
whitequark
795a3e24d8 artiq_coreboot: block until hotswap image is actually received. 2017-03-07 11:36:28 +00:00
804e69b144 language: add "W" (Watt) to units 2017-03-07 10:03:42 +08:00
6895236794 frontend: fix permissions 2017-03-07 00:47:45 +08:00
1e47e638bb drtio: implement inputs in RTPacketSatellite, reorganize code 2017-03-07 00:46:59 +08:00
whitequark
b0cdef3211 firmware: implement hotswap through artiq_coreboot tool. 2017-03-06 16:01:28 +00:00
whitequark
98454e9bda runtime: remove unnecessary dcache flush.
Data cache is write-through, so sending data to DMA doesn't need
a flush.
2017-03-04 09:46:55 +00:00
whitequark
218046d96c artiq_devtool: fix an infinite loop on network error. 2017-03-04 09:40:22 +00:00
whitequark
924ae73000 firmware: fix DMA trace alignment and flush caches. 2017-03-04 09:40:22 +00:00
whitequark
30ac42de3f ksupport: fix an exception safety issue.
Raising from inside a recv! will never send an acknowledgement.
2017-03-04 09:40:22 +00:00
f121ca20fe test: relax test_pulse_rate_dds 2017-03-03 18:10:27 +08:00
1e6a33b586 rtio: handle input timeout in gateware
The information passed by the runtime will be used by the DRTIO core
to poll the remote side appropriately.
2017-03-03 17:37:47 +08:00
whitequark
4f94709e9f firmware: move packet dumps to the DEBUG log level. 2017-03-03 06:11:35 +00:00
whitequark
e8c093deb3 Allow changing runtime log level without recompilation.
This shouldn't affect performance much, as the log crate guards
every log statement with a branch, adding just two instructions.
2017-03-03 06:06:26 +00:00
whitequark
fe77fcc45f firmware: fix a warning. 2017-03-03 05:35:28 +00:00
whitequark
3070a2fac1 runtime: fix more bugs in DMA trace encoder. 2017-03-03 05:15:54 +00:00
whitequark
86dea869b3 compiler.types: add missing TTuple.__hash__ implementation. 2017-03-03 03:27:49 +00:00
whitequark
7e886ddc89 transforms.inferencer: do not unnecessarily mutate typedtree.
This caused the hash to change after every iteration of inference,
if the result of any coercion was an integer of indefinite width.
2017-03-02 16:15:37 +00:00
whitequark
8c9f157563 compiler.embedding: fix an overly lax hasher. 2017-03-02 15:28:24 +00:00