1 <!-- This defines instructions described in PowerISA Version 3.0 B Book 1 -->
3 <!-- Section 3.3.11 Fixed-Point Trap Instructions pages 89 - 91 -->
5 <!-- The Trap instructions are provided to test for a specified set of conditions. -->
6 <!-- If any of the conditions tested by a Trap instruction are met, the system trap -->
7 <!-- handler is invoked. If none of the tested conditions are met, instruction -->
8 <!-- execution continues normally. -->
18 a <- EXTS((RA)[XLEN/2:XLEN-1])
19 if (a < EXTS(SI)) & TO[0] then TRAP
20 if (a > EXTS(SI)) & TO[1] then TRAP
21 if (a = EXTS(SI)) & TO[2] then TRAP
22 if (a <u EXTS(SI)) & TO[3] then TRAP
23 if (a >u EXTS(SI)) & TO[4] then TRAP
25 Special Registers Altered:
37 a <- EXTS((RA)[XLEN/2:XLEN-1])
38 b <- EXTS((RB)[XLEN/2:XLEN-1])
39 if (a < b) & TO[0] then TRAP
40 if (a > b) & TO[1] then TRAP
41 if (a = b) & TO[2] then TRAP
42 if (a <u b) & TO[3] then TRAP
43 if (a >u b) & TO[4] then TRAP
45 Special Registers Altered:
49 # Trap Doubleword Immediate
59 if (a < b) & TO[0] then TRAP
60 if (a > b) & TO[1] then TRAP
61 if (a = b) & TO[2] then TRAP
62 if (a <u b) & TO[3] then TRAP
63 if (a >u b) & TO[4] then TRAP
65 Special Registers Altered:
79 if (a < b) & TO[0] then TRAP
80 if (a > b) & TO[1] then TRAP
81 if (a = b) & TO[2] then TRAP
82 if (a <u b) & TO[3] then TRAP
83 if (a >u b) & TO[4] then TRAP
85 Special Registers Altered:
97 if CR[BC+32]=1 then RT <- (RA|0)
100 Special Registers Altered:
104 <!-- Checked March 2021 -->