1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-24 05:23:45 +02:00
llvm-mirror/test/CodeGen/MIR/X86
Tim Northover 2d8bf8b427 GlobalISel: disambiguate types when printing MIR
Some generic instructions have multiple types. While in theory these always be
discovered by inspecting the single definition of each generic vreg, in
practice those definitions won't always be local and traipsing through a big
function to find them will not be fun.

So this changes MIRPrinter to print out the type of uses as well as defs, if
they're known to be different or not known to be the same.

On the parsing side, we're a little more flexible: provided each register is
given a type in at least one place it's mentioned (and all types are
consistent) we accept the MIR. This doesn't introduce ambiguity but makes
writing tests manually a bit less painful.

llvm-svn: 281204
2016-09-12 11:20:10 +00:00
..
basic-block-liveins.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
basic-block-not-at-start-of-line-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
block-address-operands.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
callee-saved-info.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
cfi-def-cfa-offset.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
cfi-def-cfa-register.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
cfi-offset.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
constant-pool-item-redefinition-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
constant-pool.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
constant-value-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
dead-register-flag.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
def-register-already-tied-error.mir MIRParser/MIRPrinter: Compute HasInlineAsm instead of printing/parsing it 2016-08-24 22:34:06 +00:00
duplicate-memory-operand-flag.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
duplicate-register-flag-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
early-clobber-register-flag.mir MIRParser/MIRPrinter: Compute HasInlineAsm instead of printing/parsing it 2016-08-24 22:34:06 +00:00
expected-align-in-memory-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-alignment-after-align-in-memory-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-basic-block-at-start-of-body.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-block-reference-in-blockaddress.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-comma-after-cfi-register.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
expected-comma-after-memory-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-different-implicit-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-different-implicit-register-flag.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-function-reference-after-blockaddress.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-global-value-after-blockaddress.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-integer-after-offset-sign.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-integer-after-tied-def.mir GlobalISel: disambiguate types when printing MIR 2016-09-12 11:20:10 +00:00
expected-integer-in-successor-weight.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-load-or-store-in-memory-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-machine-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-metadata-node-after-debug-location.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
expected-metadata-node-after-exclaim.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
expected-metadata-node-in-stack-object.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-named-register-in-allocation-hint.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-named-register-in-callee-saved-register.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-named-register-in-functions-livein.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
expected-named-register-livein.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-newline-at-end-of-list.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-number-after-bb.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-offset-after-cfi-operand.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
expected-pointer-value-in-memory-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-positive-alignment-after-align.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-register-after-cfi-operand.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
expected-register-after-flags.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-size-integer-after-memory-operation.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-stack-object.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-subregister-after-colon.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
expected-target-flag-name.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-tied-def-after-lparen.mir GlobalISel: disambiguate types when printing MIR 2016-09-12 11:20:10 +00:00
expected-value-in-memory-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
expected-virtual-register-in-functions-livein.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
external-symbol-operands.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
fixed-stack-memory-operands.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
fixed-stack-object-redefinition-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
fixed-stack-objects.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
frame-info-save-restore-points.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
frame-info-stack-references.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
frame-setup-instruction-flag.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
function-liveins.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
generic-instr-type.mir GlobalISel: move type information to MachineRegisterInfo. 2016-09-09 11:46:34 +00:00
global-value-operands.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
immediate-operands.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
implicit-register-flag.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
inline-asm-registers.mir MIRParser/MIRPrinter: Compute HasInlineAsm instead of printing/parsing it 2016-08-24 22:34:06 +00:00
instructions-debug-location.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
invalid-constant-pool-item.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
invalid-metadata-node-type.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
invalid-target-flag-name.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
invalid-tied-def-index-error.mir MIRParser/MIRPrinter: Compute HasInlineAsm instead of printing/parsing it 2016-08-24 22:34:06 +00:00
jump-table-info.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
jump-table-redefinition-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
killed-register-flag.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
large-cfi-offset-number-error.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
large-immediate-operand-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
large-index-number-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
large-offset-number-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
large-size-in-memory-operand-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
lit.local.cfg
liveout-register-mask.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
machine-basic-block-operands.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
machine-instructions.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
machine-verifier.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
memory-operands.mir MIRParser: Use shorter cfi identifiers 2016-07-26 18:20:00 +00:00
metadata-operands.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
missing-closing-quote.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
missing-comma.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
missing-implicit-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
named-registers.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
newline-handling.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
null-register-operands.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
register-mask-operands.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
register-operands-target-flag-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
simple-register-allocation-hints.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
spill-slot-fixed-stack-object-aliased.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
spill-slot-fixed-stack-object-immutable.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
spill-slot-fixed-stack-objects.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
stack-object-debug-info.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
stack-object-invalid-name.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
stack-object-operand-name-mismatch-error.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
stack-object-operands.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
stack-object-redefinition-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
stack-objects.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
standalone-register-error.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
subreg-on-physreg.mir MIRParser: Use dot instead of colon to mark subregisters 2016-07-26 21:49:34 +00:00
subregister-index-operands.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
subregister-operands.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
successor-basic-blocks-weights.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
successor-basic-blocks.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
tied-def-operand-invalid.mir MIRParser/MIRPrinter: Compute HasInlineAsm instead of printing/parsing it 2016-08-24 22:34:06 +00:00
undef-register-flag.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
undefined-fixed-stack-object.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
undefined-global-value.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
undefined-ir-block-in-blockaddress.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
undefined-ir-block-slot-in-blockaddress.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
undefined-jump-table-id.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
undefined-named-global-value.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
undefined-register-class.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
undefined-stack-object.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
undefined-value-in-memory-operand.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
undefined-virtual-register.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
unexpected-size-non-generic-register-phys.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
unexpected-size-non-generic-register.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
unknown-instruction.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
unknown-machine-basic-block.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
unknown-metadata-keyword.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
unknown-metadata-node.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
unknown-named-machine-basic-block.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
unknown-register.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
unknown-subregister-index-op.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
unknown-subregister-index.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
unrecognized-character.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
used-physical-register-info.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
variable-sized-stack-object-size-error.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
variable-sized-stack-objects.mir llc: Add support for -run-pass none 2016-07-16 02:24:59 +00:00
virtual-register-redefinition-error.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00
virtual-registers.mir MIRParser/MIRPrinter: Compute isSSA instead of printing/parsing it. 2016-08-24 01:32:41 +00:00