[imul16] = "imul16",
[imul32] = "imul32",
[imul64] = "imul64",
- [fadd8] = "fadd8",
[fadd16] = "fadd16",
[fadd32] = "fadd32",
[fadd64] = "fadd64",
- [fmul8] = "fmul8",
[fmul16] = "fmul16",
[fmul32] = "fmul32",
[fmul64] = "fmul64",
[umax16] = "umax16",
[umax32] = "umax32",
[umax64] = "umax64",
- [fmin8] = "fmin8",
[fmin16] = "fmin16",
[fmin32] = "fmin32",
[fmin64] = "fmin64",
- [fmax8] = "fmax8",
[fmax16] = "fmax16",
[fmax32] = "fmax32",
[fmax64] = "fmax64",
[ixor16] = "ixor16",
[ixor32] = "ixor32",
[ixor64] = "ixor64",
- [gfx10_wave64_bpermute] = "gfx10_wave64_bpermute",
};
static void print_reg_class(const RegClass rc, FILE *output)
static void print_operand(const Operand *operand, FILE *output)
{
- if (operand->isLiteral()) {
- fprintf(output, "0x%x", operand->constantValue());
+ if (operand->isLiteral() || (operand->isConstant() && operand->bytes() == 1)) {
+ if (operand->bytes() == 1)
+ fprintf(output, "0x%.2x", operand->constantValue());
+ else if (operand->bytes() == 2)
+ fprintf(output, "0x%.4x", operand->constantValue());
+ else
+ fprintf(output, "0x%x", operand->constantValue());
} else if (operand->isConstant()) {
print_constant(operand->physReg().reg(), output);
} else if (operand->isUndefined()) {
static void print_definition(const Definition *definition, FILE *output)
{
print_reg_class(definition->regClass(), output);
+ if (definition->isPrecise())
+ fprintf(output, "(precise)");
fprintf(output, "%%%d", definition->tempId());
if (definition->isFixed())