Issue created by Sebastian Huber: 
https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5759



`_CPU_Instruction_illegal()` is `.word 0x0`. Major opcode 0 is `add`,
so the word is `add r0, r0, r0` and it retires without an exception.

UG984 states that the word raises an illegal opcode exception only
where `C_OPCODE_0x0_ILLEGAL` is 1. The exception itself is optional and
needs `C_ILL_OPCODE_EXCEPTION`. Both are synthesis options of the soft
core, and Qemu defaults both to false.

A design which builds the core without either option reaches no
exception handler through this function. The report asks for a word
with an invalid major opcode, which needs one option instead of two.

Found while a per-register validation of the resume was written. This
description was created with Claude Code assistance.

-- 
View it on GitLab: https://gitlab.rtems.org/rtems/rtos/rtems/-/work_items/5759
You're receiving this email because of your account on gitlab.rtems.org. 
Unsubscribe from this thread: 
https://gitlab.rtems.org/-/sent_notifications/5-2sr3mjzsvhpps3va6zsu0xyxl-1d/unsubscribe
 | Manage all notifications: https://gitlab.rtems.org/-/profile/notifications | 
Help: https://gitlab.rtems.org/help


_______________________________________________
bugs mailing list
[email protected]
http://lists.rtems.org/mailman/listinfo/bugs

Reply via email to