Opened 3 years ago
Closed 3 years ago
#298 closed defect (fixed)
illegal bytecode on RISC-V
Reported by: | Jan Vrany | Owned by: | |
---|---|---|---|
Priority: | major | Milestone: | 8.1.0 |
Component: | default | Keywords: | riscv vm |
Cc: | Also affects CVS HEAD (eXept version): | no |
Description
Smalltalk/X compiled for riscv64-linux-gnu
executes illegal bytecode. producing:
INTERP [debug] (19-11-12 23:01:45): illegal bytecode: 108 (0x6c) at pc 325 (101 118 101 108 32 <-) INTERP [debug] (19-11-12 23:01:45): illegal bytecode: 108 (0x6c) at pc 282 (116 78 105 108 32 <-) ProcessorScheduler [warning] (2019-11-12 23:03:13.830): cannot evaluate timedBlock ([] in ToolApplicationModel>>startClock) for dead process: 'ST/X Launcher' DebugView [info] (2019-11-12 23:03:16.505): ignored error while unwinding: UndefinedObject does not understand: #critical: DebugView [info] (2019-11-12 23:03:16.510): ignored error while unwinding: UndefinedObject does not understand: #critical: DebugView [info] (2019-11-12 23:03:16.514): ignored error while unwinding: Non boolean receiver - proceed for truth
This is probaly a symptom of something more fundamental as both embedded and standalone test runner UI is messed up (some widgets are missing, layout seem to be wrong).
Attachments (1)
Change History (2)
Changed 3 years ago by
Attachment: | issue298_riscv_crash.st added |
---|
comment:1 Changed 3 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
Fixed in stc:
5c2e3c08ce28/stx.stc: RISC-V: #define HAS_SIGNED_CHAR
This fixes nasty bug in interpreter causing jumps to wrong
offsets, sometimes out of bytecode array.
Note: See
TracTickets for help on using
tickets.
test case