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