mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-11-24 08:18:33 +00:00
DebugInfo: Fix testcases that fail -verify-debug-info=true
As part of PR22777, fix testcases that fail the debug info verifier.
The changes fall into the following categories:
- Empty `filename:` fields in `MDFile`s. Compile units and some types
require non-empty filenames. A number of testcases have empty
filenames, probably due to hand-reduction of testcases.
- Not-quite empty arrays: `!{i32 0}`. This used to be equivalent in
the debug info schema to `!{}`. They cause problems for
`!MDSubroutineType`'s `types:` array, since it requires all operands
to be valid types. (Note that `!{null}` is the correct type array
for functions that take no arguments and return `void`.)
- Significantly bitrotted testcases. Nodes got left behind a few
upgrades ago because of missing or invalid tags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@232415 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -18,11 +18,11 @@ define void @test() {
|
||||
|
||||
!0 = !MDCompileUnit(language: DW_LANG_C_plus_plus, producer: "clang version 3.3 (trunk 176994)", isOptimized: false, emissionKind: 0, file: !11, enums: !3, retainedTypes: !3, subprograms: !4, globals: !3)
|
||||
!2 = !MDFile(filename: "version", directory: "/usr/local/google/home/nlewycky")
|
||||
!3 = !{i32 0}
|
||||
!3 = !{}
|
||||
!4 = !{!5}
|
||||
!5 = !MDSubprogram(name: "test", line: 1, isLocal: false, isDefinition: true, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false, scopeLine: 1, file: !10, scope: !6, type: !7, function: void ()* @test, variables: !3)
|
||||
!6 = !MDFile(filename: "<stdin>", directory: ".")
|
||||
!7 = !MDSubroutineType(types: !3)
|
||||
!7 = !MDSubroutineType(types: !{null})
|
||||
!8 = !MDLocation(line: 1, scope: !5)
|
||||
;; !9 is added through the echo line at the top.
|
||||
!10 = !MDFile(filename: "<stdin>", directory: ".")
|
||||
|
||||
Reference in New Issue
Block a user