Add decode constants.
authorJoshua Wise <joshua@rebirth.joshuawise.com>
Tue, 30 Dec 2008 06:00:23 +0000 (01:00 -0500)
committerJoshua Wise <joshua@rebirth.joshuawise.com>
Tue, 30 Dec 2008 06:00:23 +0000 (01:00 -0500)
ARM_Constants.v

index 04dd4dd..6a54819 100644 (file)
 `define SHIFT_LSR 2'b01
 `define SHIFT_ASR 2'b10
 `define SHIFT_ROR 2'b11
+
+`define DECODE_ALU_MULT                32'b????000000??????????????1001????    /* Multiply -- must come before ALU, because it pattern matches a specific case of ALU */
+`define DECODE_ALU_MUL_LONG    32'b????00001???????????????1001????    /* Multiply long */
+`define DECODE_ALU_MRS         32'b????00010?001111????000000000000    /* MRS (Transfer PSR to register) */
+`define DECODE_ALU_MSR         32'b????00010?101001111100000000????    /* MSR (Transfer register to PSR) */
+`define DECODE_ALU_MSR_FLAGS   32'b????00?10?1010001111????????????    /* MSR (Transfer register or immediate to PSR, flag bits only) */
+`define DECODE_ALU_SWP         32'b????00010?00????????00001001????    /* Atomic swap */
+`define DECODE_ALU_BX          32'b????000100101111111111110001????    /* Branch and exchange */
+`define DECODE_ALU_HDATA_REG   32'b????000??0??????????00001??1????    /* Halfword transfer - register offset */
+`define DECODE_ALU_HDATA_IMM   32'b????000??1??????????00001??1????    /* Halfword transfer - immediate offset */
+`define DECODE_ALU             32'b????00??????????????????????????    /* ALU */
+`define DECODE_LDRSTR_UNDEFINED        32'b????011????????????????????1????    /* Undefined. I hate ARM */
+`define DECODE_LDRSTR          32'b????01??????????????????????????    /* Single data transfer */
+`define DECODE_LDMSTM          32'b????100?????????????????????????    /* Block data transfer */
+`define DECODE_BRANCH          32'b????101?????????????????????????    /* Branch */
+`define DECODE_LDCSTC          32'b????110?????????????????????????    /* Coprocessor data transfer */
+`define DECODE_CDP             32'b????1110???????????????????0????    /* Coprocessor data op */
+`define DECODE_MRCMCR          32'b????1110???????????????????1????    /* Coprocessor register transfer */
+`define DECODE_SWI             32'b????1111????????????????????????    /* SWI */
This page took 0.018661 seconds and 4 git commands to generate.