Closed Bug 1321326 Opened 8 years ago Closed 7 years ago

Wasm ARM: Test suite failures on hardware

Categories

(Core :: JavaScript Engine: JIT, defect, P2)

ARM
Linux
defect

Tracking

()

RESOLVED DUPLICATE of bug 1283121

People

(Reporter: lth, Unassigned)

References

Details

Machine: NVIDIA Jetson TK1 dev board (4xTegra, 2GB RAM, Ubuntu 14.04)

This is not the world's most reliable computer but the following errors seem to be repeatable:

- wasm/errors.js times out when compiled by baldr
- wasm/memory.js crashes the system (? at least hangs) when compiled by baldr
- wasm/spec/float_memory.wast.js fails when compiled by either compiler
  (see below)
- wasm/spec/memory_redundcancy.wast.js crashes the system when compiled by
  baseline

float_memory.wast.js failure:
Assertion failed: got 1.5932920260919303e-10, expected ({nan_low:2141192192})

(I know ARM's not top priority right now; this is just fallout from trying to track down another bug.)
Both compilers crash on wasm/spec/memory_redundancy.wast.js because we do not support unaligned-access signals, this is bug 1283121.
Both compilers crash on wasm/spec/float_memory.wast.js because the unaligned-access signal handler (seeing a floating-point load) replaces the faulting PC with the same PC, so we iloop.  I haven't dug deeply into the logic in the signal handler, but this is the effect.
Both compilers crash on wasm/memory.js for the same reason as comment 2.
And as for wasm/errors.js, it hangs for the same reason as in comment 2 and comment 3, but it is arguably a different bug because all these accesses are out of bounds and bounds checking should "just work".  It could be, as Benjamin said on IRC, that it can be hard for the trap handler to figure out what's going on because it has imprecise information.

Will file a separate bug for this, but also annotate the general signal handler bug.
Actually it's all signal handling, let's not multiply entities beyond necessity.
Status: NEW → RESOLVED
Closed: 7 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.