Merge pull request #2400 from esdrubal/extrahead
[mono.git] / mono / arch / arm / cmp_macros.th
1 /* PSR := <Op> Rn, (imm8 ROR 2*rot) */
2 #define ARM_<Op>_REG_IMM_COND(p, rn, imm8, rot, cond) \
3         ARM_DPIOP_S_REG_IMM8ROT_COND(p, ARMOP_<Op>, 0, rn, imm8, rot, cond)
4 #define ARM_<Op>_REG_IMM(p, rn, imm8, rot) \
5         ARM_<Op>_REG_IMM_COND(p, rn, imm8, rot, ARMCOND_AL)
6
7 #ifndef ARM_NOIASM
8 #define _<Op>_REG_IMM_COND(rn, imm8, rot, cond) \
9         ARM_IASM_DPIOP_S_REG_IMM8ROT_COND(ARMOP_<Op>, 0, rn, imm8, rot, cond)
10 #define _<Op>_REG_IMM(rn, imm8, rot) \
11         _<Op>_REG_IMM_COND(rn, imm8, rot, ARMCOND_AL)
12 #endif
13
14
15 /* PSR := <Op> Rn, imm8 */
16 #define ARM_<Op>_REG_IMM8_COND(p, rn, imm8, cond) \
17         ARM_<Op>_REG_IMM_COND(p, rn, imm8, 0, cond)
18 #define ARM_<Op>_REG_IMM8(p, rn, imm8) \
19         ARM_<Op>_REG_IMM8_COND(p, rn, imm8, ARMCOND_AL)
20
21 #ifndef ARM_NOIASM
22 #define _<Op>_REG_IMM8_COND(rn, imm8, cond) \
23         _<Op>_REG_IMM_COND(rn, imm8, 0, cond)
24 #define _<Op>_REG_IMM8(rn, imm8) \
25         _<Op>_REG_IMM8_COND(rn, imm8, ARMCOND_AL)
26 #endif
27
28
29 /* PSR := <Op> Rn, Rm */
30 #define ARM_<Op>_REG_REG_COND(p, rn, rm, cond) \
31         ARM_DPIOP_S_REG_REG_COND(p, ARMOP_<Op>, 0, rn, rm, cond)
32 #define ARM_<Op>_REG_REG(p, rn, rm) \
33         ARM_<Op>_REG_REG_COND(p, rn, rm, ARMCOND_AL)
34
35 #ifndef ARM_NOIASM
36 #define _<Op>_REG_REG_COND(rn, rm, cond) \
37         ARM_IASM_DPIOP_S_REG_REG_COND(ARMOP_<Op>, 0, rn, rm, cond)
38 #define _<Op>_REG_REG(rn, rm) \
39         _<Op>_REG_REG_COND(rn, rm, ARMCOND_AL)
40 #endif
41
42
43 /* PSR := <Op> Rn, (Rm <shift_type> imm8) */
44 #define ARM_<Op>_REG_IMMSHIFT_COND(p, rn, rm, shift_type, imm_shift, cond) \
45         ARM_DPIOP_S_REG_IMMSHIFT_COND(p, ARMOP_<Op>, 0, rn, rm, shift_type, imm_shift, cond)
46 #define ARM_<Op>_REG_IMMSHIFT(p, rn, rm, shift_type, imm_shift) \
47         ARM_<Op>_REG_IMMSHIFT_COND(p, rn, rm, shift_type, imm_shift, ARMCOND_AL)
48
49 #ifndef ARM_NOIASM
50 #define _<Op>_REG_IMMSHIFT_COND(rn, rm, shift_type, imm_shift, cond) \
51         ARM_IASM_DPIOP_S_REG_IMMSHIFT_COND(ARMOP_<Op>, 0, rn, rm, shift_type, imm_shift, cond)
52 #define _<Op>_REG_IMMSHIFT(rn, rm, shift_type, imm_shift) \
53         _<Op>_REG_IMMSHIFT_COND(rn, rm, shift_type, imm_shift, ARMCOND_AL)
54 #endif
55
56