Revision 5d40cd63
b/tcg/i386/tcg-target.c | ||
---|---|---|
1034 | 1034 |
tcg_out_brcond2(s, args, const_args); |
1035 | 1035 |
break; |
1036 | 1036 |
|
1037 |
case INDEX_op_bswap16_i32: |
|
1038 |
tcg_out8(s, 0x66); |
|
1039 |
tcg_out_modrm(s, 0xc1, SHIFT_ROL, args[0]); |
|
1040 |
tcg_out8(s, 8); |
|
1041 |
break; |
|
1037 | 1042 |
case INDEX_op_bswap32_i32: |
1038 | 1043 |
tcg_out_opc(s, (0xc8 + args[0]) | P_EXT); |
1039 | 1044 |
break; |
... | ... | |
1130 | 1135 |
{ INDEX_op_sub2_i32, { "r", "r", "0", "1", "ri", "ri" } }, |
1131 | 1136 |
{ INDEX_op_brcond2_i32, { "r", "r", "ri", "ri" } }, |
1132 | 1137 |
|
1138 |
{ INDEX_op_bswap16_i32, { "r", "0" } }, |
|
1133 | 1139 |
{ INDEX_op_bswap32_i32, { "r", "0" } }, |
1134 | 1140 |
|
1135 | 1141 |
{ INDEX_op_neg_i32, { "r", "0" } }, |
b/tcg/i386/tcg-target.h | ||
---|---|---|
45 | 45 |
#define TCG_TARGET_CALL_STACK_OFFSET 0 |
46 | 46 |
|
47 | 47 |
/* optional instructions */ |
48 |
#define TCG_TARGET_HAS_bswap16_i32 |
|
48 | 49 |
#define TCG_TARGET_HAS_bswap32_i32 |
49 | 50 |
#define TCG_TARGET_HAS_neg_i32 |
50 | 51 |
#define TCG_TARGET_HAS_not_i32 |
Also available in: Unified diff