Revision 86dbdd40 tcg/x86_64/tcg-target.c
b/tcg/x86_64/tcg-target.c | ||
---|---|---|
1094 | 1094 |
args[3], P_REXW); |
1095 | 1095 |
break; |
1096 | 1096 |
|
1097 |
case INDEX_op_bswap16_i32: |
|
1098 |
case INDEX_op_bswap16_i64: |
|
1099 |
tcg_out8(s, 0x66); |
|
1100 |
tcg_out_modrm(s, 0xc1, SHIFT_ROL, args[0]); |
|
1101 |
tcg_out8(s, 8); |
|
1102 |
break; |
|
1097 | 1103 |
case INDEX_op_bswap32_i32: |
1104 |
case INDEX_op_bswap32_i64: |
|
1098 | 1105 |
tcg_out_opc(s, (0xc8 + (args[0] & 7)) | P_EXT, 0, args[0], 0); |
1099 | 1106 |
break; |
1100 | 1107 |
case INDEX_op_bswap64_i64: |
... | ... | |
1287 | 1294 |
|
1288 | 1295 |
{ INDEX_op_brcond_i64, { "r", "re" } }, |
1289 | 1296 |
|
1297 |
{ INDEX_op_bswap16_i32, { "r", "0" } }, |
|
1298 |
{ INDEX_op_bswap16_i64, { "r", "0" } }, |
|
1290 | 1299 |
{ INDEX_op_bswap32_i32, { "r", "0" } }, |
1300 |
{ INDEX_op_bswap32_i64, { "r", "0" } }, |
|
1291 | 1301 |
{ INDEX_op_bswap64_i64, { "r", "0" } }, |
1292 | 1302 |
|
1293 | 1303 |
{ INDEX_op_neg_i32, { "r", "0" } }, |
Also available in: Unified diff