Consolidate trap variants under a single OP_TRAP
authorPaul Mackerras <paulus@ozlabs.org>
Mon, 6 Apr 2020 02:58:42 +0000 (12:58 +1000)
committerPaul Mackerras <paulus@ozlabs.org>
Tue, 7 Apr 2020 10:04:24 +0000 (20:04 +1000)
commit381149b2cc573d667767f383892a7f3598deeadc
tree08171b35806b10bc74cfec3866148744b9a2f3cc
parentd77033aa92b372e52e96b6d8d3f5aa990d5e412c
Consolidate trap variants under a single OP_TRAP

This replaces OP_TD, OP_TDI, OP_TW and OP_TWI with a single OP_TRAP,
distinguishing the cases by the input_reg_b and is_32bit fields of
the decode ROM.  This adds the twi and td cases to the decode tables.

For now we make all of the trap instructions unconditionally generate
a trap-type program interrupt if the TO field of the instruction is
all ones, and do nothing otherwise.

This reduces the number of values in insn_type_t from 65 to 62,
meaning that an insn_type_t can now be encoded in 6 bits rather
than 7.

Signed-off-by: Paul Mackerras <paulus@ozlabs.org>
decode1.vhdl
decode_types.vhdl
execute1.vhdl