llvm-project/llvm/test/CodeGen/MIR/X86
David Blaikie f6a561c4d6 DebugInfo: Use clang's preferred names for integer types
This reverts c7f16ab3e3 / r109694 - which
suggested this was done to improve consistency with the gdb test suite.
Possible that at the time GCC did not canonicalize integer types, and so
matching types was important for cross-compiler validity, or that it was
only a case of over-constrained test cases that printed out/tested the
exact names of integer types.

In any case neither issue seems to exist today based on my limited
testing - both gdb and lldb canonicalize integer types (in a way that
happens to match Clang's preferred naming, incidentally) and so never
print the original text name produced in the DWARF by GCC or Clang.

This canonicalization appears to be in `integer_types_same_name_p` for
GDB and in `TypeSystemClang::GetBasicTypeEnumeration` for lldb.

(I tested this with one translation unit defining 3 variables - `long`,
`long (*)()`, and `int (*)()`, and another translation unit that had
main, and a function that took `long (*)()` as a parameter - then
compiled them with mismatched compilers (either GCC+Clang, or
Clang+(Clang with this patch applied)) and no matter the combination,
despite the debug info for one CU naming the type "long int" and the
other naming it "long", both debuggers printed out the name as "long"
and were able to correctly perform overload resolution and pass the
`long int (*)()` variable to the `long (*)()` function parameter)

Did find one hiccup, identified by the lldb test suite - that CodeView
was relying on these names to map them to builtin types in that format.
So added some handling for that in LLVM. (these could be split out into
separate patches, but seems small enough to not warrant it - will do
that if there ends up needing any reverti/revisiting)

Differential Revision: https://reviews.llvm.org/D110455
2021-10-06 16:02:34 -07:00
..
auto-successor.mir
basic-block-liveins.mir
basic-block-not-at-start-of-line-error.mir
block-address-operands.mir
branch-folder-with-debug.mir [BranchFolding] skip debug instr to avoid code change 2019-10-29 11:45:38 +00:00
branch-folder-with-label.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
branch-probabilities.mir
call-site-info-error1.mir Revert "Reland "[DebugInfo] Enable the debug entry values feature by default"" 2020-02-20 14:41:39 +01:00
call-site-info-error2.mir Revert "Reland "[DebugInfo] Enable the debug entry values feature by default"" 2020-02-20 14:41:39 +01:00
call-site-info-error3.mir Revert "Reland "[DebugInfo] Enable the debug entry values feature by default"" 2020-02-20 14:41:39 +01:00
call-site-info-error4.mir Reland D73534: [DebugInfo] Enable the debug entry values feature by default 2020-03-19 13:57:30 +01:00
callee-saved-info.mir
cfi-def-cfa-offset.mir
cfi-def-cfa-register.mir Migrate function attribute "no-frame-pointer-elim" to "frame-pointer"="all" as cleanups after D56351 2019-12-24 15:57:33 -08:00
cfi-offset.mir
constant-pool-item-redefinition-error.mir
constant-pool.mir [X86] Model MXCSR for all SSE instructions 2019-10-30 15:07:49 -07:00
constant-value-error.mir
copyIRflags.mir
dbg-value-list.mir Reapply "[DebugInfo] Add new instruction and DIExpression operator for variadic debug values" 2021-03-05 12:32:05 +00:00
dead-register-flag.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
def-register-already-tied-error.mir
diexpr-win32.mir DebugInfo: Use clang's preferred names for integer types 2021-10-06 16:02:34 -07:00
duplicate-memory-operand-flag.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
duplicate-register-flag-error.mir
early-clobber-register-flag.mir [MIR] Add comments to INLINEASM immediate flag MachineOperands 2020-04-16 13:46:14 +02:00
empty0.mir
empty1.mir
empty2.mir
escape-function-name.ll
expected-align-in-memory-operand.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-alignment-after-align-in-memory-operand.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-basic-block-at-start-of-body.mir
expected-block-reference-in-blockaddress.mir
expected-comma-after-cfi-register.mir
expected-comma-after-memory-operand.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-different-implicit-operand.mir
expected-different-implicit-register-flag.mir
expected-function-reference-after-blockaddress.mir
expected-global-value-after-blockaddress.mir
expected-integer-after-offset-sign.mir
expected-integer-after-tied-def.mir
expected-integer-in-successor-weight.mir
expected-load-or-store-in-memory-operand.mir
expected-machine-operand.mir
expected-metadata-node-after-debug-location.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
expected-metadata-node-after-exclaim.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
expected-metadata-node-in-stack-object.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-named-register-in-allocation-hint.mir
expected-named-register-in-callee-saved-register.mir
expected-named-register-in-functions-livein.mir
expected-named-register-livein.mir
expected-newline-at-end-of-list.mir
expected-number-after-bb.mir
expected-offset-after-cfi-operand.mir
expected-pointer-value-in-memory-operand.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-positive-alignment-after-align.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-power-of-2-after-align.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-register-after-cfi-operand.mir
expected-register-after-flags.mir
expected-size-integer-after-memory-operation.mir
expected-size-integer-after-memory-operation2.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-stack-object.mir [Alignment] Use llvm::Align in MachineFunction and TargetLowering - fixes mir parsing 2019-09-11 11:16:48 +00:00
expected-subregister-after-colon.mir
expected-target-flag-name.mir
expected-tied-def-after-lparen.mir
expected-value-in-memory-operand.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
expected-virtual-register-in-functions-livein.mir
external-symbol-operands.mir
fastmath.mir [X86] Model MXCSR for all SSE instructions 2019-10-30 15:07:49 -07:00
fixed-stack-di.mir OpaquePtr: Bulk update tests to use typed byval 2020-11-20 14:00:46 -05:00
fixed-stack-memory-operands.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
fixed-stack-object-redefinition-error.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
fixed-stack-objects.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
frame-info-save-restore-points.mir
frame-info-stack-references.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
frame-setup-instruction-flag.mir
function-liveins.mir
generic-instr-type.mir [Test] Tidy up loose ends from LLVM_HAS_GLOBAL_ISEL 2020-08-27 16:36:27 +01:00
global-value-operands.mir Print quoted backslashes in LLVM IR as \\ instead of \5C 2019-10-10 18:31:57 +00:00
immediate-operands.mir
implicit-register-flag.mir
inline-asm-registers.mir [X86] AVX512FP16 instructions enabling 1/6 2021-08-10 12:46:01 +08:00
inline-asm.mir
instr-heap-alloc-operands.mir [MIR] Add MIR parsing for heap alloc site instruction markers 2019-11-05 12:57:45 -08:00
instr-symbols-and-mcsymbol-operands.mir
instructions-debug-location.mir [MachineVerifier] Verify that a DBG_VALUE has a debug location 2020-05-28 13:53:40 -07:00
invalid-constant-pool-item.mir
invalid-debug-location.mir
invalid-metadata-node-type.mir
invalid-target-flag-name.mir
invalid-tied-def-index-error.mir
jump-table-info.mir
jump-table-redefinition-error.mir
killed-register-flag.mir
large-cfi-offset-number-error.mir
large-immediate-operand-error.mir
large-index-number-error.mir
large-offset-number-error.mir
large-size-in-memory-operand-error.mir
lit.local.cfg
liveout-register-mask.mir
load-with-max-alignment.mir Reland [IR] Increase max alignment to 4GB 2021-10-06 13:29:23 -07:00
machine-basic-block-operands.mir
machine-instructions.mir
machine-metadata-error.mir [MIRParser] Add machine metadata. 2021-06-28 22:29:36 -04:00
machine-metadata.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
machine-verifier.mir Revert "Revert "Reland "[Support] make report_fatal_error `abort` instead of `exit`""" 2020-02-13 10:16:06 -08:00
memory-operands.mir [Tests] Fix incorrect noalias metadata 2021-09-18 20:51:00 +02:00
metadata-operands.mir [MachineVerifier] Verify that a DBG_VALUE has a debug location 2020-05-28 13:53:40 -07:00
mir-canon-hash-bb.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
mir-namer-hash-frameindex.mir [MIRVRegNamer] Experimental MachineInstr stable hashing (Fowler-Noll-Vo) 2020-09-03 16:13:09 -04:00
mircanon-flags.mir [MIRVRegNamer] Experimental MachineInstr stable hashing (Fowler-Noll-Vo) 2020-09-03 16:13:09 -04:00
missing-closing-quote.mir
missing-comma.mir
missing-implicit-operand.mir
named-registers.mir
newline-handling.mir
null-register-operands.mir
pr38773.mir
register-mask-operands.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
register-operand-class-invalid0.mir
register-operand-class-invalid1.mir
register-operand-class.mir
register-operands-target-flag-error.mir
renamable-register-flag.mir
roundtrip.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
simple-register-allocation-hints.mir
spill-slot-fixed-stack-object-aliased.mir [YAML] Use correct source location for unknown key errors. 2020-12-11 16:34:06 +00:00
spill-slot-fixed-stack-object-immutable.mir [YAML] Use correct source location for unknown key errors. 2020-12-11 16:34:06 +00:00
spill-slot-fixed-stack-objects.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
stack-object-debug-info.mir
stack-object-invalid-name.mir
stack-object-operand-name-mismatch-error.mir
stack-object-operands.mir
stack-object-redefinition-error.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
stack-objects.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
standalone-register-error.mir
subreg-on-physreg.mir
subregister-index-operands.mir
subregister-operands.mir
successor-basic-blocks-weights.mir
successor-basic-blocks.mir
tied-def-operand-invalid.mir
tied-physical-regs-match.mir Revert "Revert "Reland "[Support] make report_fatal_error `abort` instead of `exit`""" 2020-02-13 10:16:06 -08:00
undef-register-flag.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
undefined-fixed-stack-object.mir
undefined-global-value.mir
undefined-ir-block-in-blockaddress.mir
undefined-ir-block-slot-in-blockaddress.mir
undefined-jump-table-id.mir
undefined-named-global-value.mir
undefined-register-class.mir
undefined-stack-object.mir
undefined-value-in-memory-operand.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
undefined-virtual-register.mir
unexpected-type-phys.mir
unknown-instruction.mir
unknown-machine-basic-block.mir
unknown-metadata-keyword.mir CodeGen: Print/parse LLTs in MachineMemOperands 2021-06-30 16:54:13 -04:00
unknown-metadata-node.mir Migrate function attribute "no-frame-pointer-elim"="false" to "frame-pointer"="none" as cleanups after D56351 2019-12-24 16:27:51 -08:00
unknown-named-machine-basic-block.mir
unknown-register.mir
unknown-subregister-index-op.mir
unknown-subregister-index.mir
unreachable_block.ll
unrecognized-character.mir
variable-sized-stack-object-size-error.mir [YAML] Use correct source location for unknown key errors. 2020-12-11 16:34:06 +00:00
variable-sized-stack-objects.mir
virtual-register-redefinition-error.mir
virtual-registers.mir
zero-probability.mir