diff options
author | Adrian Prantl <aprantl@apple.com> | 2016-12-16 19:39:01 +0000 |
---|---|---|
committer | Adrian Prantl <aprantl@apple.com> | 2016-12-16 19:39:01 +0000 |
commit | 096faa974afe2fc3cabbb9b2a545b7cdc8df16fc (patch) | |
tree | 52085aeb337e2bacc47410f723f5078005e9e7a7 /test/Assembler | |
parent | 56bfe966c9dc50a844a3a0921809a9a5efc358d5 (diff) |
Revert "[IR] Remove the DIExpression field from DIGlobalVariable."
This reverts commit 289920 (again).
I forgot to implement a Bitcode upgrade for the case where a DIGlobalVariable
has not DIExpression. Unfortunately it is not possible to safely upgrade
these variables without adding a flag to the bitcode record indicating which
version they are.
My plan of record is to roll the planned follow-up patch that adds a
unit: field to DIGlobalVariable into this patch before recomitting.
This way we only need one Bitcode upgrade for both changes (with a
version flag in the bitcode record to safely distinguish the record
formats).
Sorry for the churn!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@289982 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Assembler')
-rw-r--r-- | test/Assembler/diglobalvariable.ll | 16 | ||||
-rw-r--r-- | test/Assembler/diglobalvariableexpression.ll | 23 |
2 files changed, 10 insertions, 29 deletions
diff --git a/test/Assembler/diglobalvariable.ll b/test/Assembler/diglobalvariable.ll index 02dd6289c0a..33c2ec3a762 100644 --- a/test/Assembler/diglobalvariable.ll +++ b/test/Assembler/diglobalvariable.ll @@ -3,8 +3,8 @@ @foo = global i32 0 -; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} -!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8} +; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !8, !9, !10} +!named = !{!0, !1, !2, !3, !4, !5, !6, !7, !8, !9} !0 = !DIFile(filename: "scope.h", directory: "/path/to/dir") !1 = distinct !{} @@ -17,8 +17,12 @@ file: !2, line: 7, type: !3, isLocal: true, isDefinition: false, align: 32) -!6 = !DICompositeType(tag: DW_TAG_structure_type, name: "Class", size: 8, align: 8) -!7 = !DIDerivedType(tag: DW_TAG_member, name: "mem", flags: DIFlagStaticMember, scope: !6, baseType: !3) +; CHECK: !6 = !DIGlobalVariable(name: "foo", scope: !0, isLocal: false, isDefinition: true, expr: !7) +; CHECK: !7 = !DIExpression(DW_OP_constu, 42, DW_OP_stack_value) +!6 = !DIGlobalVariable(name: "foo", scope: !0, expr: !DIExpression(DW_OP_constu, 42, DW_OP_stack_value)) -; CHECK: !8 = !DIGlobalVariable(name: "mem", scope: !0, isLocal: false, isDefinition: true, declaration: !7) -!8 = !DIGlobalVariable(name: "mem", scope: !0, declaration: !7) +!7 = !DICompositeType(tag: DW_TAG_structure_type, name: "Class", size: 8, align: 8) +!8 = !DIDerivedType(tag: DW_TAG_member, name: "mem", flags: DIFlagStaticMember, scope: !7, baseType: !3) + +; CHECK: !10 = !DIGlobalVariable(name: "mem", scope: !0, isLocal: false, isDefinition: true, declaration: !9) +!9 = !DIGlobalVariable(name: "mem", scope: !0, declaration: !8) diff --git a/test/Assembler/diglobalvariableexpression.ll b/test/Assembler/diglobalvariableexpression.ll deleted file mode 100644 index 19f3d1443bf..00000000000 --- a/test/Assembler/diglobalvariableexpression.ll +++ /dev/null @@ -1,23 +0,0 @@ -; RUN: llvm-as < %s | llvm-dis | llvm-as | llvm-dis | FileCheck %s -; RUN: verify-uselistorder %s - -@foo = global i32 0 - -; CHECK: !named = !{!0, !1, !2, !3, !4, !5, !6, !7} -!named = !{!0, !1, !2, !3, !4, !5, !6, !7} - -!0 = !DIFile(filename: "scope.h", directory: "/path/to/dir") -!1 = distinct !{} -!2 = !DIFile(filename: "path/to/file", directory: "/path/to/dir") -!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed) -!4 = distinct !{} - -; CHECK: !5 = !DIGlobalVariable(name: "foo", linkageName: "foo", scope: !0, file: !2, line: 7, type: !3, isLocal: true, isDefinition: false, align: 32) -!5 = !DIGlobalVariable(name: "foo", linkageName: "foo", scope: !0, - file: !2, line: 7, type: !3, isLocal: true, - isDefinition: false, align: 32) - -; CHECK: !6 = !DIGlobalVariableExpression(var: !5, expr: !7) -!6 = !DIGlobalVariableExpression(var: !5, expr: !7) -; CHECK: !7 = !DIExpression(DW_OP_constu, 42, DW_OP_stack_value) -!7 = !DIExpression(DW_OP_constu, 42, DW_OP_stack_value) |