summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/Bitcode/DIGlobalVariableExpression.ll2
-rw-r--r--test/Bitcode/DIGlobalVariableExpression2.ll4
-rw-r--r--test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll2
-rw-r--r--test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll2
-rw-r--r--test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll10
-rw-r--r--test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll4
-rw-r--r--test/CodeGen/ARM/coalesce-dbgvalue.ll8
-rw-r--r--test/CodeGen/ARM/no-cfi.ll2
-rw-r--r--test/CodeGen/BPF/dwarfdump.ll2
-rw-r--r--test/CodeGen/NVPTX/generic-to-nvvm-ir.ll4
-rw-r--r--test/CodeGen/PowerPC/pr17168.ll230
-rw-r--r--test/CodeGen/PowerPC/pr24546.ll2
-rw-r--r--test/CodeGen/WebAssembly/dbgvalue.ll2
-rw-r--r--test/CodeGen/X86/2010-05-26-DotDebugLoc.ll2
-rw-r--r--test/CodeGen/X86/dwarf-headers.ll2
-rw-r--r--test/CodeGen/X86/fp128-g.ll2
-rw-r--r--test/CodeGen/X86/fpstack-debuginstr-kill.ll4
-rw-r--r--test/CodeGen/X86/machine-outliner-debuginfo.ll2
-rw-r--r--test/CodeGen/X86/misched-code-difference-with-debug.ll2
-rw-r--r--test/CodeGen/X86/null-streamer.ll2
-rw-r--r--test/DebugInfo/AArch64/big-endian.ll2
-rw-r--r--test/DebugInfo/AArch64/bitfields.ll2
-rw-r--r--test/DebugInfo/AArch64/frameindices.ll4
-rw-r--r--test/DebugInfo/AMDGPU/variable-locations.ll4
-rw-r--r--test/DebugInfo/ARM/big-endian-bitfield.ll2
-rw-r--r--test/DebugInfo/ARM/bitfield.ll2
-rw-r--r--test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll4
-rw-r--r--test/DebugInfo/ARM/tls.ll2
-rw-r--r--test/DebugInfo/COFF/anonymous-struct.ll2
-rw-r--r--test/DebugInfo/COFF/array-odr-violation.ll2
-rw-r--r--test/DebugInfo/COFF/big-type.ll2
-rw-r--r--test/DebugInfo/COFF/bitfields.ll6
-rw-r--r--test/DebugInfo/COFF/enum.ll2
-rw-r--r--test/DebugInfo/COFF/global-dllimport.ll2
-rw-r--r--test/DebugInfo/COFF/globals-discarded.ll4
-rw-r--r--test/DebugInfo/COFF/globals.ll8
-rw-r--r--test/DebugInfo/COFF/inheritance.ll2
-rw-r--r--test/DebugInfo/COFF/inlining-files.ll2
-rw-r--r--test/DebugInfo/COFF/inlining-header.ll2
-rw-r--r--test/DebugInfo/COFF/inlining-levels.ll2
-rw-r--r--test/DebugInfo/COFF/int8-char-type.ll4
-rw-r--r--test/DebugInfo/COFF/long-type-name.ll2
-rw-r--r--test/DebugInfo/COFF/nested-types.ll2
-rw-r--r--test/DebugInfo/COFF/register-variables.ll2
-rw-r--r--test/DebugInfo/COFF/scopes.ll2
-rw-r--r--test/DebugInfo/COFF/types-array-advanced.ll8
-rw-r--r--test/DebugInfo/COFF/types-nested-class.ll2
-rw-r--r--test/DebugInfo/COFF/types-ptr-to-member.ll20
-rw-r--r--test/DebugInfo/COFF/udts.ll2
-rw-r--r--test/DebugInfo/COFF/virtual-method-kinds.ll2
-rw-r--r--test/DebugInfo/COFF/vtable-optzn-array.ll4
-rw-r--r--test/DebugInfo/Generic/2009-11-05-DeadGlobalVariable.ll2
-rw-r--r--test/DebugInfo/Generic/2009-11-06-NamelessGlobalVariable.ll2
-rw-r--r--test/DebugInfo/Generic/2010-06-29-InlinedFnLocalVar.ll2
-rw-r--r--test/DebugInfo/Generic/accel-table-hash-collisions.ll24
-rw-r--r--test/DebugInfo/Generic/cross-cu-linkonce-distinct.ll4
-rw-r--r--test/DebugInfo/Generic/cross-cu-linkonce.ll4
-rw-r--r--test/DebugInfo/Generic/dbg-at-specficiation.ll2
-rw-r--r--test/DebugInfo/Generic/debuginfofinder-forward-declaration.ll2
-rw-r--r--test/DebugInfo/Generic/dwarf-public-names.ll6
-rw-r--r--test/DebugInfo/Generic/enum.ll2
-rw-r--r--test/DebugInfo/Generic/global-sra-array.ll2
-rw-r--r--test/DebugInfo/Generic/global-sra-struct.ll2
-rw-r--r--test/DebugInfo/Generic/global.ll2
-rw-r--r--test/DebugInfo/Generic/gvn.ll4
-rw-r--r--test/DebugInfo/Generic/member-pointers.ll4
-rw-r--r--test/DebugInfo/Generic/namespace.ll4
-rw-r--r--test/DebugInfo/Generic/recursive_inlining.ll2
-rw-r--r--test/DebugInfo/Generic/template-recursive-void.ll2
-rw-r--r--test/DebugInfo/Generic/tu-member-pointer.ll2
-rw-r--r--test/DebugInfo/Generic/typedef.ll2
-rw-r--r--test/DebugInfo/MIR/X86/live-debug-values-spill.mir12
-rw-r--r--test/DebugInfo/MIR/X86/live-debug-values.mir2
-rw-r--r--test/DebugInfo/MIR/X86/mlicm-hoist.mir2
-rw-r--r--test/DebugInfo/Mips/InlinedFnLocalVar.ll2
-rw-r--r--test/DebugInfo/Mips/dwarfdump-tls.ll2
-rw-r--r--test/DebugInfo/Mips/tls.ll2
-rw-r--r--test/DebugInfo/PowerPC/tls-fission.ll2
-rw-r--r--test/DebugInfo/PowerPC/tls.ll2
-rw-r--r--test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll2
-rw-r--r--test/DebugInfo/X86/DIModuleContext.ll2
-rw-r--r--test/DebugInfo/X86/DW_AT_calling-convention.ll2
-rw-r--r--test/DebugInfo/X86/DW_AT_specification.ll2
-rw-r--r--test/DebugInfo/X86/DW_TAG_friend.ll4
-rw-r--r--test/DebugInfo/X86/FrameIndexExprs.ll4
-rw-r--r--test/DebugInfo/X86/InlinedFnLocalVar.ll2
-rw-r--r--test/DebugInfo/X86/PR26148.ll2
-rw-r--r--test/DebugInfo/X86/align_c11.ll2
-rw-r--r--test/DebugInfo/X86/align_cpp11.ll4
-rw-r--r--test/DebugInfo/X86/align_objc.ll2
-rw-r--r--test/DebugInfo/X86/arange-and-stub.ll2
-rw-r--r--test/DebugInfo/X86/arange.ll2
-rw-r--r--test/DebugInfo/X86/atomic-c11-dwarf-4.ll2
-rw-r--r--test/DebugInfo/X86/atomic-c11-dwarf-5.ll2
-rw-r--r--test/DebugInfo/X86/bitfields-dwarf4.ll2
-rw-r--r--test/DebugInfo/X86/bitfields.ll2
-rw-r--r--test/DebugInfo/X86/c-type-units.ll2
-rw-r--r--test/DebugInfo/X86/concrete_out_of_line.ll2
-rw-r--r--test/DebugInfo/X86/cu-ranges-odr.ll2
-rw-r--r--test/DebugInfo/X86/data_member_location.ll2
-rw-r--r--test/DebugInfo/X86/dbg-subrange.ll2
-rw-r--r--test/DebugInfo/X86/dbg-value-inlined-parameter.ll2
-rw-r--r--test/DebugInfo/X86/dbg-value-regmask-clobber.ll2
-rw-r--r--test/DebugInfo/X86/debug-info-access.ll6
-rw-r--r--test/DebugInfo/X86/debug-info-packed-struct.ll8
-rw-r--r--test/DebugInfo/X86/debug-info-static-member.ll6
-rw-r--r--test/DebugInfo/X86/debug-loc-frame.ll8
-rw-r--r--test/DebugInfo/X86/debugger-tune.ll2
-rw-r--r--test/DebugInfo/X86/decl-derived-member.ll2
-rw-r--r--test/DebugInfo/X86/default-subrange-array.ll2
-rw-r--r--test/DebugInfo/X86/dllimport.ll2
-rw-r--r--test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll2
-rw-r--r--test/DebugInfo/X86/dwarf-aranges.ll6
-rw-r--r--test/DebugInfo/X86/dwarf-linkage-names.ll2
-rw-r--r--test/DebugInfo/X86/dwarf-public-names.ll6
-rw-r--r--test/DebugInfo/X86/empty-array.ll2
-rw-r--r--test/DebugInfo/X86/enum-class.ll6
-rw-r--r--test/DebugInfo/X86/enum-fwd-decl.ll2
-rw-r--r--test/DebugInfo/X86/fission-cu.ll2
-rw-r--r--test/DebugInfo/X86/generate-odr-hash.ll8
-rw-r--r--test/DebugInfo/X86/gnu-public-names-tu.ll2
-rw-r--r--test/DebugInfo/X86/gnu-public-names.ll16
-rw-r--r--test/DebugInfo/X86/inline-member-function.ll2
-rw-r--r--test/DebugInfo/X86/inline-namespace.ll2
-rw-r--r--test/DebugInfo/X86/inlined-indirect-value.ll4
-rw-r--r--test/DebugInfo/X86/isel-cse-line.ll4
-rw-r--r--test/DebugInfo/X86/linkage-name.ll2
-rw-r--r--test/DebugInfo/X86/live-debug-values.ll2
-rw-r--r--test/DebugInfo/X86/memberfnptr.ll2
-rw-r--r--test/DebugInfo/X86/misched-dbg-value.ll18
-rw-r--r--test/DebugInfo/X86/multiple-aranges.ll4
-rw-r--r--test/DebugInfo/X86/nondefault-subrange-array.ll2
-rw-r--r--test/DebugInfo/X86/objc-fwd-decl.ll2
-rw-r--r--test/DebugInfo/X86/pointer-type-size.ll2
-rw-r--r--test/DebugInfo/X86/ref_addr_relocation.ll4
-rw-r--r--test/DebugInfo/X86/split-global.ll2
-rw-r--r--test/DebugInfo/X86/static_member_array.ll4
-rw-r--r--test/DebugInfo/X86/stringpool.ll2
-rw-r--r--test/DebugInfo/X86/struct-loc.ll2
-rw-r--r--test/DebugInfo/X86/template.ll4
-rw-r--r--test/DebugInfo/X86/tls.ll4
-rw-r--r--test/DebugInfo/X86/type_units_with_addresses.ll10
-rw-r--r--test/DebugInfo/X86/union-template.ll2
-rw-r--r--test/DebugInfo/X86/vector.ll2
-rw-r--r--test/DebugInfo/pr34186.ll2
-rw-r--r--test/Instrumentation/AddressSanitizer/debug-info-global-var.ll4
-rw-r--r--test/LTO/X86/Inputs/type-mapping-src.ll2
-rw-r--r--test/LTO/X86/type-mapping-bug.ll2
-rw-r--r--test/Linker/2011-08-04-Metadata.ll6
-rw-r--r--test/Linker/2011-08-04-Metadata2.ll2
-rw-r--r--test/Linker/debug-info-global-var.ll4
-rw-r--r--test/Linker/odr.ll2
-rw-r--r--test/Linker/only-needed-debug-metadata.ll4
-rw-r--r--test/ThinLTO/X86/Inputs/crash_debuginfo.ll2
-rw-r--r--test/ThinLTO/X86/crash_debuginfo.ll2
-rw-r--r--test/ThinLTO/X86/debuginfo-cu-import.ll2
-rw-r--r--test/Transforms/ConstantMerge/merge-dbg.ll8
-rw-r--r--test/Transforms/GCOVProfiling/return-block.ll2
-rw-r--r--test/Transforms/GlobalMerge/debug-info.ll6
-rw-r--r--test/Transforms/GlobalOpt/2009-03-05-dbg.ll2
-rw-r--r--test/Transforms/GlobalOpt/localize-constexpr-debuginfo.ll2
-rw-r--r--test/Transforms/Inline/alloca-dbgdeclare.ll4
-rw-r--r--test/Transforms/LoopVectorize/dbg.value.ll6
-rw-r--r--test/Transforms/SampleProfile/cov-zero-samples.ll2
-rw-r--r--test/Transforms/SimplifyCFG/PR27615-simplify-cond-br.ll6
-rw-r--r--test/Transforms/StripSymbols/2010-06-30-StripDebug.ll2
-rw-r--r--test/Transforms/StripSymbols/2010-08-25-crash.ll2
-rw-r--r--test/Transforms/StripSymbols/strip-dead-debug-info.ll4
-rw-r--r--test/Transforms/Util/clone-dicompileunit.ll2
-rw-r--r--test/Transforms/Util/strip-nonlinetable-debuginfo-containingtypes.ll2
-rw-r--r--test/Verifier/pr34325.ll2
-rw-r--r--test/tools/llvm-objdump/Hexagon/source-interleave-hexagon.ll2
172 files changed, 407 insertions, 407 deletions
diff --git a/test/Bitcode/DIGlobalVariableExpression.ll b/test/Bitcode/DIGlobalVariableExpression.ll
index d6ff1390717..b757fa599c9 100644
--- a/test/Bitcode/DIGlobalVariableExpression.ll
+++ b/test/Bitcode/DIGlobalVariableExpression.ll
@@ -13,7 +13,7 @@
; CHECK: ![[HVAR:[0-9]+]] = distinct !DIGlobalVariable(name: "h",
; CHECK: ![[IMPORTS]] = !{![[CIMPORT:[0-9]+]]}
; CHECK: ![[CIMPORT]] = !DIImportedEntity({{.*}}entity: ![[HVAR]]
-; CHECK: ![[H]] = {{.*}}!DIGlobalVariableExpression(var: ![[HVAR]])
+; CHECK: ![[H]] = {{.*}}!DIGlobalVariableExpression(var: ![[HVAR]], expr: !DIExpression())
@g = common global i32 0, align 4, !dbg !0
@h = common global i32 0, align 4, !dbg !11
diff --git a/test/Bitcode/DIGlobalVariableExpression2.ll b/test/Bitcode/DIGlobalVariableExpression2.ll
index 55974d5317d..3de1f7ffd3d 100644
--- a/test/Bitcode/DIGlobalVariableExpression2.ll
+++ b/test/Bitcode/DIGlobalVariableExpression2.ll
@@ -1,10 +1,10 @@
; RUN: llvm-dis -o - %s.bc | FileCheck %s
; CHECK: @g = common global i32 0, align 4, !dbg ![[G:[0-9]+]]
-; CHECK-DAG: ![[G]] = distinct !DIGlobalVariableExpression(var: ![[GVAR:[0-9]+]])
+; CHECK-DAG: ![[G]] = distinct !DIGlobalVariableExpression(var: ![[GVAR:[0-9]+]], expr: !DIExpression())
; CHECK-DAG: distinct !DICompileUnit({{.*}}, globals: ![[GLOBS:[0-9]+]]
; CHECK-DAG: ![[GLOBS]] = !{![[GEXPR:[0-9]+]]}
-; CHECK-DAG: ![[GEXPR]] = distinct !DIGlobalVariableExpression(var: ![[GVAR]])
+; CHECK-DAG: ![[GEXPR]] = distinct !DIGlobalVariableExpression(var: ![[GVAR]], expr: !DIExpression())
; CHECK-DAG: ![[GVAR]] = !DIGlobalVariable(name: "g",
; Test the bitcode upgrade for DIGlobalVariable -> DIGlobalVariableExpression.
diff --git a/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll b/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
index bc55c1d9251..294680a6d3a 100644
--- a/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
+++ b/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
@@ -31,7 +31,7 @@ attributes #1 = { nounwind readnone }
!0 = distinct !DICompileUnit(language: DW_LANG_C99, file: !1, producer: "clang version 3.0 (http://llvm.org/git/clang.git git:/git/puzzlebox/clang.git/ c4d1aea01c4444eb81bdbf391f1be309127c3cf1)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, globals: !2)
!1 = !DIFile(filename: "print.i", directory: "/Volumes/Ebi/echeng/radars/r9146594")
!2 = !{!3}
-!3 = !DIGlobalVariableExpression(var: !4)
+!3 = !DIGlobalVariableExpression(var: !4, expr: !DIExpression())
!4 = !DIGlobalVariable(name: "vsplive", scope: !5, file: !1, line: 617, type: !8, isLocal: true, isDefinition: true)
!5 = distinct !DISubprogram(name: "drt_vsprintf", scope: !1, file: !1, line: 616, type: !6, isLocal: false, isDefinition: true, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false, unit: !0)
!6 = !DISubroutineType(types: !7)
diff --git a/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll b/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
index 18a6472c61d..9ffb68cdeac 100644
--- a/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
+++ b/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
@@ -56,7 +56,7 @@ attributes #2 = { nounwind readnone }
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!6, !7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "length", linkageName: "length", scope: !2, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "t.c", directory: "/private/tmp")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll b/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
index 2cae9ca82d3..2d7c0e13c58 100644
--- a/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
+++ b/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
@@ -83,17 +83,17 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!12}
!llvm.module.flags = !{!15}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x1", scope: !2, file: !2, line: 3, type: !3, isLocal: true, isDefinition: true)
!2 = !DIFile(filename: "foo.c", directory: "/tmp/")
!3 = !DIBasicType(name: "_Bool", size: 8, align: 8, encoding: DW_ATE_boolean)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "x2", scope: !2, file: !2, line: 6, type: !3, isLocal: true, isDefinition: true)
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "x3", scope: !2, file: !2, line: 9, type: !3, isLocal: true, isDefinition: true)
-!8 = !DIGlobalVariableExpression(var: !9)
+!8 = !DIGlobalVariableExpression(var: !9, expr: !DIExpression())
!9 = !DIGlobalVariable(name: "x4", scope: !2, file: !2, line: 12, type: !3, isLocal: true, isDefinition: true)
-!10 = !DIGlobalVariableExpression(var: !11)
+!10 = !DIGlobalVariableExpression(var: !11, expr: !DIExpression())
!11 = !DIGlobalVariable(name: "x5", scope: !2, file: !2, line: 15, type: !3, isLocal: false, isDefinition: true)
!12 = distinct !DICompileUnit(language: DW_LANG_C89, file: !2, producer: "4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2369.8)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !13, retainedTypes: !13, globals: !14, imports: !13)
!13 = !{}
diff --git a/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll b/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll
index 79541a7594a..da681319fa3 100644
--- a/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll
+++ b/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll
@@ -80,13 +80,13 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!9}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x1", scope: !2, file: !3, line: 4, type: !8, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "ss3.c", directory: "/private/tmp")
!4 = !{}
!5 = !{!0, !6}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "x2", scope: !2, file: !3, line: 7, type: !8, isLocal: true, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!9 = !{i32 1, !"Debug Info Version", i32 3}
diff --git a/test/CodeGen/ARM/coalesce-dbgvalue.ll b/test/CodeGen/ARM/coalesce-dbgvalue.ll
index 389b1a93e43..fb53d9052e3 100644
--- a/test/CodeGen/ARM/coalesce-dbgvalue.ll
+++ b/test/CodeGen/ARM/coalesce-dbgvalue.ll
@@ -80,16 +80,16 @@ attributes #3 = { nounwind }
!llvm.dbg.cu = !{!11}
!llvm.module.flags = !{!14}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "c", scope: null, file: !2, line: 3, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "pr16110.c", directory: "/d/b")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "b", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "long long int", size: 64, align: 32, encoding: DW_ATE_signed)
-!9 = !DIGlobalVariableExpression(var: !10)
+!9 = !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = !DIGlobalVariable(name: "d", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!11 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2, producer: "clang version 3.4 (trunk 182024) (llvm/trunk 182023)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !12, retainedTypes: !12, globals: !13, imports: !12)
!12 = !{}
diff --git a/test/CodeGen/ARM/no-cfi.ll b/test/CodeGen/ARM/no-cfi.ll
index d3c11ba2deb..164e1324feb 100644
--- a/test/CodeGen/ARM/no-cfi.ll
+++ b/test/CodeGen/ARM/no-cfi.ll
@@ -11,7 +11,7 @@ target triple = "armv4t--linux"
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!7, !8, !9, !10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "f", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0 (trunk 290216)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "test2.c", directory: "/tmp")
diff --git a/test/CodeGen/BPF/dwarfdump.ll b/test/CodeGen/BPF/dwarfdump.ll
index 6a6913011e6..ad667c2f5b9 100644
--- a/test/CodeGen/BPF/dwarfdump.ll
+++ b/test/CodeGen/BPF/dwarfdump.ll
@@ -30,7 +30,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!13, !14}
!llvm.ident = !{!15}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "myvar_c", scope: !2, file: !3, line: 3, type: !6, isLocal: true, isDefinition: true)
!2 = distinct !DISubprogram(name: "testprog", scope: !3, file: !3, line: 1, type: !4, isLocal: false, isDefinition: true, scopeLine: 2, flags: DIFlagPrototyped, isOptimized: true, unit: !7, variables: !10)
!3 = !DIFile(filename: "testprog.c", directory: "/w/llvm/bld")
diff --git a/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll b/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll
index 2bd946d01eb..f874148c0e8 100644
--- a/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll
+++ b/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll
@@ -42,9 +42,9 @@ declare void @extfunc(i8 signext)
!3 = !{!4}
; Find list of global variables and make sure it's the one used by DICompileUnit
; CHECK: [[GLOBALSNODE]] = !{[[GVNODE:![0-9]+]]}
-!4 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "static_var", scope: !0, file: !1, line: 2, type: !5, isLocal: false, isDefinition: true))
+!4 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "static_var", scope: !0, file: !1, line: 2, type: !5, isLocal: false, isDefinition: true), expr: !DIExpression())
; Debug info must also be updated to reflect new address space.
-; CHECK: [[GVNODE]] = !DIGlobalVariableExpression(var: [[GVVAR:.*]])
+; CHECK: [[GVNODE]] = !DIGlobalVariableExpression(var: [[GVVAR:.*]], expr: !DIExpression())
; CHECK: [[GVVAR]] = !DIGlobalVariable(name: "static_var"
; CHECK-SAME: scope: [[CUNODE]]
; CHECK-SAME: type: [[TYPENODE:![0-9]+]]
diff --git a/test/CodeGen/PowerPC/pr17168.ll b/test/CodeGen/PowerPC/pr17168.ll
index e29a0583702..7cfe2681a5c 100644
--- a/test/CodeGen/PowerPC/pr17168.ll
+++ b/test/CodeGen/PowerPC/pr17168.ll
@@ -57,7 +57,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!7}
!llvm.module.flags = !{!261, !262}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "grid_points", scope: null, file: !2, line: 28, type: !3, isLocal: true, isDefinition: true)
!2 = !DIFile(filename: "./header.h", directory: "/home/hfinkel/src/NPB2.3-omp-C/BT")
!3 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 96, align: 32, elements: !5)
@@ -68,255 +68,255 @@ attributes #1 = { nounwind readnone }
!8 = !DIFile(filename: "bt.c", directory: "/home/hfinkel/src/NPB2.3-omp-C/BT")
!9 = !{}
!10 = !{!0, !11, !14, !20, !22, !24, !26, !28, !30, !32, !34, !36, !38, !40, !42, !44, !46, !48, !50, !52, !54, !56, !58, !60, !62, !64, !66, !68, !70, !72, !74, !76, !78, !80, !82, !84, !86, !88, !93, !97, !99, !101, !103, !105, !107, !109, !114, !116, !118, !120, !122, !124, !126, !128, !130, !132, !134, !136, !138, !140, !142, !144, !146, !148, !150, !152, !154, !156, !158, !160, !162, !164, !166, !168, !170, !172, !174, !176, !178, !180, !182, !184, !186, !188, !190, !192, !194, !196, !198, !200, !202, !204, !206, !208, !210, !212, !214, !216, !218, !220, !222, !224, !226, !228, !230, !232, !236, !241, !243, !247, !249, !253, !255, !257, !259}
-!11 = !DIGlobalVariableExpression(var: !12)
+!11 = !DIGlobalVariableExpression(var: !12, expr: !DIExpression())
!12 = !DIGlobalVariable(name: "dt", scope: null, file: !2, line: 35, type: !13, isLocal: true, isDefinition: true)
!13 = !DIBasicType(name: "double", size: 64, align: 64, encoding: DW_ATE_float)
-!14 = !DIGlobalVariableExpression(var: !15)
+!14 = !DIGlobalVariableExpression(var: !15, expr: !DIExpression())
!15 = !DIGlobalVariable(name: "rhs", scope: null, file: !2, line: 68, type: !16, isLocal: true, isDefinition: true)
!16 = !DICompositeType(tag: DW_TAG_array_type, baseType: !13, size: 1385839040, align: 64, elements: !17)
!17 = !{!18, !18, !18, !19}
!18 = !DISubrange(count: 163)
!19 = !DISubrange(count: 5)
-!20 = !DIGlobalVariableExpression(var: !21)
+!20 = !DIGlobalVariableExpression(var: !21, expr: !DIExpression())
!21 = !DIGlobalVariable(name: "zzcon5", scope: null, file: !2, line: 42, type: !13, isLocal: true, isDefinition: true)
-!22 = !DIGlobalVariableExpression(var: !23)
+!22 = !DIGlobalVariableExpression(var: !23, expr: !DIExpression())
!23 = !DIGlobalVariable(name: "zzcon4", scope: null, file: !2, line: 42, type: !13, isLocal: true, isDefinition: true)
-!24 = !DIGlobalVariableExpression(var: !25)
+!24 = !DIGlobalVariableExpression(var: !25, expr: !DIExpression())
!25 = !DIGlobalVariable(name: "zzcon3", scope: null, file: !2, line: 42, type: !13, isLocal: true, isDefinition: true)
-!26 = !DIGlobalVariableExpression(var: !27)
+!26 = !DIGlobalVariableExpression(var: !27, expr: !DIExpression())
!27 = !DIGlobalVariable(name: "dz5tz1", scope: null, file: !2, line: 43, type: !13, isLocal: true, isDefinition: true)
-!28 = !DIGlobalVariableExpression(var: !29)
+!28 = !DIGlobalVariableExpression(var: !29, expr: !DIExpression())
!29 = !DIGlobalVariable(name: "dz4tz1", scope: null, file: !2, line: 43, type: !13, isLocal: true, isDefinition: true)
-!30 = !DIGlobalVariableExpression(var: !31)
+!30 = !DIGlobalVariableExpression(var: !31, expr: !DIExpression())
!31 = !DIGlobalVariable(name: "dz3tz1", scope: null, file: !2, line: 43, type: !13, isLocal: true, isDefinition: true)
-!32 = !DIGlobalVariableExpression(var: !33)
+!32 = !DIGlobalVariableExpression(var: !33, expr: !DIExpression())
!33 = !DIGlobalVariable(name: "zzcon2", scope: null, file: !2, line: 42, type: !13, isLocal: true, isDefinition: true)
-!34 = !DIGlobalVariableExpression(var: !35)
+!34 = !DIGlobalVariableExpression(var: !35, expr: !DIExpression())
!35 = !DIGlobalVariable(name: "dz2tz1", scope: null, file: !2, line: 43, type: !13, isLocal: true, isDefinition: true)
-!36 = !DIGlobalVariableExpression(var: !37)
+!36 = !DIGlobalVariableExpression(var: !37, expr: !DIExpression())
!37 = !DIGlobalVariable(name: "tz2", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!38 = !DIGlobalVariableExpression(var: !39)
+!38 = !DIGlobalVariableExpression(var: !39, expr: !DIExpression())
!39 = !DIGlobalVariable(name: "dz1tz1", scope: null, file: !2, line: 43, type: !13, isLocal: true, isDefinition: true)
-!40 = !DIGlobalVariableExpression(var: !41)
+!40 = !DIGlobalVariableExpression(var: !41, expr: !DIExpression())
!41 = !DIGlobalVariable(name: "yycon5", scope: null, file: !2, line: 40, type: !13, isLocal: true, isDefinition: true)
-!42 = !DIGlobalVariableExpression(var: !43)
+!42 = !DIGlobalVariableExpression(var: !43, expr: !DIExpression())
!43 = !DIGlobalVariable(name: "yycon4", scope: null, file: !2, line: 40, type: !13, isLocal: true, isDefinition: true)
-!44 = !DIGlobalVariableExpression(var: !45)
+!44 = !DIGlobalVariableExpression(var: !45, expr: !DIExpression())
!45 = !DIGlobalVariable(name: "yycon3", scope: null, file: !2, line: 40, type: !13, isLocal: true, isDefinition: true)
-!46 = !DIGlobalVariableExpression(var: !47)
+!46 = !DIGlobalVariableExpression(var: !47, expr: !DIExpression())
!47 = !DIGlobalVariable(name: "dy5ty1", scope: null, file: !2, line: 41, type: !13, isLocal: true, isDefinition: true)
-!48 = !DIGlobalVariableExpression(var: !49)
+!48 = !DIGlobalVariableExpression(var: !49, expr: !DIExpression())
!49 = !DIGlobalVariable(name: "dy4ty1", scope: null, file: !2, line: 41, type: !13, isLocal: true, isDefinition: true)
-!50 = !DIGlobalVariableExpression(var: !51)
+!50 = !DIGlobalVariableExpression(var: !51, expr: !DIExpression())
!51 = !DIGlobalVariable(name: "dy3ty1", scope: null, file: !2, line: 41, type: !13, isLocal: true, isDefinition: true)
-!52 = !DIGlobalVariableExpression(var: !53)
+!52 = !DIGlobalVariableExpression(var: !53, expr: !DIExpression())
!53 = !DIGlobalVariable(name: "yycon2", scope: null, file: !2, line: 40, type: !13, isLocal: true, isDefinition: true)
-!54 = !DIGlobalVariableExpression(var: !55)
+!54 = !DIGlobalVariableExpression(var: !55, expr: !DIExpression())
!55 = !DIGlobalVariable(name: "dy2ty1", scope: null, file: !2, line: 41, type: !13, isLocal: true, isDefinition: true)
-!56 = !DIGlobalVariableExpression(var: !57)
+!56 = !DIGlobalVariableExpression(var: !57, expr: !DIExpression())
!57 = !DIGlobalVariable(name: "ty2", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!58 = !DIGlobalVariableExpression(var: !59)
+!58 = !DIGlobalVariableExpression(var: !59, expr: !DIExpression())
!59 = !DIGlobalVariable(name: "dy1ty1", scope: null, file: !2, line: 41, type: !13, isLocal: true, isDefinition: true)
-!60 = !DIGlobalVariableExpression(var: !61)
+!60 = !DIGlobalVariableExpression(var: !61, expr: !DIExpression())
!61 = !DIGlobalVariable(name: "dssp", scope: null, file: !2, line: 35, type: !13, isLocal: true, isDefinition: true)
-!62 = !DIGlobalVariableExpression(var: !63)
+!62 = !DIGlobalVariableExpression(var: !63, expr: !DIExpression())
!63 = !DIGlobalVariable(name: "c1", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!64 = !DIGlobalVariableExpression(var: !65)
+!64 = !DIGlobalVariableExpression(var: !65, expr: !DIExpression())
!65 = !DIGlobalVariable(name: "xxcon5", scope: null, file: !2, line: 38, type: !13, isLocal: true, isDefinition: true)
-!66 = !DIGlobalVariableExpression(var: !67)
+!66 = !DIGlobalVariableExpression(var: !67, expr: !DIExpression())
!67 = !DIGlobalVariable(name: "xxcon4", scope: null, file: !2, line: 38, type: !13, isLocal: true, isDefinition: true)
-!68 = !DIGlobalVariableExpression(var: !69)
+!68 = !DIGlobalVariableExpression(var: !69, expr: !DIExpression())
!69 = !DIGlobalVariable(name: "xxcon3", scope: null, file: !2, line: 38, type: !13, isLocal: true, isDefinition: true)
-!70 = !DIGlobalVariableExpression(var: !71)
+!70 = !DIGlobalVariableExpression(var: !71, expr: !DIExpression())
!71 = !DIGlobalVariable(name: "dx5tx1", scope: null, file: !2, line: 39, type: !13, isLocal: true, isDefinition: true)
-!72 = !DIGlobalVariableExpression(var: !73)
+!72 = !DIGlobalVariableExpression(var: !73, expr: !DIExpression())
!73 = !DIGlobalVariable(name: "dx4tx1", scope: null, file: !2, line: 39, type: !13, isLocal: true, isDefinition: true)
-!74 = !DIGlobalVariableExpression(var: !75)
+!74 = !DIGlobalVariableExpression(var: !75, expr: !DIExpression())
!75 = !DIGlobalVariable(name: "dx3tx1", scope: null, file: !2, line: 39, type: !13, isLocal: true, isDefinition: true)
-!76 = !DIGlobalVariableExpression(var: !77)
+!76 = !DIGlobalVariableExpression(var: !77, expr: !DIExpression())
!77 = !DIGlobalVariable(name: "c2", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!78 = !DIGlobalVariableExpression(var: !79)
+!78 = !DIGlobalVariableExpression(var: !79, expr: !DIExpression())
!79 = !DIGlobalVariable(name: "con43", scope: null, file: !2, line: 48, type: !13, isLocal: true, isDefinition: true)
-!80 = !DIGlobalVariableExpression(var: !81)
+!80 = !DIGlobalVariableExpression(var: !81, expr: !DIExpression())
!81 = !DIGlobalVariable(name: "xxcon2", scope: null, file: !2, line: 38, type: !13, isLocal: true, isDefinition: true)
-!82 = !DIGlobalVariableExpression(var: !83)
+!82 = !DIGlobalVariableExpression(var: !83, expr: !DIExpression())
!83 = !DIGlobalVariable(name: "dx2tx1", scope: null, file: !2, line: 39, type: !13, isLocal: true, isDefinition: true)
-!84 = !DIGlobalVariableExpression(var: !85)
+!84 = !DIGlobalVariableExpression(var: !85, expr: !DIExpression())
!85 = !DIGlobalVariable(name: "tx2", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!86 = !DIGlobalVariableExpression(var: !87)
+!86 = !DIGlobalVariableExpression(var: !87, expr: !DIExpression())
!87 = !DIGlobalVariable(name: "dx1tx1", scope: null, file: !2, line: 39, type: !13, isLocal: true, isDefinition: true)
-!88 = !DIGlobalVariableExpression(var: !89)
+!88 = !DIGlobalVariableExpression(var: !89, expr: !DIExpression())
!89 = !DIGlobalVariable(name: "forcing", scope: null, file: !2, line: 66, type: !90, isLocal: true, isDefinition: true)
!90 = !DICompositeType(tag: DW_TAG_array_type, baseType: !13, size: 1663006848, align: 64, elements: !91)
!91 = !{!18, !18, !18, !92}
!92 = !DISubrange(count: 6)
-!93 = !DIGlobalVariableExpression(var: !94)
+!93 = !DIGlobalVariableExpression(var: !94, expr: !DIExpression())
!94 = !DIGlobalVariable(name: "qs", scope: null, file: !2, line: 63, type: !95, isLocal: true, isDefinition: true)
!95 = !DICompositeType(tag: DW_TAG_array_type, baseType: !13, size: 277167808, align: 64, elements: !96)
!96 = !{!18, !18, !18}
-!97 = !DIGlobalVariableExpression(var: !98)
+!97 = !DIGlobalVariableExpression(var: !98, expr: !DIExpression())
!98 = !DIGlobalVariable(name: "square", scope: null, file: !2, line: 65, type: !95, isLocal: true, isDefinition: true)
-!99 = !DIGlobalVariableExpression(var: !100)
+!99 = !DIGlobalVariableExpression(var: !100, expr: !DIExpression())
!100 = !DIGlobalVariable(name: "ws", scope: null, file: !2, line: 62, type: !95, isLocal: true, isDefinition: true)
-!101 = !DIGlobalVariableExpression(var: !102)
+!101 = !DIGlobalVariableExpression(var: !102, expr: !DIExpression())
!102 = !DIGlobalVariable(name: "vs", scope: null, file: !2, line: 61, type: !95, isLocal: true, isDefinition: true)
-!103 = !DIGlobalVariableExpression(var: !104)
+!103 = !DIGlobalVariableExpression(var: !104, expr: !DIExpression())
!104 = !DIGlobalVariable(name: "us", scope: null, file: !2, line: 60, type: !95, isLocal: true, isDefinition: true)
-!105 = !DIGlobalVariableExpression(var: !106)
+!105 = !DIGlobalVariableExpression(var: !106, expr: !DIExpression())
!106 = !DIGlobalVariable(name: "rho_i", scope: null, file: !2, line: 64, type: !95, isLocal: true, isDefinition: true)
-!107 = !DIGlobalVariableExpression(var: !108)
+!107 = !DIGlobalVariableExpression(var: !108, expr: !DIExpression())
!108 = !DIGlobalVariable(name: "u", scope: null, file: !2, line: 67, type: !16, isLocal: true, isDefinition: true)
-!109 = !DIGlobalVariableExpression(var: !110)
+!109 = !DIGlobalVariableExpression(var: !110, expr: !DIExpression())
!110 = !DIGlobalVariable(name: "ce", scope: null, file: !2, line: 36, type: !111, isLocal: true, isDefinition: true)
!111 = !DICompositeType(tag: DW_TAG_array_type, baseType: !13, size: 4160, align: 64, elements: !112)
!112 = !{!19, !113}
!113 = !DISubrange(count: 13)
-!114 = !DIGlobalVariableExpression(var: !115)
+!114 = !DIGlobalVariableExpression(var: !115, expr: !DIExpression())
!115 = !DIGlobalVariable(name: "dnzm1", scope: null, file: !2, line: 44, type: !13, isLocal: true, isDefinition: true)
-!116 = !DIGlobalVariableExpression(var: !117)
+!116 = !DIGlobalVariableExpression(var: !117, expr: !DIExpression())
!117 = !DIGlobalVariable(name: "dnym1", scope: null, file: !2, line: 44, type: !13, isLocal: true, isDefinition: true)
-!118 = !DIGlobalVariableExpression(var: !119)
+!118 = !DIGlobalVariableExpression(var: !119, expr: !DIExpression())
!119 = !DIGlobalVariable(name: "dnxm1", scope: null, file: !2, line: 44, type: !13, isLocal: true, isDefinition: true)
-!120 = !DIGlobalVariableExpression(var: !121)
+!120 = !DIGlobalVariableExpression(var: !121, expr: !DIExpression())
!121 = !DIGlobalVariable(name: "zzcon1", scope: null, file: !2, line: 42, type: !13, isLocal: true, isDefinition: true)
-!122 = !DIGlobalVariableExpression(var: !123)
+!122 = !DIGlobalVariableExpression(var: !123, expr: !DIExpression())
!123 = !DIGlobalVariable(name: "yycon1", scope: null, file: !2, line: 40, type: !13, isLocal: true, isDefinition: true)
-!124 = !DIGlobalVariableExpression(var: !125)
+!124 = !DIGlobalVariableExpression(var: !125, expr: !DIExpression())
!125 = !DIGlobalVariable(name: "xxcon1", scope: null, file: !2, line: 38, type: !13, isLocal: true, isDefinition: true)
-!126 = !DIGlobalVariableExpression(var: !127)
+!126 = !DIGlobalVariableExpression(var: !127, expr: !DIExpression())
!127 = !DIGlobalVariable(name: "con16", scope: null, file: !2, line: 48, type: !13, isLocal: true, isDefinition: true)
-!128 = !DIGlobalVariableExpression(var: !129)
+!128 = !DIGlobalVariableExpression(var: !129, expr: !DIExpression())
!129 = !DIGlobalVariable(name: "c2iv", scope: null, file: !2, line: 48, type: !13, isLocal: true, isDefinition: true)
-!130 = !DIGlobalVariableExpression(var: !131)
+!130 = !DIGlobalVariableExpression(var: !131, expr: !DIExpression())
!131 = !DIGlobalVariable(name: "c3c4tz3", scope: null, file: !2, line: 48, type: !13, isLocal: true, isDefinition: true)
-!132 = !DIGlobalVariableExpression(var: !133)
+!132 = !DIGlobalVariableExpression(var: !133, expr: !DIExpression())
!133 = !DIGlobalVariable(name: "c3c4ty3", scope: null, file: !2, line: 48, type: !13, isLocal: true, isDefinition: true)
-!134 = !DIGlobalVariableExpression(var: !135)
+!134 = !DIGlobalVariableExpression(var: !135, expr: !DIExpression())
!135 = !DIGlobalVariable(name: "c3c4tx3", scope: null, file: !2, line: 48, type: !13, isLocal: true, isDefinition: true)
-!136 = !DIGlobalVariableExpression(var: !137)
+!136 = !DIGlobalVariableExpression(var: !137, expr: !DIExpression())
!137 = !DIGlobalVariable(name: "comz6", scope: null, file: !2, line: 47, type: !13, isLocal: true, isDefinition: true)
-!138 = !DIGlobalVariableExpression(var: !139)
+!138 = !DIGlobalVariableExpression(var: !139, expr: !DIExpression())
!139 = !DIGlobalVariable(name: "comz5", scope: null, file: !2, line: 47, type: !13, isLocal: true, isDefinition: true)
-!140 = !DIGlobalVariableExpression(var: !141)
+!140 = !DIGlobalVariableExpression(var: !141, expr: !DIExpression())
!141 = !DIGlobalVariable(name: "comz4", scope: null, file: !2, line: 47, type: !13, isLocal: true, isDefinition: true)
-!142 = !DIGlobalVariableExpression(var: !143)
+!142 = !DIGlobalVariableExpression(var: !143, expr: !DIExpression())
!143 = !DIGlobalVariable(name: "comz1", scope: null, file: !2, line: 47, type: !13, isLocal: true, isDefinition: true)
-!144 = !DIGlobalVariableExpression(var: !145)
+!144 = !DIGlobalVariableExpression(var: !145, expr: !DIExpression())
!145 = !DIGlobalVariable(name: "dtdssp", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!146 = !DIGlobalVariableExpression(var: !147)
+!146 = !DIGlobalVariableExpression(var: !147, expr: !DIExpression())
!147 = !DIGlobalVariable(name: "c2dttz1", scope: null, file: !2, line: 47, type: !13, isLocal: true, isDefinition: true)
-!148 = !DIGlobalVariableExpression(var: !149)
+!148 = !DIGlobalVariableExpression(var: !149, expr: !DIExpression())
!149 = !DIGlobalVariable(name: "c2dtty1", scope: null, file: !2, line: 47, type: !13, isLocal: true, isDefinition: true)
-!150 = !DIGlobalVariableExpression(var: !151)
+!150 = !DIGlobalVariableExpression(var: !151, expr: !DIExpression())
!151 = !DIGlobalVariable(name: "c2dttx1", scope: null, file: !2, line: 47, type: !13, isLocal: true, isDefinition: true)
-!152 = !DIGlobalVariableExpression(var: !153)
+!152 = !DIGlobalVariableExpression(var: !153, expr: !DIExpression())
!153 = !DIGlobalVariable(name: "dttz2", scope: null, file: !2, line: 46, type: !13, isLocal: true, isDefinition: true)
-!154 = !DIGlobalVariableExpression(var: !155)
+!154 = !DIGlobalVariableExpression(var: !155, expr: !DIExpression())
!155 = !DIGlobalVariable(name: "dttz1", scope: null, file: !2, line: 46, type: !13, isLocal: true, isDefinition: true)
-!156 = !DIGlobalVariableExpression(var: !157)
+!156 = !DIGlobalVariableExpression(var: !157, expr: !DIExpression())
!157 = !DIGlobalVariable(name: "dtty2", scope: null, file: !2, line: 46, type: !13, isLocal: true, isDefinition: true)
-!158 = !DIGlobalVariableExpression(var: !159)
+!158 = !DIGlobalVariableExpression(var: !159, expr: !DIExpression())
!159 = !DIGlobalVariable(name: "dtty1", scope: null, file: !2, line: 46, type: !13, isLocal: true, isDefinition: true)
-!160 = !DIGlobalVariableExpression(var: !161)
+!160 = !DIGlobalVariableExpression(var: !161, expr: !DIExpression())
!161 = !DIGlobalVariable(name: "dttx2", scope: null, file: !2, line: 46, type: !13, isLocal: true, isDefinition: true)
-!162 = !DIGlobalVariableExpression(var: !163)
+!162 = !DIGlobalVariableExpression(var: !163, expr: !DIExpression())
!163 = !DIGlobalVariable(name: "dttx1", scope: null, file: !2, line: 46, type: !13, isLocal: true, isDefinition: true)
-!164 = !DIGlobalVariableExpression(var: !165)
+!164 = !DIGlobalVariableExpression(var: !165, expr: !DIExpression())
!165 = !DIGlobalVariable(name: "c5dssp", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!166 = !DIGlobalVariableExpression(var: !167)
+!166 = !DIGlobalVariableExpression(var: !167, expr: !DIExpression())
!167 = !DIGlobalVariable(name: "c4dssp", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!168 = !DIGlobalVariableExpression(var: !169)
+!168 = !DIGlobalVariableExpression(var: !169, expr: !DIExpression())
!169 = !DIGlobalVariable(name: "dzmax", scope: null, file: !2, line: 37, type: !13, isLocal: true, isDefinition: true)
-!170 = !DIGlobalVariableExpression(var: !171)
+!170 = !DIGlobalVariableExpression(var: !171, expr: !DIExpression())
!171 = !DIGlobalVariable(name: "dymax", scope: null, file: !2, line: 37, type: !13, isLocal: true, isDefinition: true)
-!172 = !DIGlobalVariableExpression(var: !173)
+!172 = !DIGlobalVariableExpression(var: !173, expr: !DIExpression())
!173 = !DIGlobalVariable(name: "dxmax", scope: null, file: !2, line: 37, type: !13, isLocal: true, isDefinition: true)
-!174 = !DIGlobalVariableExpression(var: !175)
+!174 = !DIGlobalVariableExpression(var: !175, expr: !DIExpression())
!175 = !DIGlobalVariable(name: "dz5", scope: null, file: !2, line: 34, type: !13, isLocal: true, isDefinition: true)
-!176 = !DIGlobalVariableExpression(var: !177)
+!176 = !DIGlobalVariableExpression(var: !177, expr: !DIExpression())
!177 = !DIGlobalVariable(name: "dz4", scope: null, file: !2, line: 34, type: !13, isLocal: true, isDefinition: true)
-!178 = !DIGlobalVariableExpression(var: !179)
+!178 = !DIGlobalVariableExpression(var: !179, expr: !DIExpression())
!179 = !DIGlobalVariable(name: "dz3", scope: null, file: !2, line: 34, type: !13, isLocal: true, isDefinition: true)
-!180 = !DIGlobalVariableExpression(var: !181)
+!180 = !DIGlobalVariableExpression(var: !181, expr: !DIExpression())
!181 = !DIGlobalVariable(name: "dz2", scope: null, file: !2, line: 34, type: !13, isLocal: true, isDefinition: true)
-!182 = !DIGlobalVariableExpression(var: !183)
+!182 = !DIGlobalVariableExpression(var: !183, expr: !DIExpression())
!183 = !DIGlobalVariable(name: "dz1", scope: null, file: !2, line: 34, type: !13, isLocal: true, isDefinition: true)
-!184 = !DIGlobalVariableExpression(var: !185)
+!184 = !DIGlobalVariableExpression(var: !185, expr: !DIExpression())
!185 = !DIGlobalVariable(name: "dy5", scope: null, file: !2, line: 33, type: !13, isLocal: true, isDefinition: true)
-!186 = !DIGlobalVariableExpression(var: !187)
+!186 = !DIGlobalVariableExpression(var: !187, expr: !DIExpression())
!187 = !DIGlobalVariable(name: "dy4", scope: null, file: !2, line: 33, type: !13, isLocal: true, isDefinition: true)
-!188 = !DIGlobalVariableExpression(var: !189)
+!188 = !DIGlobalVariableExpression(var: !189, expr: !DIExpression())
!189 = !DIGlobalVariable(name: "dy3", scope: null, file: !2, line: 33, type: !13, isLocal: true, isDefinition: true)
-!190 = !DIGlobalVariableExpression(var: !191)
+!190 = !DIGlobalVariableExpression(var: !191, expr: !DIExpression())
!191 = !DIGlobalVariable(name: "dy2", scope: null, file: !2, line: 33, type: !13, isLocal: true, isDefinition: true)
-!192 = !DIGlobalVariableExpression(var: !193)
+!192 = !DIGlobalVariableExpression(var: !193, expr: !DIExpression())
!193 = !DIGlobalVariable(name: "dy1", scope: null, file: !2, line: 33, type: !13, isLocal: true, isDefinition: true)
-!194 = !DIGlobalVariableExpression(var: !195)
+!194 = !DIGlobalVariableExpression(var: !195, expr: !DIExpression())
!195 = !DIGlobalVariable(name: "dx5", scope: null, file: !2, line: 32, type: !13, isLocal: true, isDefinition: true)
-!196 = !DIGlobalVariableExpression(var: !197)
+!196 = !DIGlobalVariableExpression(var: !197, expr: !DIExpression())
!197 = !DIGlobalVariable(name: "dx4", scope: null, file: !2, line: 32, type: !13, isLocal: true, isDefinition: true)
-!198 = !DIGlobalVariableExpression(var: !199)
+!198 = !DIGlobalVariableExpression(var: !199, expr: !DIExpression())
!199 = !DIGlobalVariable(name: "dx3", scope: null, file: !2, line: 32, type: !13, isLocal: true, isDefinition: true)
-!200 = !DIGlobalVariableExpression(var: !201)
+!200 = !DIGlobalVariableExpression(var: !201, expr: !DIExpression())
!201 = !DIGlobalVariable(name: "dx2", scope: null, file: !2, line: 32, type: !13, isLocal: true, isDefinition: true)
-!202 = !DIGlobalVariableExpression(var: !203)
+!202 = !DIGlobalVariableExpression(var: !203, expr: !DIExpression())
!203 = !DIGlobalVariable(name: "dx1", scope: null, file: !2, line: 32, type: !13, isLocal: true, isDefinition: true)
-!204 = !DIGlobalVariableExpression(var: !205)
+!204 = !DIGlobalVariableExpression(var: !205, expr: !DIExpression())
!205 = !DIGlobalVariable(name: "tz3", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!206 = !DIGlobalVariableExpression(var: !207)
+!206 = !DIGlobalVariableExpression(var: !207, expr: !DIExpression())
!207 = !DIGlobalVariable(name: "tz1", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!208 = !DIGlobalVariableExpression(var: !209)
+!208 = !DIGlobalVariableExpression(var: !209, expr: !DIExpression())
!209 = !DIGlobalVariable(name: "ty3", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!210 = !DIGlobalVariableExpression(var: !211)
+!210 = !DIGlobalVariableExpression(var: !211, expr: !DIExpression())
!211 = !DIGlobalVariable(name: "ty1", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!212 = !DIGlobalVariableExpression(var: !213)
+!212 = !DIGlobalVariableExpression(var: !213, expr: !DIExpression())
!213 = !DIGlobalVariable(name: "tx3", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!214 = !DIGlobalVariableExpression(var: !215)
+!214 = !DIGlobalVariableExpression(var: !215, expr: !DIExpression())
!215 = !DIGlobalVariable(name: "tx1", scope: null, file: !2, line: 31, type: !13, isLocal: true, isDefinition: true)
-!216 = !DIGlobalVariableExpression(var: !217)
+!216 = !DIGlobalVariableExpression(var: !217, expr: !DIExpression())
!217 = !DIGlobalVariable(name: "conz1", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!218 = !DIGlobalVariableExpression(var: !219)
+!218 = !DIGlobalVariableExpression(var: !219, expr: !DIExpression())
!219 = !DIGlobalVariable(name: "c1345", scope: null, file: !2, line: 44, type: !13, isLocal: true, isDefinition: true)
-!220 = !DIGlobalVariableExpression(var: !221)
+!220 = !DIGlobalVariableExpression(var: !221, expr: !DIExpression())
!221 = !DIGlobalVariable(name: "c3c4", scope: null, file: !2, line: 44, type: !13, isLocal: true, isDefinition: true)
-!222 = !DIGlobalVariableExpression(var: !223)
+!222 = !DIGlobalVariableExpression(var: !223, expr: !DIExpression())
!223 = !DIGlobalVariable(name: "c1c5", scope: null, file: !2, line: 44, type: !13, isLocal: true, isDefinition: true)
-!224 = !DIGlobalVariableExpression(var: !225)
+!224 = !DIGlobalVariableExpression(var: !225, expr: !DIExpression())
!225 = !DIGlobalVariable(name: "c1c2", scope: null, file: !2, line: 44, type: !13, isLocal: true, isDefinition: true)
-!226 = !DIGlobalVariableExpression(var: !227)
+!226 = !DIGlobalVariableExpression(var: !227, expr: !DIExpression())
!227 = !DIGlobalVariable(name: "c5", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!228 = !DIGlobalVariableExpression(var: !229)
+!228 = !DIGlobalVariableExpression(var: !229, expr: !DIExpression())
!229 = !DIGlobalVariable(name: "c4", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!230 = !DIGlobalVariableExpression(var: !231)
+!230 = !DIGlobalVariableExpression(var: !231, expr: !DIExpression())
!231 = !DIGlobalVariable(name: "c3", scope: null, file: !2, line: 45, type: !13, isLocal: true, isDefinition: true)
-!232 = !DIGlobalVariableExpression(var: !233)
+!232 = !DIGlobalVariableExpression(var: !233, expr: !DIExpression())
!233 = !DIGlobalVariable(name: "lhs", scope: null, file: !2, line: 69, type: !234, isLocal: true, isDefinition: true)
!234 = !DICompositeType(tag: DW_TAG_array_type, baseType: !13, size: 20787585600, align: 64, elements: !235)
!235 = !{!18, !18, !18, !6, !19, !19}
-!236 = !DIGlobalVariableExpression(var: !237)
+!236 = !DIGlobalVariableExpression(var: !237, expr: !DIExpression())
!237 = !DIGlobalVariable(name: "q", scope: null, file: !2, line: 73, type: !238, isLocal: true, isDefinition: true)
!238 = !DICompositeType(tag: DW_TAG_array_type, baseType: !13, size: 10368, align: 64, elements: !239)
!239 = !{!240}
!240 = !DISubrange(count: 162)
-!241 = !DIGlobalVariableExpression(var: !242)
+!241 = !DIGlobalVariableExpression(var: !242, expr: !DIExpression())
!242 = !DIGlobalVariable(name: "cuf", scope: null, file: !2, line: 72, type: !238, isLocal: true, isDefinition: true)
-!243 = !DIGlobalVariableExpression(var: !244)
+!243 = !DIGlobalVariableExpression(var: !244, expr: !DIExpression())
!244 = !DIGlobalVariable(name: "buf", scope: null, file: !2, line: 75, type: !245, isLocal: true, isDefinition: true)
!245 = !DICompositeType(tag: DW_TAG_array_type, baseType: !13, size: 51840, align: 64, elements: !246)
!246 = !{!240, !19}
-!247 = !DIGlobalVariableExpression(var: !248)
+!247 = !DIGlobalVariableExpression(var: !248, expr: !DIExpression())
!248 = !DIGlobalVariable(name: "ue", scope: null, file: !2, line: 74, type: !245, isLocal: true, isDefinition: true)
-!249 = !DIGlobalVariableExpression(var: !250)
+!249 = !DIGlobalVariableExpression(var: !250, expr: !DIExpression())
!250 = !DIGlobalVariable(name: "njac", scope: null, file: !2, line: 86, type: !251, isLocal: true, isDefinition: true)
!251 = !DICompositeType(tag: DW_TAG_array_type, baseType: !13, size: 6886684800, align: 64, elements: !252)
!252 = !{!18, !18, !240, !19, !19}
-!253 = !DIGlobalVariableExpression(var: !254)
+!253 = !DIGlobalVariableExpression(var: !254, expr: !DIExpression())
!254 = !DIGlobalVariable(name: "fjac", scope: null, file: !2, line: 84, type: !251, isLocal: true, isDefinition: true)
-!255 = !DIGlobalVariableExpression(var: !256)
+!255 = !DIGlobalVariableExpression(var: !256, expr: !DIExpression())
!256 = !DIGlobalVariable(name: "tmp3", scope: null, file: !2, line: 88, type: !13, isLocal: true, isDefinition: true)
-!257 = !DIGlobalVariableExpression(var: !258)
+!257 = !DIGlobalVariableExpression(var: !258, expr: !DIExpression())
!258 = !DIGlobalVariable(name: "tmp2", scope: null, file: !2, line: 88, type: !13, isLocal: true, isDefinition: true)
-!259 = !DIGlobalVariableExpression(var: !260)
+!259 = !DIGlobalVariableExpression(var: !260, expr: !DIExpression())
!260 = !DIGlobalVariable(name: "tmp1", scope: null, file: !2, line: 88, type: !13, isLocal: true, isDefinition: true)
!261 = !{i32 2, !"Dwarf Version", i32 4}
!262 = !{i32 1, !"Debug Info Version", i32 3}
diff --git a/test/CodeGen/PowerPC/pr24546.ll b/test/CodeGen/PowerPC/pr24546.ll
index c914dd0dd22..19da0db593a 100644
--- a/test/CodeGen/PowerPC/pr24546.ll
+++ b/test/CodeGen/PowerPC/pr24546.ll
@@ -79,7 +79,7 @@ attributes #3 = { nounwind }
!21 = !{!22}
!22 = !DILocalVariable(name: "power", arg: 1, scope: !18, file: !1, line: 1, type: !9)
!23 = !{!24}
-!24 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "powers", scope: !18, file: !1, line: 3, type: !25, isLocal: true, isDefinition: true))
+!24 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "powers", scope: !18, file: !1, line: 3, type: !25, isLocal: true, isDefinition: true), expr: !DIExpression())
!25 = !DICompositeType(tag: DW_TAG_array_type, baseType: !26, size: 1472, align: 64, elements: !27)
!26 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !4)
!27 = !{!28}
diff --git a/test/CodeGen/WebAssembly/dbgvalue.ll b/test/CodeGen/WebAssembly/dbgvalue.ll
index eb39c6da1c9..a90f88ab234 100644
--- a/test/CodeGen/WebAssembly/dbgvalue.ll
+++ b/test/CodeGen/WebAssembly/dbgvalue.ll
@@ -45,7 +45,7 @@ attributes #0 = { nounwind readnone }
!1 = !DIFile(filename: "crash.c", directory: "wasm/tests")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "key", scope: !0, file: !1, line: 7, type: !6, isLocal: false, isDefinition: true)
!6 = !DICompositeType(tag: DW_TAG_array_type, baseType: !7, size: 120, align: 8, elements: !10)
!7 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint8_t", file: !8, line: 185, baseType: !9)
diff --git a/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll b/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
index 84756f0cd31..9f36a283387 100644
--- a/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
+++ b/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
@@ -35,7 +35,7 @@ attributes #1 = { nounwind readnone }
!1 = !DIFile(filename: "foo.c", directory: "/tmp/")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "ret", scope: !1, file: !1, line: 7, type: !6, isLocal: false, isDefinition: true)
!6 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!7 = !{i32 1, !"Debug Info Version", i32 3}
diff --git a/test/CodeGen/X86/dwarf-headers.ll b/test/CodeGen/X86/dwarf-headers.ll
index c2111f672a2..cdb5812b6c6 100644
--- a/test/CodeGen/X86/dwarf-headers.ll
+++ b/test/CodeGen/X86/dwarf-headers.ll
@@ -94,7 +94,7 @@ target triple = "x86_64-unknown-linux-gnu"
!llvm.module.flags = !{!10, !11}
!llvm.ident = !{!12}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "s", scope: !2, file: !3, line: 5, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 5.0.0 (trunk 295942)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "/home/probinson/projects/scratch")
diff --git a/test/CodeGen/X86/fp128-g.ll b/test/CodeGen/X86/fp128-g.ll
index 5eeef0cb77c..bc9b6b29d17 100644
--- a/test/CodeGen/X86/fp128-g.ll
+++ b/test/CodeGen/X86/fp128-g.ll
@@ -118,7 +118,7 @@ attributes #2 = { nounwind readnone }
!llvm.module.flags = !{!8, !9, !10}
!llvm.ident = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "ld_ptr", scope: !2, file: !3, line: 17, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0 (trunk 281495)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "fp128-g.c", directory: "/disk5/chh/Debug/ld.loop")
diff --git a/test/CodeGen/X86/fpstack-debuginstr-kill.ll b/test/CodeGen/X86/fpstack-debuginstr-kill.ll
index ca055da551b..7ff7a759e5d 100644
--- a/test/CodeGen/X86/fpstack-debuginstr-kill.ll
+++ b/test/CodeGen/X86/fpstack-debuginstr-kill.ll
@@ -49,14 +49,14 @@ attributes #0 = { nounwind readnone }
!llvm.dbg.cu = !{!10}
!llvm.module.flags = !{!14, !15}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "g1", scope: null, file: !2, line: 5, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "f1.cpp", directory: "x87stackifier")
!3 = !DIDerivedType(tag: DW_TAG_typedef, name: "fpu_extended", file: !2, line: 3, baseType: !4)
!4 = !DIDerivedType(tag: DW_TAG_typedef, name: "fpu_register", file: !2, line: 2, baseType: !5)
!5 = !DIDerivedType(tag: DW_TAG_typedef, name: "uae_f64", file: !2, line: 1, baseType: !6)
!6 = !DIBasicType(name: "long double", size: 128, align: 128, encoding: DW_ATE_float)
-!7 = !DIGlobalVariableExpression(var: !8)
+!7 = !DIGlobalVariableExpression(var: !8, expr: !DIExpression())
!8 = !DIGlobalVariable(name: "g2", scope: null, file: !2, line: 6, type: !9, isLocal: false, isDefinition: true)
!9 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!10 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !11, producer: "clang version 3.6.0 (http://llvm.org/git/clang 8444ae7cfeaefae031f8fedf0d1435ca3b14d90b) (http://llvm.org/git/llvm 886f0101a7d176543b831f5efb74c03427244a55)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !12, retainedTypes: !12, globals: !13, imports: !12)
diff --git a/test/CodeGen/X86/machine-outliner-debuginfo.ll b/test/CodeGen/X86/machine-outliner-debuginfo.ll
index 02d0964e37e..3f6552ab2f7 100644
--- a/test/CodeGen/X86/machine-outliner-debuginfo.ll
+++ b/test/CodeGen/X86/machine-outliner-debuginfo.ll
@@ -48,7 +48,7 @@ attributes #0 = { noredzone nounwind ssp uwtable "no-frame-pointer-elim"="true"
!llvm.module.flags = !{!7, !8, !9}
!llvm.ident = !{!10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 2, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 5.0.0", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "debug-test.c", directory: "dir")
diff --git a/test/CodeGen/X86/misched-code-difference-with-debug.ll b/test/CodeGen/X86/misched-code-difference-with-debug.ll
index 15f341f4d6e..5e38aab46e2 100644
--- a/test/CodeGen/X86/misched-code-difference-with-debug.ll
+++ b/test/CodeGen/X86/misched-code-difference-with-debug.ll
@@ -67,7 +67,7 @@ attributes #0 = { nounwind readnone }
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!15, !16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "argc", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "test.cpp", directory: "")
!3 = !DIBasicType(name: "char", size: 8, align: 8, encoding: DW_ATE_signed_char)
diff --git a/test/CodeGen/X86/null-streamer.ll b/test/CodeGen/X86/null-streamer.ll
index 152f8b14a13..8528be3ca59 100644
--- a/test/CodeGen/X86/null-streamer.ll
+++ b/test/CodeGen/X86/null-streamer.ll
@@ -20,7 +20,7 @@ define void @f1() {
!1 = !DIFile(filename: "file.c", directory: "")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "i", linkageName: "_ZL1i", scope: null, file: !1, line: 1, type: !6, isLocal: true, isDefinition: true)
!6 = !DIBasicType(size: 32, align: 32, encoding: DW_ATE_signed)
!7 = !{i32 2, !"Dwarf Version", i32 3}
diff --git a/test/DebugInfo/AArch64/big-endian.ll b/test/DebugInfo/AArch64/big-endian.ll
index 8355571b22f..5ecc7598657 100644
--- a/test/DebugInfo/AArch64/big-endian.ll
+++ b/test/DebugInfo/AArch64/big-endian.ll
@@ -10,7 +10,7 @@ target triple = "aarch64_be--none-eabi"
!llvm.module.flags = !{!8, !9}
!llvm.ident = !{!10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "<stdin>", directory: "/work/validation")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/AArch64/bitfields.ll b/test/DebugInfo/AArch64/bitfields.ll
index 293f6f8fce0..bbae89674f4 100644
--- a/test/DebugInfo/AArch64/bitfields.ll
+++ b/test/DebugInfo/AArch64/bitfields.ll
@@ -55,7 +55,7 @@ target triple = "aarch64_be--linux-gnu"
!llvm.module.flags = !{!13, !14, !15}
!llvm.ident = !{!16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "b", scope: !2, file: !3, line: 8, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.7.0 (trunk 240548) (llvm/trunk 240554)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "bitfields.c", directory: "/")
diff --git a/test/DebugInfo/AArch64/frameindices.ll b/test/DebugInfo/AArch64/frameindices.ll
index efdb704c10f..fde55ff934c 100644
--- a/test/DebugInfo/AArch64/frameindices.ll
+++ b/test/DebugInfo/AArch64/frameindices.ll
@@ -160,11 +160,11 @@ attributes #4 = { builtin }
!llvm.module.flags = !{!29, !30}
!llvm.ident = !{!31}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "test.cpp", directory: "")
!3 = !DIBasicType(name: "long int", size: 64, align: 64, encoding: DW_ATE_signed)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "b", scope: null, file: !2, line: 7, type: !6, isLocal: false, isDefinition: true)
!6 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !7, size: 64, align: 64)
!7 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/AMDGPU/variable-locations.ll b/test/DebugInfo/AMDGPU/variable-locations.ll
index 68627aacf15..359a0495dcd 100644
--- a/test/DebugInfo/AMDGPU/variable-locations.ll
+++ b/test/DebugInfo/AMDGPU/variable-locations.ll
@@ -74,13 +74,13 @@ entry:
!llvm.module.flags = !{!10, !11}
!llvm.ident = !{!12}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "GlobA", scope: !2, file: !3, line: 1, type: !8, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 5.0.0", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "variable-locations.cl", directory: "/some/random/directory")
!4 = !{}
!5 = !{!0, !6}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = distinct !DIGlobalVariable(name: "GlobB", scope: !2, file: !3, line: 2, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
!9 = !{i32 2, i32 0}
diff --git a/test/DebugInfo/ARM/big-endian-bitfield.ll b/test/DebugInfo/ARM/big-endian-bitfield.ll
index ebec61b9d3c..43409a736dd 100644
--- a/test/DebugInfo/ARM/big-endian-bitfield.ll
+++ b/test/DebugInfo/ARM/big-endian-bitfield.ll
@@ -19,7 +19,7 @@ target datalayout = "E-m:e-p:32:32-i64:64-v128:64:128-n32-S64"
!llvm.module.flags = !{!13, !14, !15}
!llvm.ident = !{!16}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "s", scope: !2, file: !3, line: 6, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (trunk 267633)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "bitfield.c", directory: "/Volumes/Data/llvm")
diff --git a/test/DebugInfo/ARM/bitfield.ll b/test/DebugInfo/ARM/bitfield.ll
index 97453c6c262..abfda62f52e 100644
--- a/test/DebugInfo/ARM/bitfield.ll
+++ b/test/DebugInfo/ARM/bitfield.ll
@@ -27,7 +27,7 @@ target triple = "thumbv7-apple-ios"
!llvm.module.flags = !{!12, !13, !14, !15, !16}
!llvm.ident = !{!17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: !2, file: !3, line: 5, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.7.0 (trunk 240548) (llvm/trunk 240554)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "test.i", directory: "/")
diff --git a/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll b/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll
index 21efc4e8c7f..101f2357159 100644
--- a/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll
+++ b/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll
@@ -33,12 +33,12 @@ attributes #0 = { nounwind "less-precise-fpmad"="false" "no-frame-pointer-elim"=
!llvm.module.flags = !{!8, !9, !10, !11}
!llvm.ident = !{!12}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "ch", scope: !2, file: !3, line: 1, type: !4, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug)
!3 = !DIFile(filename: "test.c", directory: "/home/user/clang/build")
!4 = !DIBasicType(name: "char", size: 8, align: 8, encoding: DW_ATE_unsigned_char)
-!5 = !DIGlobalVariableExpression(var: !6)
+!5 = !DIGlobalVariableExpression(var: !6, expr: !DIExpression())
!6 = !DIGlobalVariable(name: "b", scope: !2, file: !3, line: 2, type: !7, isLocal: false, isDefinition: true)
!7 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!8 = !{i32 2, !"Dwarf Version", i32 4}
diff --git a/test/DebugInfo/ARM/tls.ll b/test/DebugInfo/ARM/tls.ll
index 101ce398abd..fedc2af631d 100644
--- a/test/DebugInfo/ARM/tls.ll
+++ b/test/DebugInfo/ARM/tls.ll
@@ -23,7 +23,7 @@ source_filename = "test/DebugInfo/ARM/tls.ll"
; TODO: Add expected output for -emulated-tls tests.
; EMU-NOT: .long x(tlsldo)
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "tls.c", directory: "/tmp")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/COFF/anonymous-struct.ll b/test/DebugInfo/COFF/anonymous-struct.ll
index 56cf85cd915..b5a2cb10673 100644
--- a/test/DebugInfo/COFF/anonymous-struct.ll
+++ b/test/DebugInfo/COFF/anonymous-struct.ll
@@ -43,7 +43,7 @@ target triple = "i686-pc-windows-msvc18.0.0"
!llvm.module.flags = !{!15, !16}
!llvm.ident = !{!17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "s", scope: !2, file: !6, line: 5, type: !7, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (trunk 274261) (llvm/trunk 274262)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "-", directory: "/usr/local/google/home/majnemer/llvm/src")
diff --git a/test/DebugInfo/COFF/array-odr-violation.ll b/test/DebugInfo/COFF/array-odr-violation.ll
index 1041a90f034..faa61702ac0 100644
--- a/test/DebugInfo/COFF/array-odr-violation.ll
+++ b/test/DebugInfo/COFF/array-odr-violation.ll
@@ -67,7 +67,7 @@ attributes #1 = { nounwind readnone }
!llvm.ident = !{!13, !13}
!llvm.module.flags = !{!18, !19, !20}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "a", linkageName: "\01?a@@3TYYSTYPE@@A", scope: !2, file: !3, line: 2, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 5.0.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "a.cpp", directory: "C:\5Csrc\5Cllvm-project\5Cbuild", checksumkind: CSK_MD5, checksum: "c0005139aa3df153c30d8c6953390a4b")
diff --git a/test/DebugInfo/COFF/big-type.ll b/test/DebugInfo/COFF/big-type.ll
index a5b6dfbf9cd..8bd8795b0b7 100644
--- a/test/DebugInfo/COFF/big-type.ll
+++ b/test/DebugInfo/COFF/big-type.ll
@@ -63,7 +63,7 @@ target triple = "x86_64-pc-windows-msvc19.0.23918"
!llvm.module.flags = !{!5705, !5706, !5707}
!llvm.ident = !{!5708}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", linkageName: "\01?x@@3W4BigThing@@A", scope: !2, file: !3, line: 5698, type: !5, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 273198) (llvm/trunk 273223)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5704)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild_x86")
diff --git a/test/DebugInfo/COFF/bitfields.ll b/test/DebugInfo/COFF/bitfields.ll
index 15f416cdad6..ce2d5b35562 100644
--- a/test/DebugInfo/COFF/bitfields.ll
+++ b/test/DebugInfo/COFF/bitfields.ll
@@ -190,13 +190,13 @@ target triple = "x86_64-pc-windows-msvc18.0.0"
!llvm.module.flags = !{!36, !37, !38}
!llvm.ident = !{!39}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "s0", scope: !2, file: !8, line: 7, type: !33, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (trunk 273812) (llvm/trunk 273843)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "-", directory: "/usr/local/google/home/majnemer/llvm/src")
!4 = !{}
!5 = !{!0, !6, !28}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "s1", scope: !2, file: !8, line: 18, type: !9, isLocal: false, isDefinition: true)
!8 = !DIFile(filename: "<stdin>", directory: "/usr/local/google/home/majnemer/llvm/src")
!9 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "S1", file: !8, line: 10, size: 128, elements: !10)
@@ -218,7 +218,7 @@ target triple = "x86_64-pc-windows-msvc18.0.0"
!25 = !DIDerivedType(tag: DW_TAG_member, name: "s", scope: !22, file: !8, line: 16, baseType: !26, size: 16, offset: 8)
!26 = !DIBasicType(name: "short", size: 16, encoding: DW_ATE_signed)
!27 = !DIDerivedType(tag: DW_TAG_member, name: "u", scope: !9, file: !8, line: 17, baseType: !26, size: 3, offset: 112, flags: DIFlagBitField, extraData: i64 112)
-!28 = distinct !DIGlobalVariableExpression(var: !29)
+!28 = distinct !DIGlobalVariableExpression(var: !29, expr: !DIExpression())
!29 = !DIGlobalVariable(name: "s2", scope: !2, file: !8, line: 24, type: !30, isLocal: false, isDefinition: true)
!30 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "S2", file: !8, line: 21, size: 32, elements: !31)
!31 = !{!32}
diff --git a/test/DebugInfo/COFF/enum.ll b/test/DebugInfo/COFF/enum.ll
index a0bc1f1325e..04e4e934ca2 100644
--- a/test/DebugInfo/COFF/enum.ll
+++ b/test/DebugInfo/COFF/enum.ll
@@ -34,7 +34,7 @@ target triple = "i686-pc-windows-msvc18.0.0"
!llvm.module.flags = !{!11, !12}
!llvm.ident = !{!13}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "e", linkageName: "\01?e@@3W4E@@A", scope: !2, file: !6, line: 2, type: !5, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 272790) (llvm/trunk 272813)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !10)
!3 = !DIFile(filename: "-", directory: "/")
diff --git a/test/DebugInfo/COFF/global-dllimport.ll b/test/DebugInfo/COFF/global-dllimport.ll
index 10369757731..8a8f88d7b1e 100644
--- a/test/DebugInfo/COFF/global-dllimport.ll
+++ b/test/DebugInfo/COFF/global-dllimport.ll
@@ -12,7 +12,7 @@ target triple = "i686-pc-windows-msvc"
!llvm.module.flags = !{!14, !15}
!llvm.ident = !{!16}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "id", linkageName: "\01?id@?$numpunct@D@@0HA", scope: !2, file: !6, line: 4, type: !7, isLocal: false, isDefinition: true, declaration: !8)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 272628) (llvm/trunk 272566)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "/usr/local/google/home/majnemer/Downloads/<stdin>", directory: "/usr/local/google/home/majnemer/llvm/src")
diff --git a/test/DebugInfo/COFF/globals-discarded.ll b/test/DebugInfo/COFF/globals-discarded.ll
index 228d7b7821a..b2bca238757 100644
--- a/test/DebugInfo/COFF/globals-discarded.ll
+++ b/test/DebugInfo/COFF/globals-discarded.ll
@@ -21,13 +21,13 @@ target triple = "x86_64-pc-windows-msvc19.0.0"
!llvm.module.flags = !{!9, !10, !11}
!llvm.ident = !{!12}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 4, type: !8, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (trunk 272215) (llvm/trunk 272226)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5)
!3 = !DIFile(filename: "t.c", directory: "foo")
!4 = !{}
!5 = !{!6, !0}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "_OptionsStorage", scope: !2, file: !3, line: 3, type: !8, isLocal: true, isDefinition: true)
!8 = !DIBasicType(name: "unsigned int", size: 32, align: 32, encoding: DW_ATE_unsigned)
!9 = !{i32 2, !"CodeView", i32 1}
diff --git a/test/DebugInfo/COFF/globals.ll b/test/DebugInfo/COFF/globals.ll
index f5d6906e181..52bfd0f2024 100644
--- a/test/DebugInfo/COFF/globals.ll
+++ b/test/DebugInfo/COFF/globals.ll
@@ -163,13 +163,13 @@ $"\01?comdat@?$A@X@@2HB" = comdat any
!llvm.module.flags = !{!20, !21, !22}
!llvm.ident = !{!23}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "first", linkageName: "\01?first@@3HA", scope: !2, file: !3, line: 1, type: !9, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 271937)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
!4 = !{}
!5 = !{!0, !6, !15, !18}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "comdat", linkageName: "\01?comdat@?$A@X@@2HB", scope: !2, file: !3, line: 2, type: !8, isLocal: false, isDefinition: true, declaration: !10)
!8 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !9)
!9 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
@@ -178,10 +178,10 @@ $"\01?comdat@?$A@X@@2HB" = comdat any
!12 = !{!10}
!13 = !{!14}
!14 = !DITemplateTypeParameter(name: "T", type: null)
-!15 = distinct !DIGlobalVariableExpression(var: !16)
+!15 = distinct !DIGlobalVariableExpression(var: !16, expr: !DIExpression())
!16 = !DIGlobalVariable(name: "middle", linkageName: "\01?middle@@3PEBHEB", scope: !2, file: !3, line: 3, type: !17, isLocal: false, isDefinition: true)
!17 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !8, size: 64, align: 64)
-!18 = distinct !DIGlobalVariableExpression(var: !19)
+!18 = distinct !DIGlobalVariableExpression(var: !19, expr: !DIExpression())
!19 = !DIGlobalVariable(name: "last", linkageName: "\01?last@@3HA", scope: !2, file: !3, line: 4, type: !9, isLocal: false, isDefinition: true)
!20 = !{i32 2, !"CodeView", i32 1}
!21 = !{i32 2, !"Debug Info Version", i32 3}
diff --git a/test/DebugInfo/COFF/inheritance.ll b/test/DebugInfo/COFF/inheritance.ll
index 9b8839910a6..0de30d67f72 100644
--- a/test/DebugInfo/COFF/inheritance.ll
+++ b/test/DebugInfo/COFF/inheritance.ll
@@ -93,7 +93,7 @@ attributes #0 = { "correctly-rounded-divide-sqrt-fp-math"="false" "disable-tail-
!llvm.module.flags = !{!32, !33, !34}
!llvm.ident = !{!35}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "d", linkageName: "\01?d@@3UD@@A", scope: !2, file: !6, line: 8, type: !7, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 4.0.0 (http://llvm.org/git/clang.git 95626d54d6db7e13087089396a80ebaccc4ffe7c) (http://llvm.org/git/llvm.git 374b6e2fa0b230d13c0fb9ee7af69b2146bfad8a)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/inlining-files.ll b/test/DebugInfo/COFF/inlining-files.ll
index e3e616b618d..939f34ed596 100644
--- a/test/DebugInfo/COFF/inlining-files.ll
+++ b/test/DebugInfo/COFF/inlining-files.ll
@@ -77,7 +77,7 @@ attributes #0 = { norecurse nounwind uwtable "disable-tail-calls"="false" "less-
!llvm.module.flags = !{!8, !9, !10}
!llvm.ident = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 ", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/inlining-header.ll b/test/DebugInfo/COFF/inlining-header.ll
index 7e19f14716f..48069731b68 100644
--- a/test/DebugInfo/COFF/inlining-header.ll
+++ b/test/DebugInfo/COFF/inlining-header.ll
@@ -135,7 +135,7 @@ attributes #0 = { norecurse nounwind uwtable "disable-tail-calls"="false" "less-
!llvm.module.flags = !{!8, !9, !10}
!llvm.ident = !{!11}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", linkageName: "\01?x@@3HC", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 275430) (llvm/trunk 275433)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/inlining-levels.ll b/test/DebugInfo/COFF/inlining-levels.ll
index 7f93dbb850a..0a52d7ed556 100644
--- a/test/DebugInfo/COFF/inlining-levels.ll
+++ b/test/DebugInfo/COFF/inlining-levels.ll
@@ -59,7 +59,7 @@ attributes #0 = { norecurse nounwind uwtable "disable-tail-calls"="false" "less-
!llvm.module.flags = !{!8, !9, !10}
!llvm.ident = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", linkageName: "\01?x@@3HC", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 ", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/int8-char-type.ll b/test/DebugInfo/COFF/int8-char-type.ll
index 2e4395b4a59..ab28a5eb057 100644
--- a/test/DebugInfo/COFF/int8-char-type.ll
+++ b/test/DebugInfo/COFF/int8-char-type.ll
@@ -32,13 +32,13 @@ target triple = "x86_64-pc-windows-msvc19.0.24210"
!llvm.module.flags = !{!13, !14, !15}
!llvm.ident = !{!16}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !8, line: 4, type: !11, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "-", directory: "C:\5Csrc\5Cllvm\5Cbuild")
!4 = !{}
!5 = !{!0, !6}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "y", scope: !2, file: !8, line: 5, type: !9, isLocal: false, isDefinition: true)
!8 = !DIFile(filename: "<stdin>", directory: "C:\5Csrc\5Cllvm\5Cbuild")
!9 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint8_t", file: !8, line: 3, baseType: !10)
diff --git a/test/DebugInfo/COFF/long-type-name.ll b/test/DebugInfo/COFF/long-type-name.ll
index 1f621d1183a..2d883ec602d 100644
--- a/test/DebugInfo/COFF/long-type-name.ll
+++ b/test/DebugInfo/COFF/long-type-name.ll
@@ -28,7 +28,7 @@ target triple = "x86_64-pc-windows-msvc"
!llvm.module.flags = !{!8, !9}
!llvm.ident = !{!10}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "f", linkageName: "\01?f@@3UFoo@@A", scope: !2, file: !6, line: 1, type: !7, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 4.0.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "<stdin>", directory: "C:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/nested-types.ll b/test/DebugInfo/COFF/nested-types.ll
index 8a3ff001f7f..b0263b5270d 100644
--- a/test/DebugInfo/COFF/nested-types.ll
+++ b/test/DebugInfo/COFF/nested-types.ll
@@ -23,7 +23,7 @@ target triple = "x86_64-pc-windows-msvc19.0.24215"
!llvm.module.flags = !{!17, !18, !19, !20}
!llvm.ident = !{!21}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "f", linkageName: "\01?f@@3UHasNested@@A", scope: !2, file: !3, line: 7, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 6.0.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !16)
!3 = !DIFile(filename: "t.cpp", directory: "C:\5Csrc\5Cllvm-project\5Cbuild", checksumkind: CSK_MD5, checksum: "40c412b85e2b27acb30eef53983b1da4")
diff --git a/test/DebugInfo/COFF/register-variables.ll b/test/DebugInfo/COFF/register-variables.ll
index a6fdcd66bf2..493728c8f78 100644
--- a/test/DebugInfo/COFF/register-variables.ll
+++ b/test/DebugInfo/COFF/register-variables.ll
@@ -240,7 +240,7 @@ attributes #3 = { nounwind }
!llvm.module.flags = !{!8, !9, !10}
!llvm.ident = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (trunk 260617) (llvm/trunk 260619)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/scopes.ll b/test/DebugInfo/COFF/scopes.ll
index 6ff462213f2..ef5621370e6 100644
--- a/test/DebugInfo/COFF/scopes.ll
+++ b/test/DebugInfo/COFF/scopes.ll
@@ -108,7 +108,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!16, !17, !18}
!llvm.ident = !{!19}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "g", linkageName: "\01?g@bar@foo@@3UGlobalRecord@12@A", scope: !2, file: !3, line: 12, type: !5, isLocal: false, isDefinition: true)
!2 = !DINamespace(name: "bar", scope: !4)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/types-array-advanced.ll b/test/DebugInfo/COFF/types-array-advanced.ll
index 69da2b53993..a2e7c19b74c 100644
--- a/test/DebugInfo/COFF/types-array-advanced.ll
+++ b/test/DebugInfo/COFF/types-array-advanced.ll
@@ -213,13 +213,13 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!32, !33}
!llvm.ident = !{!34}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "multi_dim_arr", linkageName: "\01?multi_dim_arr@@3PAY146DA", scope: !2, file: !3, line: 1, type: !26, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 273874)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "/")
!4 = !{}
!5 = !{!0, !6, !16, !18}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "p_incomplete_struct_arr", linkageName: "\01?p_incomplete_struct_arr@@3PAY02Uincomplete_struct@@A", scope: !2, file: !3, line: 3, type: !8, isLocal: false, isDefinition: true)
!8 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !9, size: 32, align: 32)
!9 = !DICompositeType(tag: DW_TAG_array_type, baseType: !10, elements: !14)
@@ -229,9 +229,9 @@ attributes #1 = { nounwind readnone }
!13 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!14 = !{!15}
!15 = !DISubrange(count: 3)
-!16 = distinct !DIGlobalVariableExpression(var: !17)
+!16 = distinct !DIGlobalVariableExpression(var: !17, expr: !DIExpression())
!17 = !DIGlobalVariable(name: "incomplete_struct_arr", linkageName: "\01?incomplete_struct_arr@@3PAUincomplete_struct@@A", scope: !2, file: !3, line: 6, type: !9, isLocal: false, isDefinition: true)
-!18 = distinct !DIGlobalVariableExpression(var: !19)
+!18 = distinct !DIGlobalVariableExpression(var: !19, expr: !DIExpression())
!19 = !DIGlobalVariable(name: "typedef_arr", linkageName: "\01?typedef_arr@@3SDHD", scope: !2, file: !3, line: 14, type: !20, isLocal: false, isDefinition: true)
!20 = !DICompositeType(tag: DW_TAG_array_type, baseType: !21, size: 128, align: 32, elements: !24)
!21 = !DIDerivedType(tag: DW_TAG_typedef, name: "T_INT", file: !3, line: 13, baseType: !22)
diff --git a/test/DebugInfo/COFF/types-nested-class.ll b/test/DebugInfo/COFF/types-nested-class.ll
index 97bb0be74c8..feb944f2282 100644
--- a/test/DebugInfo/COFF/types-nested-class.ll
+++ b/test/DebugInfo/COFF/types-nested-class.ll
@@ -85,7 +85,7 @@ target triple = "i686-pc-windows-msvc19.0.23918"
!llvm.module.flags = !{!9, !10}
!llvm.ident = !{!11}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", linkageName: "\01?a@@3UA@@A", scope: !2, file: !3, line: 3, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "hello.cpp", directory: "D:\5Csrc\5Chello")
diff --git a/test/DebugInfo/COFF/types-ptr-to-member.ll b/test/DebugInfo/COFF/types-ptr-to-member.ll
index 0e946c0dd92..52640ec472a 100644
--- a/test/DebugInfo/COFF/types-ptr-to-member.ll
+++ b/test/DebugInfo/COFF/types-ptr-to-member.ll
@@ -199,13 +199,13 @@ target triple = "x86_64-pc-windows-msvc19.0.23918"
!llvm.module.flags = !{!66, !67, !68}
!llvm.ident = !{!69}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "pmd_a", linkageName: "\01?pmd_a@@3PEQA@@HEQ1@", scope: !2, file: !3, line: 6, type: !65, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 273036) (llvm/trunk 273053)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
!4 = !{}
!5 = !{!0, !6, !21, !25, !29, !35, !41, !47, !53, !58}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "pmd_b", linkageName: "\01?pmd_b@@3PEQC@@HEQ1@", scope: !2, file: !3, line: 7, type: !8, isLocal: false, isDefinition: true)
!8 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !9, size: 32, flags: DIFlagMultipleInheritance, extraData: !10)
!9 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
@@ -220,44 +220,44 @@ target triple = "x86_64-pc-windows-msvc19.0.23918"
!18 = !{!19}
!19 = !DIDerivedType(tag: DW_TAG_member, name: "b", scope: !17, file: !3, line: 2, baseType: !9, size: 32, align: 32)
!20 = !DIDerivedType(tag: DW_TAG_member, name: "c", scope: !10, file: !3, line: 3, baseType: !9, size: 32, align: 32, offset: 64)
-!21 = distinct !DIGlobalVariableExpression(var: !22)
+!21 = distinct !DIGlobalVariableExpression(var: !22, expr: !DIExpression())
!22 = !DIGlobalVariable(name: "pmd_c", linkageName: "\01?pmd_c@@3PEQD@@HEQ1@", scope: !2, file: !3, line: 8, type: !23, isLocal: false, isDefinition: true)
!23 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !9, size: 64, flags: DIFlagVirtualInheritance, extraData: !24)
!24 = !DICompositeType(tag: DW_TAG_structure_type, name: "D", file: !3, line: 4, size: 256, align: 64, flags: DIFlagFwdDecl, identifier: ".?AUD@@")
-!25 = distinct !DIGlobalVariableExpression(var: !26)
+!25 = distinct !DIGlobalVariableExpression(var: !26, expr: !DIExpression())
!26 = !DIGlobalVariable(name: "pmd_d", linkageName: "\01?pmd_d@@3PEQE@@HEQ1@", scope: !2, file: !3, line: 9, type: !27, isLocal: false, isDefinition: true)
!27 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !9, size: 96, extraData: !28)
!28 = !DICompositeType(tag: DW_TAG_structure_type, name: "E", file: !3, line: 5, flags: DIFlagFwdDecl, identifier: ".?AUE@@")
-!29 = distinct !DIGlobalVariableExpression(var: !30)
+!29 = distinct !DIGlobalVariableExpression(var: !30, expr: !DIExpression())
!30 = !DIGlobalVariable(name: "pmf_a", linkageName: "\01?pmf_a@@3P8A@@EAAXXZEQ1@", scope: !2, file: !3, line: 10, type: !31, isLocal: false, isDefinition: true)
!31 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !32, size: 64, flags: DIFlagSingleInheritance, extraData: !13)
!32 = !DISubroutineType(types: !33)
!33 = !{null, !34}
!34 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !13, size: 64, align: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
-!35 = distinct !DIGlobalVariableExpression(var: !36)
+!35 = distinct !DIGlobalVariableExpression(var: !36, expr: !DIExpression())
!36 = !DIGlobalVariable(name: "pmf_b", linkageName: "\01?pmf_b@@3P8C@@EAAXXZEQ1@", scope: !2, file: !3, line: 11, type: !37, isLocal: false, isDefinition: true)
!37 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !38, size: 128, flags: DIFlagMultipleInheritance, extraData: !10)
!38 = !DISubroutineType(types: !39)
!39 = !{null, !40}
!40 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !10, size: 64, align: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
-!41 = distinct !DIGlobalVariableExpression(var: !42)
+!41 = distinct !DIGlobalVariableExpression(var: !42, expr: !DIExpression())
!42 = !DIGlobalVariable(name: "pmf_c", linkageName: "\01?pmf_c@@3P8D@@EAAXXZEQ1@", scope: !2, file: !3, line: 12, type: !43, isLocal: false, isDefinition: true)
!43 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !44, size: 128, flags: DIFlagVirtualInheritance, extraData: !24)
!44 = !DISubroutineType(types: !45)
!45 = !{null, !46}
!46 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !24, size: 64, align: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
-!47 = distinct !DIGlobalVariableExpression(var: !48)
+!47 = distinct !DIGlobalVariableExpression(var: !48, expr: !DIExpression())
!48 = !DIGlobalVariable(name: "pmf_d", linkageName: "\01?pmf_d@@3P8E@@EAAXXZEQ1@", scope: !2, file: !3, line: 13, type: !49, isLocal: false, isDefinition: true)
!49 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !50, size: 192, extraData: !28)
!50 = !DISubroutineType(types: !51)
!51 = !{null, !52}
!52 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !28, size: 64, align: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
-!53 = distinct !DIGlobalVariableExpression(var: !54)
+!53 = distinct !DIGlobalVariableExpression(var: !54, expr: !DIExpression())
!54 = !DIGlobalVariable(name: "ppmd", linkageName: "\01?ppmd@@3PEAPEQIncomplete@@HEA", scope: !2, file: !3, line: 15, type: !55, isLocal: false, isDefinition: true)
!55 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !56, size: 64, align: 64)
!56 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !9, extraData: !57)
!57 = !DICompositeType(tag: DW_TAG_structure_type, name: "Incomplete", file: !3, line: 14, flags: DIFlagFwdDecl, identifier: ".?AUIncomplete@@")
-!58 = distinct !DIGlobalVariableExpression(var: !59)
+!58 = distinct !DIGlobalVariableExpression(var: !59, expr: !DIExpression())
!59 = !DIGlobalVariable(name: "ppmf", linkageName: "\01?ppmf@@3PEAP8Incomplete@@EAAXXZEA", scope: !2, file: !3, line: 16, type: !60, isLocal: false, isDefinition: true)
!60 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !61, size: 64, align: 64)
!61 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !62, extraData: !57)
diff --git a/test/DebugInfo/COFF/udts.ll b/test/DebugInfo/COFF/udts.ll
index 735901f7571..63bdfc83683 100644
--- a/test/DebugInfo/COFF/udts.ll
+++ b/test/DebugInfo/COFF/udts.ll
@@ -94,7 +94,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!11, !12, !13}
!llvm.ident = !{!14}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "u", linkageName: "\01?u@@3UU@@A", scope: !2, file: !3, line: 13, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/virtual-method-kinds.ll b/test/DebugInfo/COFF/virtual-method-kinds.ll
index 0114b3d3376..6f5da6c5c49 100644
--- a/test/DebugInfo/COFF/virtual-method-kinds.ll
+++ b/test/DebugInfo/COFF/virtual-method-kinds.ll
@@ -234,7 +234,7 @@ attributes #6 = { nounwind }
!llvm.module.flags = !{!36, !37, !38}
!llvm.ident = !{!39}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "p", linkageName: "\01?p@@3PEAUC@@EA", scope: !2, file: !3, line: 13, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/COFF/vtable-optzn-array.ll b/test/DebugInfo/COFF/vtable-optzn-array.ll
index edd82bfd5e1..16ddf518a64 100644
--- a/test/DebugInfo/COFF/vtable-optzn-array.ll
+++ b/test/DebugInfo/COFF/vtable-optzn-array.ll
@@ -97,13 +97,13 @@ attributes #3 = { nounwind readnone }
!llvm.module.flags = !{!24, !25}
!llvm.ident = !{!26}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "force_fwd_decl", linkageName: "\01?force_fwd_decl@@3UGetFwdDecl@@A", scope: !2, file: !8, line: 5, type: !21, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 4.0.0 (trunk 281056) (llvm/trunk 281051)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "<stdin>", directory: "C:\5Csrc\5Cllvm\5Cbuild")
!4 = !{}
!5 = !{!0, !6}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "require_complete", linkageName: "\01?require_complete@@3UUseCompleteType@@A", scope: !2, file: !8, line: 15, type: !9, isLocal: false, isDefinition: true)
!8 = !DIFile(filename: "t.cpp", directory: "C:\5Csrc\5Cllvm\5Cbuild")
!9 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "UseCompleteType", file: !8, line: 10, size: 64, align: 64, elements: !10, identifier: ".?AUUseCompleteType@@")
diff --git a/test/DebugInfo/Generic/2009-11-05-DeadGlobalVariable.ll b/test/DebugInfo/Generic/2009-11-05-DeadGlobalVariable.ll
index 496897cc665..c26cba6be3b 100644
--- a/test/DebugInfo/Generic/2009-11-05-DeadGlobalVariable.ll
+++ b/test/DebugInfo/Generic/2009-11-05-DeadGlobalVariable.ll
@@ -18,7 +18,7 @@ attributes #0 = { nounwind readnone ssp uwtable }
!1 = !DIFile(filename: "fb.c", directory: "/private/tmp")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "bar", scope: !6, file: !1, line: 2, type: !9, isLocal: true, isDefinition: true)
!6 = distinct !DISubprogram(name: "foo", scope: !1, file: !1, line: 1, type: !7, isLocal: false, isDefinition: true, virtualIndex: 6, isOptimized: true, unit: !0)
!7 = !DISubroutineType(types: !8)
diff --git a/test/DebugInfo/Generic/2009-11-06-NamelessGlobalVariable.ll b/test/DebugInfo/Generic/2009-11-06-NamelessGlobalVariable.ll
index 0108378340b..3c354a1eda0 100644
--- a/test/DebugInfo/Generic/2009-11-06-NamelessGlobalVariable.ll
+++ b/test/DebugInfo/Generic/2009-11-06-NamelessGlobalVariable.ll
@@ -6,7 +6,7 @@ source_filename = "test/DebugInfo/Generic/2009-11-06-NamelessGlobalVariable.ll"
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "g.c", directory: "/private/tmp")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/Generic/2010-06-29-InlinedFnLocalVar.ll b/test/DebugInfo/Generic/2010-06-29-InlinedFnLocalVar.ll
index 77eb7448783..0560689be06 100644
--- a/test/DebugInfo/Generic/2010-06-29-InlinedFnLocalVar.ll
+++ b/test/DebugInfo/Generic/2010-06-29-InlinedFnLocalVar.ll
@@ -32,7 +32,7 @@ attributes #1 = { nounwind ssp }
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "i", scope: !2, file: !2, line: 5, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "bar.c", directory: "/tmp/")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/Generic/accel-table-hash-collisions.ll b/test/DebugInfo/Generic/accel-table-hash-collisions.ll
index 505477c8211..b85c511c28d 100644
--- a/test/DebugInfo/Generic/accel-table-hash-collisions.ll
+++ b/test/DebugInfo/Generic/accel-table-hash-collisions.ll
@@ -69,34 +69,34 @@ source_filename = "test/DebugInfo/Generic/accel-table-hash-collisions.ll"
!llvm.module.flags = !{!29, !30, !31}
!llvm.ident = !{!32}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "ForceTopDown", scope: !2, file: !3, line: 1, type: !8, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.7.0 (trunk 231548) (llvm/trunk 231547)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "hash-collisions.c", directory: "/tmp")
!4 = !{}
!5 = !{!0, !6, !9, !11, !13, !15, !17, !19, !21, !23, !25, !27}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "_ZNSt3__116allocator_traitsINS_9allocatorINS_11__tree_nodeINS_12__value_typeIPN4llvm10BasicBlockEPNS4_10RegionNodeEEEPvEEEEE11__constructIS9_JNS_4pairIS6_S8_EEEEEvNS_17integral_constantIbLb1EEERSC_PT_DpOT0_", scope: !2, file: !3, line: 2, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!9 = !DIGlobalVariableExpression(var: !10)
+!9 = !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = !DIGlobalVariable(name: "_ZN5clang23DataRecursiveASTVisitorIN12_GLOBAL__N_124UnusedBackingIvarCheckerEE26TraverseCUDAKernelCallExprEPNS_18CUDAKernelCallExprE", scope: !2, file: !3, line: 3, type: !8, isLocal: false, isDefinition: true)
-!11 = !DIGlobalVariableExpression(var: !12)
+!11 = !DIGlobalVariableExpression(var: !12, expr: !DIExpression())
!12 = !DIGlobalVariable(name: "_ZN4llvm16DenseMapIteratorIPNS_10MDLocationENS_6detail13DenseSetEmptyENS_10MDNodeInfoIS1_EENS3_12DenseSetPairIS2_EELb0EE23AdvancePastEmptyBucketsEv", scope: !2, file: !3, line: 4, type: !8, isLocal: false, isDefinition: true)
-!13 = !DIGlobalVariableExpression(var: !14)
+!13 = !DIGlobalVariableExpression(var: !14, expr: !DIExpression())
!14 = !DIGlobalVariable(name: "_ZNK4llvm12LivePhysRegs5printERNS_11raw_ostreamE", scope: !2, file: !3, line: 5, type: !8, isLocal: false, isDefinition: true)
-!15 = !DIGlobalVariableExpression(var: !16)
+!15 = !DIGlobalVariableExpression(var: !16, expr: !DIExpression())
!16 = !DIGlobalVariable(name: "_ZN4llvm15ScalarEvolution14getSignedRangeEPKNS_4SCEVE", scope: !2, file: !3, line: 6, type: !8, isLocal: false, isDefinition: true)
-!17 = !DIGlobalVariableExpression(var: !18)
+!17 = !DIGlobalVariableExpression(var: !18, expr: !DIExpression())
!18 = !DIGlobalVariable(name: "k1", scope: !2, file: !3, line: 7, type: !8, isLocal: false, isDefinition: true)
-!19 = !DIGlobalVariableExpression(var: !20)
+!19 = !DIGlobalVariableExpression(var: !20, expr: !DIExpression())
!20 = !DIGlobalVariable(name: "is", scope: !2, file: !3, line: 8, type: !8, isLocal: false, isDefinition: true)
-!21 = !DIGlobalVariableExpression(var: !22)
+!21 = !DIGlobalVariableExpression(var: !22, expr: !DIExpression())
!22 = !DIGlobalVariable(name: "setStmt", scope: !2, file: !3, line: 9, type: !8, isLocal: false, isDefinition: true)
-!23 = !DIGlobalVariableExpression(var: !24)
+!23 = !DIGlobalVariableExpression(var: !24, expr: !DIExpression())
!24 = !DIGlobalVariable(name: "_ZN4llvm5TwineC1Ei", scope: !2, file: !3, line: 10, type: !8, isLocal: false, isDefinition: true)
-!25 = !DIGlobalVariableExpression(var: !26)
+!25 = !DIGlobalVariableExpression(var: !26, expr: !DIExpression())
!26 = !DIGlobalVariable(name: "_ZNK5clang12OverrideAttr5cloneERNS_10ASTContextE", scope: !2, file: !3, line: 11, type: !8, isLocal: false, isDefinition: true)
-!27 = !DIGlobalVariableExpression(var: !28)
+!27 = !DIGlobalVariableExpression(var: !28, expr: !DIExpression())
!28 = !DIGlobalVariable(name: "_ZN4llvm22MachineModuleInfoMachOD2Ev", scope: !2, file: !3, line: 12, type: !8, isLocal: false, isDefinition: true)
!29 = !{i32 2, !"Dwarf Version", i32 2}
!30 = !{i32 2, !"Debug Info Version", i32 3}
diff --git a/test/DebugInfo/Generic/cross-cu-linkonce-distinct.ll b/test/DebugInfo/Generic/cross-cu-linkonce-distinct.ll
index 0488e64e23c..8af3c8a88c0 100644
--- a/test/DebugInfo/Generic/cross-cu-linkonce-distinct.ll
+++ b/test/DebugInfo/Generic/cross-cu-linkonce-distinct.ll
@@ -62,14 +62,14 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!15, !16}
!llvm.ident = !{!17, !17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "a.cpp", directory: "/tmp/dbginfo")
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64, align: 64)
!4 = !DISubroutineType(types: !5)
!5 = !{!6, !6}
!6 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!7 = !DIGlobalVariableExpression(var: !8)
+!7 = !DIGlobalVariableExpression(var: !8, expr: !DIExpression())
!8 = !DIGlobalVariable(name: "y", scope: null, file: !9, line: 4, type: !3, isLocal: false, isDefinition: true)
!9 = !DIFile(filename: "b.cpp", directory: "/tmp/dbginfo")
!10 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !9, producer: "clang version 3.5.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !11, retainedTypes: !11, globals: !12, imports: !11)
diff --git a/test/DebugInfo/Generic/cross-cu-linkonce.ll b/test/DebugInfo/Generic/cross-cu-linkonce.ll
index f0b70cd615c..0f8b4bbdf8e 100644
--- a/test/DebugInfo/Generic/cross-cu-linkonce.ll
+++ b/test/DebugInfo/Generic/cross-cu-linkonce.ll
@@ -50,14 +50,14 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!16, !17}
!llvm.ident = !{!18, !18}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "func.h", directory: "/tmp/dbginfo")
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64, align: 64)
!4 = !DISubroutineType(types: !5)
!5 = !{!6, !6}
!6 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!7 = !DIGlobalVariableExpression(var: !8)
+!7 = !DIGlobalVariableExpression(var: !8, expr: !DIExpression())
!8 = !DIGlobalVariable(name: "y", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!9 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !10, producer: "clang version 3.5.0 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !11, retainedTypes: !11, globals: !12, imports: !11)
!10 = !DIFile(filename: "a.cpp", directory: "/tmp/dbginfo")
diff --git a/test/DebugInfo/Generic/dbg-at-specficiation.ll b/test/DebugInfo/Generic/dbg-at-specficiation.ll
index a0cda09df19..85367de366a 100644
--- a/test/DebugInfo/Generic/dbg-at-specficiation.ll
+++ b/test/DebugInfo/Generic/dbg-at-specficiation.ll
@@ -10,7 +10,7 @@ source_filename = "test/DebugInfo/Generic/dbg-at-specficiation.ll"
!llvm.dbg.cu = !{!7}
!llvm.module.flags = !{!10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "x.c", directory: "/private/tmp")
!3 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 320, align: 32, elements: !5)
diff --git a/test/DebugInfo/Generic/debuginfofinder-forward-declaration.ll b/test/DebugInfo/Generic/debuginfofinder-forward-declaration.ll
index 23084795b0a..771ac57f50a 100644
--- a/test/DebugInfo/Generic/debuginfofinder-forward-declaration.ll
+++ b/test/DebugInfo/Generic/debuginfofinder-forward-declaration.ll
@@ -26,7 +26,7 @@ source_filename = "test/DebugInfo/Generic/debuginfofinder-forward-declaration.ll
!llvm.module.flags = !{!11, !12}
!llvm.ident = !{!13}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "y", scope: !2, file: !3, line: 7, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.7.0 (http://llvm.org/git/clang.git 247b30a043eb8f39ea3708e7e995089da0a6b00f) (http://llvm.org/git/llvm.git 6ecc7365a89c771fd229bdd9ffcc178684ea1aa5)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "minimal.c", directory: "/tmp")
diff --git a/test/DebugInfo/Generic/dwarf-public-names.ll b/test/DebugInfo/Generic/dwarf-public-names.ll
index ff545cc7af0..b8ff3950bd6 100644
--- a/test/DebugInfo/Generic/dwarf-public-names.ll
+++ b/test/DebugInfo/Generic/dwarf-public-names.ll
@@ -97,7 +97,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!20}
!llvm.module.flags = !{!22}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "static_member_variable", linkageName: "_ZN1C22static_member_variableE", scope: !2, file: !3, line: 7, type: !6, isLocal: false, isDefinition: true, declaration: !5)
!2 = !DICompositeType(tag: DW_TAG_structure_type, name: "C", file: !3, line: 1, size: 8, align: 8, elements: !4)
!3 = !DIFile(filename: "dwarf-public-names.cpp", directory: "/usr2/kparzysz/s.hex/t")
@@ -112,9 +112,9 @@ attributes #1 = { nounwind readnone }
!12 = !DISubprogram(name: "static_member_function", linkageName: "_ZN1C22static_member_functionEv", scope: !2, file: !3, line: 3, type: !13, isLocal: false, isDefinition: false, scopeLine: 3, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false, variables: !11)
!13 = !DISubroutineType(types: !14)
!14 = !{!6}
-!15 = !DIGlobalVariableExpression(var: !16)
+!15 = !DIGlobalVariableExpression(var: !16, expr: !DIExpression())
!16 = !DIGlobalVariable(name: "global_variable", scope: null, file: !3, line: 17, type: !2, isLocal: false, isDefinition: true) ; previously: invalid DW_TAG_base_type
-!17 = !DIGlobalVariableExpression(var: !18)
+!17 = !DIGlobalVariableExpression(var: !18, expr: !DIExpression())
!18 = !DIGlobalVariable(name: "global_namespace_variable", linkageName: "_ZN2ns25global_namespace_variableE", scope: !19, file: !3, line: 27, type: !6, isLocal: false, isDefinition: true)
!19 = !DINamespace(name: "ns", scope: null)
!20 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.3 (http://llvm.org/git/clang.git a09cd8103a6a719cb2628cdf0c91682250a17bd2) (http://llvm.org/git/llvm.git 47d03cec0afca0c01ae42b82916d1d731716cd20)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !11, retainedTypes: !11, globals: !21, imports: !11) ; previously: invalid DW_TAG_base_type
diff --git a/test/DebugInfo/Generic/enum.ll b/test/DebugInfo/Generic/enum.ll
index f3875700f6e..4aa8da3757b 100644
--- a/test/DebugInfo/Generic/enum.ll
+++ b/test/DebugInfo/Generic/enum.ll
@@ -55,7 +55,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!8}
!llvm.module.flags = !{!15, !16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "enum.cpp", directory: "/tmp")
!3 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "e1", file: !2, line: 1, size: 64, align: 64, elements: !4)
diff --git a/test/DebugInfo/Generic/global-sra-array.ll b/test/DebugInfo/Generic/global-sra-array.ll
index 3404403d9c0..5756d1e9e59 100644
--- a/test/DebugInfo/Generic/global-sra-array.ll
+++ b/test/DebugInfo/Generic/global-sra-array.ll
@@ -78,7 +78,7 @@ attributes #2 = { optsize }
!llvm.module.flags = !{!15, !16, !17, !18}
!llvm.ident = !{!19}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "array", scope: !2, file: !3, line: 1, type: !6, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 6.0.0 (trunk 309960) (llvm/trunk 309961)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "test.c", directory: "/")
diff --git a/test/DebugInfo/Generic/global-sra-struct.ll b/test/DebugInfo/Generic/global-sra-struct.ll
index 13293f24ace..82fef911ca5 100644
--- a/test/DebugInfo/Generic/global-sra-struct.ll
+++ b/test/DebugInfo/Generic/global-sra-struct.ll
@@ -80,7 +80,7 @@ attributes #2 = { optsize }
!llvm.module.flags = !{!12, !13, !14, !15}
!llvm.ident = !{!16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "static_struct", scope: !2, file: !3, line: 4, type: !6, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 6.0.0 (trunk 309852) (llvm/trunk 309850)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "test.c", directory: "/")
diff --git a/test/DebugInfo/Generic/global.ll b/test/DebugInfo/Generic/global.ll
index 5ba1238a66f..62987614793 100644
--- a/test/DebugInfo/Generic/global.ll
+++ b/test/DebugInfo/Generic/global.ll
@@ -32,7 +32,7 @@ attributes #0 = { nounwind readnone uwtable "less-precise-fpmad"="false" "no-fra
!1 = !DIFile(filename: "global.cpp", directory: "/tmp")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "i", linkageName: "_ZL1i", scope: null, file: !1, line: 1, type: !6, isLocal: true, isDefinition: true)
!6 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!7 = !{i32 2, !"Dwarf Version", i32 3}
diff --git a/test/DebugInfo/Generic/gvn.ll b/test/DebugInfo/Generic/gvn.ll
index b57377a4acc..30aa4e8777b 100644
--- a/test/DebugInfo/Generic/gvn.ll
+++ b/test/DebugInfo/Generic/gvn.ll
@@ -67,13 +67,13 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!9, !10}
!llvm.ident = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: !2, file: !3, line: 1, type: !8, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.8.0 (trunk 245562) (llvm/trunk 245569)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "test.c", directory: "/")
!4 = !{}
!5 = !{!0, !6}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "b", scope: !2, file: !3, line: 1, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!9 = !{i32 2, !"Dwarf Version", i32 2}
diff --git a/test/DebugInfo/Generic/member-pointers.ll b/test/DebugInfo/Generic/member-pointers.ll
index 3cfb54af6b9..96b881b41a4 100644
--- a/test/DebugInfo/Generic/member-pointers.ll
+++ b/test/DebugInfo/Generic/member-pointers.ll
@@ -25,14 +25,14 @@ source_filename = "test/DebugInfo/Generic/member-pointers.ll"
!llvm.dbg.cu = !{!13}
!llvm.module.flags = !{!15}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "simple.cpp", directory: "/home/blaikie/Development/scratch")
!3 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !4, extraData: !5)
!4 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!5 = !DICompositeType(tag: DW_TAG_structure_type, name: "S", file: !2, line: 1, size: 8, align: 8, elements: !6)
!6 = !{}
-!7 = !DIGlobalVariableExpression(var: !8)
+!7 = !DIGlobalVariableExpression(var: !8, expr: !DIExpression())
!8 = !DIGlobalVariable(name: "y", scope: null, file: !2, line: 5, type: !9, isLocal: false, isDefinition: true)
!9 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !10, extraData: !5)
!10 = !DISubroutineType(types: !11)
diff --git a/test/DebugInfo/Generic/namespace.ll b/test/DebugInfo/Generic/namespace.ll
index 8b2ef0b97a7..e4e1d814da9 100644
--- a/test/DebugInfo/Generic/namespace.ll
+++ b/test/DebugInfo/Generic/namespace.ll
@@ -361,5 +361,5 @@ attributes #1 = { nounwind readnone }
!73 = !DILocation(line: 47, column: 21, scope: !26)
!74 = !DILocation(line: 0, scope: !75)
!75 = !DILexicalBlockFile(discriminator: 0, file: !5, scope: !27)
-!131 = !DIGlobalVariableExpression(var: !31)
-!132 = !DIGlobalVariableExpression(var: !32)
+!131 = !DIGlobalVariableExpression(var: !31, expr: !DIExpression())
+!132 = !DIGlobalVariableExpression(var: !32, expr: !DIExpression())
diff --git a/test/DebugInfo/Generic/recursive_inlining.ll b/test/DebugInfo/Generic/recursive_inlining.ll
index caedbe00cb8..68dabb93dac 100644
--- a/test/DebugInfo/Generic/recursive_inlining.ll
+++ b/test/DebugInfo/Generic/recursive_inlining.ll
@@ -201,7 +201,7 @@ attributes #3 = { nounwind }
!llvm.module.flags = !{!17, !18}
!llvm.ident = !{!19}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: null, file: !2, line: 13, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "recursive_inlining.cpp", directory: "/usr/local/google/home/blaikie/dev/scratch/missing_concrete_variable_on_darwin/reduce")
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64, align: 64)
diff --git a/test/DebugInfo/Generic/template-recursive-void.ll b/test/DebugInfo/Generic/template-recursive-void.ll
index adce4ddbcec..4897b9b09b2 100644
--- a/test/DebugInfo/Generic/template-recursive-void.ll
+++ b/test/DebugInfo/Generic/template-recursive-void.ll
@@ -27,7 +27,7 @@ source_filename = "test/DebugInfo/Generic/template-recursive-void.ll"
!llvm.dbg.cu = !{!29}
!llvm.module.flags = !{!32, !33}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "filters", scope: null, file: !2, line: 10, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "debug-info-template-recursive.cpp", directory: "/usr/local/google/home/echristo/tmp")
!3 = !DICompositeType(tag: DW_TAG_class_type, name: "bar", file: !2, line: 9, size: 8, align: 8, elements: !4)
diff --git a/test/DebugInfo/Generic/tu-member-pointer.ll b/test/DebugInfo/Generic/tu-member-pointer.ll
index 91ffe94ce67..22591c40cff 100644
--- a/test/DebugInfo/Generic/tu-member-pointer.ll
+++ b/test/DebugInfo/Generic/tu-member-pointer.ll
@@ -18,7 +18,7 @@ source_filename = "test/DebugInfo/Generic/tu-member-pointer.ll"
!llvm.dbg.cu = !{!6}
!llvm.module.flags = !{!10, !11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "foo.cpp", directory: ".")
!3 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !4, extraData: !5)
diff --git a/test/DebugInfo/Generic/typedef.ll b/test/DebugInfo/Generic/typedef.ll
index cd9663e2ed9..5ed069a3921 100644
--- a/test/DebugInfo/Generic/typedef.ll
+++ b/test/DebugInfo/Generic/typedef.ll
@@ -20,7 +20,7 @@ source_filename = "test/DebugInfo/Generic/typedef.ll"
!llvm.module.flags = !{!8, !9}
!llvm.ident = !{!10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "y", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "typedef.cpp", directory: "/tmp/dbginfo")
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64, align: 64)
diff --git a/test/DebugInfo/MIR/X86/live-debug-values-spill.mir b/test/DebugInfo/MIR/X86/live-debug-values-spill.mir
index 8b7e94f96cb..526908d358c 100644
--- a/test/DebugInfo/MIR/X86/live-debug-values-spill.mir
+++ b/test/DebugInfo/MIR/X86/live-debug-values-spill.mir
@@ -206,22 +206,22 @@
!llvm.module.flags = !{!17, !18}
!llvm.ident = !{!19}
- !0 = !DIGlobalVariableExpression(var: !1)
+ !0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "glob0", scope: !2, file: !3, line: 4, type: !8, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 5.0.0 (trunk 292962)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "spill1.c", directory: "/home/test")
!4 = !{}
!5 = !{!0, !6, !9, !11, !13, !15}
- !6 = !DIGlobalVariableExpression(var: !7)
+ !6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = distinct !DIGlobalVariable(name: "glob1", scope: !2, file: !3, line: 4, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
- !9 = !DIGlobalVariableExpression(var: !10)
+ !9 = !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = distinct !DIGlobalVariable(name: "glob2", scope: !2, file: !3, line: 4, type: !8, isLocal: false, isDefinition: true)
- !11 = !DIGlobalVariableExpression(var: !12)
+ !11 = !DIGlobalVariableExpression(var: !12, expr: !DIExpression())
!12 = distinct !DIGlobalVariable(name: "glob3", scope: !2, file: !3, line: 4, type: !8, isLocal: false, isDefinition: true)
- !13 = !DIGlobalVariableExpression(var: !14)
+ !13 = !DIGlobalVariableExpression(var: !14, expr: !DIExpression())
!14 = distinct !DIGlobalVariable(name: "glob4", scope: !2, file: !3, line: 4, type: !8, isLocal: false, isDefinition: true)
- !15 = !DIGlobalVariableExpression(var: !16)
+ !15 = !DIGlobalVariableExpression(var: !16, expr: !DIExpression())
!16 = distinct !DIGlobalVariable(name: "glob5", scope: !2, file: !3, line: 4, type: !8, isLocal: false, isDefinition: true)
!17 = !{i32 2, !"Dwarf Version", i32 4}
!18 = !{i32 2, !"Debug Info Version", i32 3}
diff --git a/test/DebugInfo/MIR/X86/live-debug-values.mir b/test/DebugInfo/MIR/X86/live-debug-values.mir
index e8e0777f4cd..8b53639f89a 100644
--- a/test/DebugInfo/MIR/X86/live-debug-values.mir
+++ b/test/DebugInfo/MIR/X86/live-debug-values.mir
@@ -123,7 +123,7 @@
!13 = !DILocalVariable(name: "argv", arg: 2, scope: !4, file: !1, line: 6, type: !8)
!14 = !DILocalVariable(name: "n", scope: !4, file: !1, line: 7, type: !7)
!15 = !{!16}
- !16 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "m", scope: !0, file: !1, line: 2, type: !7, isLocal: false, isDefinition: true))
+ !16 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "m", scope: !0, file: !1, line: 2, type: !7, isLocal: false, isDefinition: true), expr: !DIExpression())
!17 = !{i32 2, !"Dwarf Version", i32 4}
!18 = !{i32 2, !"Debug Info Version", i32 3}
!19 = !{!"clang version 3.8.0 (trunk 253049)"}
diff --git a/test/DebugInfo/MIR/X86/mlicm-hoist.mir b/test/DebugInfo/MIR/X86/mlicm-hoist.mir
index 406d20a30d5..d311104d95c 100644
--- a/test/DebugInfo/MIR/X86/mlicm-hoist.mir
+++ b/test/DebugInfo/MIR/X86/mlicm-hoist.mir
@@ -55,7 +55,7 @@
!llvm.module.flags = !{!6, !7}
!llvm.ident = !{!8}
- !0 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "x", scope: !1, file: !2, line: 1, type: !5, isLocal: false, isDefinition: true))
+ !0 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "x", scope: !1, file: !2, line: 1, type: !5, isLocal: false, isDefinition: true), expr: !DIExpression())
!1 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2, producer: "clang version 4.0.0 ", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !3, globals: !4)
!2 = !DIFile(filename: "t.c", directory: "/home/test")
!3 = !{}
diff --git a/test/DebugInfo/Mips/InlinedFnLocalVar.ll b/test/DebugInfo/Mips/InlinedFnLocalVar.ll
index 969fccc13a2..ad46989f830 100644
--- a/test/DebugInfo/Mips/InlinedFnLocalVar.ll
+++ b/test/DebugInfo/Mips/InlinedFnLocalVar.ll
@@ -32,7 +32,7 @@ attributes #1 = { nounwind ssp }
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "i", scope: !2, file: !2, line: 5, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "bar.c", directory: "/tmp/")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/Mips/dwarfdump-tls.ll b/test/DebugInfo/Mips/dwarfdump-tls.ll
index 54bb7b765f4..6aa429adb41 100644
--- a/test/DebugInfo/Mips/dwarfdump-tls.ll
+++ b/test/DebugInfo/Mips/dwarfdump-tls.ll
@@ -10,7 +10,7 @@
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!7, !8}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "tls.c", directory: "/tmp")
diff --git a/test/DebugInfo/Mips/tls.ll b/test/DebugInfo/Mips/tls.ll
index 66867da20c3..baf346fe035 100644
--- a/test/DebugInfo/Mips/tls.ll
+++ b/test/DebugInfo/Mips/tls.ll
@@ -10,7 +10,7 @@
!llvm.module.flags = !{!7, !8}
!llvm.ident = !{!9}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "tls.c", directory: "/tmp")
diff --git a/test/DebugInfo/PowerPC/tls-fission.ll b/test/DebugInfo/PowerPC/tls-fission.ll
index e01baaf1fb6..fa1c2982113 100644
--- a/test/DebugInfo/PowerPC/tls-fission.ll
+++ b/test/DebugInfo/PowerPC/tls-fission.ll
@@ -23,7 +23,7 @@ source_filename = "test/DebugInfo/PowerPC/tls-fission.ll"
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7, !8}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "tls", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "tls.cpp", directory: "/tmp")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/PowerPC/tls.ll b/test/DebugInfo/PowerPC/tls.ll
index 285d1743ac7..1483381d996 100644
--- a/test/DebugInfo/PowerPC/tls.ll
+++ b/test/DebugInfo/PowerPC/tls.ll
@@ -19,7 +19,7 @@ source_filename = "test/DebugInfo/PowerPC/tls.ll"
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7, !8}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "tls", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "tls.cpp", directory: "/tmp")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll b/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll
index d442bdd7b5a..dd2ad2e49b7 100644
--- a/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll
+++ b/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll
@@ -26,7 +26,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "GLB", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "test.c", directory: "/work/llvm/vanilla/test/DebugInfo")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/X86/DIModuleContext.ll b/test/DebugInfo/X86/DIModuleContext.ll
index 02d4441c823..f245860dd15 100644
--- a/test/DebugInfo/X86/DIModuleContext.ll
+++ b/test/DebugInfo/X86/DIModuleContext.ll
@@ -17,7 +17,7 @@ target triple = "x86_64-apple-macosx"
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!11, !12}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "s", scope: !2, file: !3, line: 2, type: !9, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5, imports: !6)
!3 = !DIFile(filename: "test.c", directory: "/")
diff --git a/test/DebugInfo/X86/DW_AT_calling-convention.ll b/test/DebugInfo/X86/DW_AT_calling-convention.ll
index 026ab99bb33..19bd23d359b 100644
--- a/test/DebugInfo/X86/DW_AT_calling-convention.ll
+++ b/test/DebugInfo/X86/DW_AT_calling-convention.ll
@@ -63,7 +63,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!10, !11}
!llvm.ident = !{!12}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "fptr", linkageName: "\01?fptr@@3P6IHHH@ZA", scope: !2, file: !3, line: 2, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 272067)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/X86/DW_AT_specification.ll b/test/DebugInfo/X86/DW_AT_specification.ll
index 49147f36f17..5610a5b6a4b 100644
--- a/test/DebugInfo/X86/DW_AT_specification.ll
+++ b/test/DebugInfo/X86/DW_AT_specification.ll
@@ -21,7 +21,7 @@ entry:
!llvm.dbg.cu = !{!8}
!llvm.module.flags = !{!16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 5, type: !14, isLocal: true, isDefinition: true)
!2 = distinct !DISubprogram(name: "bar", linkageName: "_ZN3foo3barEv", scope: null, file: !3, line: 4, type: !4, isLocal: false, isDefinition: true, scopeLine: 4, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false, unit: !8, declaration: !11)
!3 = !DIFile(filename: "nsNativeAppSupportBase.ii", directory: "/Users/espindola/mozilla-central/obj-x86_64-apple-darwin11.2.0/toolkit/library")
diff --git a/test/DebugInfo/X86/DW_TAG_friend.ll b/test/DebugInfo/X86/DW_TAG_friend.ll
index 383d125f25b..dcf403fbf33 100644
--- a/test/DebugInfo/X86/DW_TAG_friend.ll
+++ b/test/DebugInfo/X86/DW_TAG_friend.ll
@@ -19,7 +19,7 @@ source_filename = "test/DebugInfo/X86/DW_TAG_friend.ll"
!llvm.dbg.cu = !{!21}
!llvm.module.flags = !{!24}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 10, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "foo.cpp", directory: "/Users/echristo/tmp")
!3 = !DICompositeType(tag: DW_TAG_class_type, name: "A", file: !2, line: 1, size: 32, align: 32, elements: !4)
@@ -30,7 +30,7 @@ source_filename = "test/DebugInfo/X86/DW_TAG_friend.ll"
!8 = !DISubroutineType(types: !9)
!9 = !{null, !10}
!10 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !3, size: 64, align: 64, flags: DIFlagArtificial)
-!11 = !DIGlobalVariableExpression(var: !12)
+!11 = !DIGlobalVariableExpression(var: !12, expr: !DIExpression())
!12 = !DIGlobalVariable(name: "b", scope: null, file: !2, line: 11, type: !13, isLocal: false, isDefinition: true)
!13 = !DICompositeType(tag: DW_TAG_class_type, name: "B", file: !2, line: 5, size: 32, align: 32, elements: !14)
!14 = !{!15, !16, !20}
diff --git a/test/DebugInfo/X86/FrameIndexExprs.ll b/test/DebugInfo/X86/FrameIndexExprs.ll
index dfa2bc411b6..581fa37260a 100644
--- a/test/DebugInfo/X86/FrameIndexExprs.ll
+++ b/test/DebugInfo/X86/FrameIndexExprs.ll
@@ -46,13 +46,13 @@ attributes #0 = { nounwind readnone }
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!9, !10, !11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "f", scope: !2, file: !3, line: 8, type: !8, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "PR31381.c", directory: "/")
!4 = !{}
!5 = !{!0, !6}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = distinct !DIGlobalVariable(name: "h", scope: !2, file: !3, line: 8, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
!9 = !{i32 2, !"Dwarf Version", i32 4}
diff --git a/test/DebugInfo/X86/InlinedFnLocalVar.ll b/test/DebugInfo/X86/InlinedFnLocalVar.ll
index 471a76da711..328e19d40f5 100644
--- a/test/DebugInfo/X86/InlinedFnLocalVar.ll
+++ b/test/DebugInfo/X86/InlinedFnLocalVar.ll
@@ -32,7 +32,7 @@ attributes #1 = { nounwind ssp }
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "i", scope: !2, file: !2, line: 5, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "bar.c", directory: "/tmp/")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/X86/PR26148.ll b/test/DebugInfo/X86/PR26148.ll
index 48cedc1c3a5..1741b574d93 100644
--- a/test/DebugInfo/X86/PR26148.ll
+++ b/test/DebugInfo/X86/PR26148.ll
@@ -66,7 +66,7 @@ attributes #1 = { "no-frame-pointer-elim"="true" "no-frame-pointer-elim-non-leaf
!llvm.module.flags = !{!12, !13, !14}
!llvm.ident = !{!15}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: !2, file: !3, line: 4, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (https://github.com/llvm-mirror/clang 8f258397c5afd7a708bd95770c718e81d08fb11a) (https://github.com/llvm-mirror/llvm 18481855bdfa1b4a424f81be8525db002671348d)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "small.c", directory: "/Users/kfischer/Projects/clangbug")
diff --git a/test/DebugInfo/X86/align_c11.ll b/test/DebugInfo/X86/align_c11.ll
index c66a233c23f..c76ed274ab4 100644
--- a/test/DebugInfo/X86/align_c11.ll
+++ b/test/DebugInfo/X86/align_c11.ll
@@ -56,7 +56,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!14, !15}
!llvm.ident = !{!16}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "d", scope: !2, file: !3, line: 7, type: !6, isLocal: false, isDefinition: true, align: 16384)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0 (http://llvm.org/git/clang.git 9ce5220b821054019059c2ac4a9b132c7723832d) (http://llvm.org/git/llvm.git 9a6298be89ce0359b151c0a37af2776a12c69e85)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "test.c", directory: "/tmp")
diff --git a/test/DebugInfo/X86/align_cpp11.ll b/test/DebugInfo/X86/align_cpp11.ll
index 2b3b68e3b87..c172b5d11c8 100644
--- a/test/DebugInfo/X86/align_cpp11.ll
+++ b/test/DebugInfo/X86/align_cpp11.ll
@@ -118,7 +118,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!21, !22}
!llvm.ident = !{!23}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "c0", scope: !2, file: !6, line: 19, type: !19, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 4.0.0 (http://llvm.org/git/clang.git 9ce5220b821054019059c2ac4a9b132c7723832d) (http://llvm.org/git/llvm.git 9a6298be89ce0359b151c0a37af2776a12c69e85)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !11)
!3 = !DIFile(filename: "test.cpp", directory: "/tmp")
@@ -130,7 +130,7 @@ attributes #1 = { nounwind readnone }
!9 = !DIEnumerator(name: "B", value: 1)
!10 = !DIEnumerator(name: "C", value: 2)
!11 = !{!0, !12}
-!12 = distinct !DIGlobalVariableExpression(var: !13)
+!12 = distinct !DIGlobalVariableExpression(var: !13, expr: !DIExpression())
!13 = !DIGlobalVariable(name: "s", scope: !2, file: !6, line: 21, type: !14, isLocal: false, isDefinition: true, align: 16384)
!14 = distinct !DICompositeType(tag: DW_TAG_structure_type, name: "S", file: !6, line: 1, size: 2048, elements: !15, identifier: "_ZTS1S")
!15 = !{!16, !18}
diff --git a/test/DebugInfo/X86/align_objc.ll b/test/DebugInfo/X86/align_objc.ll
index 02cfcacc03c..2241dde009b 100644
--- a/test/DebugInfo/X86/align_objc.ll
+++ b/test/DebugInfo/X86/align_objc.ll
@@ -68,7 +68,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!11, !12}
!llvm.ident = !{!13}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "s0", scope: !2, file: !3, line: 10, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_ObjC, file: !3, producer: "clang version 4.0.0 (http://llvm.org/git/clang.git 9ce5220b821054019059c2ac4a9b132c7723832d) (http://llvm.org/git/llvm.git 9a6298be89ce0359b151c0a37af2776a12c69e85)", isOptimized: false, runtimeVersion: 1, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "test.m", directory: "/tmp")
diff --git a/test/DebugInfo/X86/arange-and-stub.ll b/test/DebugInfo/X86/arange-and-stub.ll
index b5892461740..613456c10e4 100644
--- a/test/DebugInfo/X86/arange-and-stub.ll
+++ b/test/DebugInfo/X86/arange-and-stub.ll
@@ -33,7 +33,7 @@ lpad: ; preds = %0
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!15, !16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "zed", scope: !2, file: !6, line: 6, type: !7, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.7.0 (trunk 234308) (llvm/trunk 234310)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "/Users/espindola/llvm/<stdin>", directory: "/Users/espindola/llvm/build")
diff --git a/test/DebugInfo/X86/arange.ll b/test/DebugInfo/X86/arange.ll
index dca0d068fbc..7b81eee9d2b 100644
--- a/test/DebugInfo/X86/arange.ll
+++ b/test/DebugInfo/X86/arange.ll
@@ -31,7 +31,7 @@ source_filename = "test/DebugInfo/X86/arange.ll"
!llvm.module.flags = !{!12, !13}
!llvm.ident = !{!14}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "f", scope: null, file: !2, line: 6, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "simple.cpp", directory: "/tmp/dbginfo")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "foo<&i>", file: !2, line: 3, size: 8, align: 8, elements: !4, templateParams: !5, identifier: "_ZTS3fooIXadL_Z1iEEE")
diff --git a/test/DebugInfo/X86/atomic-c11-dwarf-4.ll b/test/DebugInfo/X86/atomic-c11-dwarf-4.ll
index 1d523c971d1..197f3808015 100644
--- a/test/DebugInfo/X86/atomic-c11-dwarf-4.ll
+++ b/test/DebugInfo/X86/atomic-c11-dwarf-4.ll
@@ -22,7 +22,7 @@ target triple = "x86_64-unknown-linux-gnu"
!llvm.module.flags = !{!9, !10}
!llvm.ident = !{!11}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "i", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0 (http://llvm.org/git/clang.git cd238117e3a8a57271a82d0bb03d6df6ad8f073e) (http://llvm.org/git/llvm.git 9fd063832c1541aad3907cd60ac344d36997905f)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "atomic.c", directory: "/tmp")
diff --git a/test/DebugInfo/X86/atomic-c11-dwarf-5.ll b/test/DebugInfo/X86/atomic-c11-dwarf-5.ll
index 63c4e3835f8..c9302939661 100644
--- a/test/DebugInfo/X86/atomic-c11-dwarf-5.ll
+++ b/test/DebugInfo/X86/atomic-c11-dwarf-5.ll
@@ -23,7 +23,7 @@ target triple = "x86_64-unknown-linux-gnu"
!llvm.module.flags = !{!9, !10}
!llvm.ident = !{!11}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "i", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0 (http://llvm.org/git/clang.git cd238117e3a8a57271a82d0bb03d6df6ad8f073e) (http://llvm.org/git/llvm.git 9fd063832c1541aad3907cd60ac344d36997905f)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "atomic.c", directory: "/tmp")
diff --git a/test/DebugInfo/X86/bitfields-dwarf4.ll b/test/DebugInfo/X86/bitfields-dwarf4.ll
index 6cacdd6e4d0..eee1002a10c 100644
--- a/test/DebugInfo/X86/bitfields-dwarf4.ll
+++ b/test/DebugInfo/X86/bitfields-dwarf4.ll
@@ -27,7 +27,7 @@ target triple = "x86_64-apple-macosx"
!llvm.module.flags = !{!15, !16, !17}
!llvm.ident = !{!18}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "s", scope: !2, file: !3, line: 8, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (trunk 267633)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "bitfield.c", directory: "/Volumes/Data/llvm")
diff --git a/test/DebugInfo/X86/bitfields.ll b/test/DebugInfo/X86/bitfields.ll
index 66f61a2c464..63978f18171 100644
--- a/test/DebugInfo/X86/bitfields.ll
+++ b/test/DebugInfo/X86/bitfields.ll
@@ -55,7 +55,7 @@ target triple = "x86_64-apple-macosx"
!llvm.module.flags = !{!13, !14, !15}
!llvm.ident = !{!16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "b", scope: !2, file: !3, line: 8, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.7.0 (trunk 240548) (llvm/trunk 240554)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "bitfields.c", directory: "/")
diff --git a/test/DebugInfo/X86/c-type-units.ll b/test/DebugInfo/X86/c-type-units.ll
index d31a6ffde5f..8e0bafae6ef 100644
--- a/test/DebugInfo/X86/c-type-units.ll
+++ b/test/DebugInfo/X86/c-type-units.ll
@@ -19,7 +19,7 @@ source_filename = "test/DebugInfo/X86/c-type-units.ll"
!llvm.module.flags = !{!7, !8}
!llvm.ident = !{!9}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "f", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "simple.c", directory: "/tmp/dbginfo")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "foo", file: !2, line: 1, align: 8, elements: !4)
diff --git a/test/DebugInfo/X86/concrete_out_of_line.ll b/test/DebugInfo/X86/concrete_out_of_line.ll
index 8fb496b9964..f1615cf82c3 100644
--- a/test/DebugInfo/X86/concrete_out_of_line.ll
+++ b/test/DebugInfo/X86/concrete_out_of_line.ll
@@ -85,7 +85,7 @@ attributes #0 = { nounwind }
!1 = !DIFile(filename: "nsAutoRefCnt.ii", directory: "/Users/espindola/mozilla-central/obj-x86_64-apple-darwin11.2.0/netwerk/base/src")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "mRefCnt", scope: null, file: !1, line: 9, type: !6, isLocal: false, isDefinition: true)
!6 = !DICompositeType(tag: DW_TAG_class_type, name: "nsAutoRefCnt", file: !1, line: 2, size: 32, align: 32, elements: !7)
!7 = !{!8, !10, !15}
diff --git a/test/DebugInfo/X86/cu-ranges-odr.ll b/test/DebugInfo/X86/cu-ranges-odr.ll
index e2ee29b55d8..4a0e67f5c57 100644
--- a/test/DebugInfo/X86/cu-ranges-odr.ll
+++ b/test/DebugInfo/X86/cu-ranges-odr.ll
@@ -63,7 +63,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!15, !16}
!llvm.ident = !{!17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 8, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "baz.cpp", directory: "/usr/local/google/home/echristo/tmp")
!3 = !DICompositeType(tag: DW_TAG_class_type, name: "A", file: !2, line: 1, size: 32, align: 32, elements: !4, identifier: "_ZTS1A")
diff --git a/test/DebugInfo/X86/data_member_location.ll b/test/DebugInfo/X86/data_member_location.ll
index 47e1f38881c..982630669a4 100644
--- a/test/DebugInfo/X86/data_member_location.ll
+++ b/test/DebugInfo/X86/data_member_location.ll
@@ -36,7 +36,7 @@ source_filename = "test/DebugInfo/X86/data_member_location.ll"
!llvm.module.flags = !{!13, !14}
!llvm.ident = !{!15}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "f", scope: null, file: !2, line: 6, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "data_member_location.cpp", directory: "/tmp/dbginfo")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "foo", file: !2, line: 1, size: 64, align: 32, elements: !4, identifier: "_ZTS3foo")
diff --git a/test/DebugInfo/X86/dbg-subrange.ll b/test/DebugInfo/X86/dbg-subrange.ll
index 804428251fe..f81b8047a8c 100644
--- a/test/DebugInfo/X86/dbg-subrange.ll
+++ b/test/DebugInfo/X86/dbg-subrange.ll
@@ -19,7 +19,7 @@ attributes #0 = { nounwind ssp uwtable }
!llvm.dbg.cu = !{!7}
!llvm.module.flags = !{!10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "s", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "small.c", directory: "/private/tmp")
!3 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 34359738368, align: 8, elements: !5)
diff --git a/test/DebugInfo/X86/dbg-value-inlined-parameter.ll b/test/DebugInfo/X86/dbg-value-inlined-parameter.ll
index 330cd868a2f..0d842efdf42 100644
--- a/test/DebugInfo/X86/dbg-value-inlined-parameter.ll
+++ b/test/DebugInfo/X86/dbg-value-inlined-parameter.ll
@@ -87,7 +87,7 @@ attributes #4 = { nounwind }
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!14}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "p", scope: !2, file: !3, line: 14, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 2.9 (trunk 125693)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "nm2.c", directory: "/private/tmp")
diff --git a/test/DebugInfo/X86/dbg-value-regmask-clobber.ll b/test/DebugInfo/X86/dbg-value-regmask-clobber.ll
index cffb8efe259..41e5e2bc86d 100644
--- a/test/DebugInfo/X86/dbg-value-regmask-clobber.ll
+++ b/test/DebugInfo/X86/dbg-value-regmask-clobber.ll
@@ -71,7 +71,7 @@ attributes #2 = { nounwind }
!llvm.module.flags = !{!8, !9, !10}
!llvm.ident = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (trunk 260617) (llvm/trunk 260619)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "D:\5Csrc\5Cllvm\5Cbuild")
diff --git a/test/DebugInfo/X86/debug-info-access.ll b/test/DebugInfo/X86/debug-info-access.ll
index 49af83f739a..f068d41595a 100644
--- a/test/DebugInfo/X86/debug-info-access.ll
+++ b/test/DebugInfo/X86/debug-info-access.ll
@@ -107,7 +107,7 @@ attributes #0 = { nounwind ssp uwtable }
!llvm.module.flags = !{!36, !37}
!llvm.ident = !{!38}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 37, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "/llvm/tools/clang/test/CodeGenCXX/debug-info-access.cpp", directory: "")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "A", file: !2, line: 3, size: 8, align: 8, elements: !4, identifier: "_ZTS1A")
@@ -118,7 +118,7 @@ attributes #0 = { nounwind ssp uwtable }
!8 = !DISubroutineType(types: !9)
!9 = !{null, !10}
!10 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !3, size: 64, align: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
-!11 = !DIGlobalVariableExpression(var: !12)
+!11 = !DIGlobalVariableExpression(var: !12, expr: !DIExpression())
!12 = !DIGlobalVariable(name: "b", scope: null, file: !2, line: 38, type: !13, isLocal: false, isDefinition: true)
!13 = !DICompositeType(tag: DW_TAG_class_type, name: "B", file: !2, line: 11, size: 8, align: 8, elements: !14, identifier: "_ZTS1B")
!14 = !{!15, !16, !17, !21, !22}
@@ -130,7 +130,7 @@ attributes #0 = { nounwind ssp uwtable }
!20 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !13, size: 64, align: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
!21 = !DISubprogram(name: "prot", linkageName: "_ZN1B4protEv", scope: !13, file: !2, line: 19, type: !18, isLocal: false, isDefinition: false, scopeLine: 19, virtualIndex: 6, flags: DIFlagProtected | DIFlagPrototyped, isOptimized: false)
!22 = !DISubprogram(name: "priv_default", linkageName: "_ZN1B12priv_defaultEv", scope: !13, file: !2, line: 22, type: !18, isLocal: false, isDefinition: false, scopeLine: 22, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false)
-!23 = !DIGlobalVariableExpression(var: !24)
+!23 = !DIGlobalVariableExpression(var: !24, expr: !DIExpression())
!24 = !DIGlobalVariable(name: "u", scope: null, file: !2, line: 39, type: !25, isLocal: false, isDefinition: true)
!25 = !DICompositeType(tag: DW_TAG_union_type, name: "U", file: !2, line: 25, size: 32, align: 32, elements: !26, identifier: "_ZTS1U")
!26 = !{!27, !28}
diff --git a/test/DebugInfo/X86/debug-info-packed-struct.ll b/test/DebugInfo/X86/debug-info-packed-struct.ll
index d6f23430743..f4ee500353e 100644
--- a/test/DebugInfo/X86/debug-info-packed-struct.ll
+++ b/test/DebugInfo/X86/debug-info-packed-struct.ll
@@ -143,13 +143,13 @@ target triple = "x86_64-apple-darwin"
!llvm.module.flags = !{!49, !50}
!llvm.ident = !{!51}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "l0", scope: !2, file: !8, line: 88, type: !40, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.7.0 (trunk 240791) (llvm/trunk 240790)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "/llvm/tools/clang/test/CodeGen/<stdin>", directory: "/llvm/_build.ninja.release")
!4 = !{}
!5 = !{!0, !6, !17, !29}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "l1", scope: !2, file: !8, line: 89, type: !9, isLocal: false, isDefinition: true)
!8 = !DIFile(filename: "/llvm/tools/clang/test/CodeGen/debug-info-packed-struct.c", directory: "/llvm/_build.ninja.release")
!9 = !DICompositeType(tag: DW_TAG_structure_type, name: "layout1", file: !8, line: 34, size: 96, elements: !10)
@@ -160,7 +160,7 @@ target triple = "x86_64-apple-darwin"
!14 = !DICompositeType(tag: DW_TAG_structure_type, name: "size8_anon", file: !8, line: 30, size: 64, elements: !4)
!15 = !DIDerivedType(tag: DW_TAG_member, name: "l1_ofs9", scope: !9, file: !8, line: 37, baseType: !16, size: 1, offset: 72)
!16 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
-!17 = !DIGlobalVariableExpression(var: !18)
+!17 = !DIGlobalVariableExpression(var: !18, expr: !DIExpression())
!18 = !DIGlobalVariable(name: "l2", scope: !2, file: !8, line: 90, type: !19, isLocal: false, isDefinition: true)
!19 = !DICompositeType(tag: DW_TAG_structure_type, name: "layout2", file: !8, line: 54, size: 80, elements: !20)
!20 = !{!21, !22, !28}
@@ -172,7 +172,7 @@ target triple = "x86_64-apple-darwin"
!26 = !DIDerivedType(tag: DW_TAG_member, name: "l", scope: !23, file: !8, line: 52, baseType: !27, size: 60, offset: 4)
!27 = !DIBasicType(name: "long long int", size: 64, encoding: DW_ATE_signed)
!28 = !DIDerivedType(tag: DW_TAG_member, name: "l2_ofs9", scope: !19, file: !8, line: 57, baseType: !16, size: 1, offset: 72)
-!29 = !DIGlobalVariableExpression(var: !30)
+!29 = !DIGlobalVariableExpression(var: !30, expr: !DIExpression())
!30 = !DIGlobalVariable(name: "l3", scope: !2, file: !8, line: 91, type: !31, isLocal: false, isDefinition: true)
!31 = !DICompositeType(tag: DW_TAG_structure_type, name: "layout3", file: !8, line: 76, size: 128, elements: !32)
!32 = !{!33, !34, !39}
diff --git a/test/DebugInfo/X86/debug-info-static-member.ll b/test/DebugInfo/X86/debug-info-static-member.ll
index 41ec7caca21..81f6b0a924c 100644
--- a/test/DebugInfo/X86/debug-info-static-member.ll
+++ b/test/DebugInfo/X86/debug-info-static-member.ll
@@ -66,7 +66,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!22}
!llvm.module.flags = !{!25}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", linkageName: "_ZN1C1aE", scope: null, file: !2, line: 14, type: !3, isLocal: false, isDefinition: true, declaration: !4)
!2 = !DIFile(filename: "/usr/local/google/home/blaikie/Development/llvm/src/tools/clang/test/CodeGenCXX/debug-info-static-member.cpp", directory: "/home/blaikie/local/Development/llvm/build/clang/x86-64/Debug/llvm")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
@@ -84,9 +84,9 @@ attributes #1 = { nounwind readnone }
!15 = !DIDerivedType(tag: DW_TAG_member, name: "const_c", scope: !5, file: !2, line: 10, baseType: !16, flags: DIFlagPublic | DIFlagStaticMember, extraData: i32 18)
!16 = !DIDerivedType(tag: DW_TAG_const_type, baseType: !3)
!17 = !DIDerivedType(tag: DW_TAG_member, name: "d", scope: !5, file: !2, line: 11, baseType: !3, size: 32, align: 32, flags: DIFlagPublic)
-!18 = !DIGlobalVariableExpression(var: !19)
+!18 = !DIGlobalVariableExpression(var: !19, expr: !DIExpression())
!19 = !DIGlobalVariable(name: "b", linkageName: "_ZN1C1bE", scope: null, file: !2, line: 15, type: !3, isLocal: false, isDefinition: true, declaration: !10)
-!20 = !DIGlobalVariableExpression(var: !21)
+!20 = !DIGlobalVariableExpression(var: !21, expr: !DIExpression())
!21 = !DIGlobalVariable(name: "c", linkageName: "_ZN1C1cE", scope: null, file: !2, line: 16, type: !3, isLocal: false, isDefinition: true, declaration: !14)
!22 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !2, producer: "clang version 3.3 (trunk 171914)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !23, retainedTypes: !23, globals: !24, imports: !23)
!23 = !{}
diff --git a/test/DebugInfo/X86/debug-loc-frame.ll b/test/DebugInfo/X86/debug-loc-frame.ll
index 8c1e64a3f62..b150b1c6845 100644
--- a/test/DebugInfo/X86/debug-loc-frame.ll
+++ b/test/DebugInfo/X86/debug-loc-frame.ll
@@ -73,18 +73,18 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!14, !15}
!llvm.ident = !{!16}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "data", scope: !2, file: !3, line: 1, type: !8, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.9.0 (trunk 273961)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "frame.c", directory: "/home/user/test")
!4 = !{}
!5 = !{!0, !6, !9, !11}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "sum", scope: !2, file: !3, line: 2, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!9 = distinct !DIGlobalVariableExpression(var: !10)
+!9 = distinct !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = !DIGlobalVariable(name: "zero", scope: !2, file: !3, line: 3, type: !8, isLocal: false, isDefinition: true)
-!11 = distinct !DIGlobalVariableExpression(var: !12)
+!11 = distinct !DIGlobalVariableExpression(var: !12, expr: !DIExpression())
!12 = !DIGlobalVariable(name: "ptr", scope: !2, file: !3, line: 4, type: !13, isLocal: false, isDefinition: true)
!13 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !8, size: 64, align: 64)
!14 = !{i32 2, !"Dwarf Version", i32 4}
diff --git a/test/DebugInfo/X86/debugger-tune.ll b/test/DebugInfo/X86/debugger-tune.ll
index 74cb9fe29a5..2813293ca86 100644
--- a/test/DebugInfo/X86/debugger-tune.ll
+++ b/test/DebugInfo/X86/debugger-tune.ll
@@ -33,7 +33,7 @@ source_filename = "test/DebugInfo/X86/debugger-tune.ll"
!llvm.module.flags = !{!7, !8}
!llvm.ident = !{!9}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "globalvar", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.7.0 (trunk 238808)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "debugger-tune.cpp", directory: "/home/probinson/projects/scratch")
diff --git a/test/DebugInfo/X86/decl-derived-member.ll b/test/DebugInfo/X86/decl-derived-member.ll
index f26a9428f19..472c0f5599e 100644
--- a/test/DebugInfo/X86/decl-derived-member.ll
+++ b/test/DebugInfo/X86/decl-derived-member.ll
@@ -102,7 +102,7 @@ attributes #4 = { "less-precise-fpmad"="false" "no-frame-pointer-elim"="true" "n
!llvm.module.flags = !{!12, !13}
!llvm.ident = !{!14}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "f", scope: null, file: !2, line: 8, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "decl-derived-member.cpp", directory: "/tmp/dbginfo")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "foo", file: !2, line: 5, size: 64, align: 64, elements: !4, identifier: "_ZTS3foo")
diff --git a/test/DebugInfo/X86/default-subrange-array.ll b/test/DebugInfo/X86/default-subrange-array.ll
index 564e195a36f..83b4a8ad879 100644
--- a/test/DebugInfo/X86/default-subrange-array.ll
+++ b/test/DebugInfo/X86/default-subrange-array.ll
@@ -32,7 +32,7 @@ source_filename = "test/DebugInfo/X86/default-subrange-array.ll"
!llvm.dbg.cu = !{!14}
!llvm.module.flags = !{!17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "t.cpp", directory: "/Volumes/Sandbox/llvm")
!3 = !DICompositeType(tag: DW_TAG_class_type, name: "A", file: !2, line: 1, align: 32, elements: !4)
diff --git a/test/DebugInfo/X86/dllimport.ll b/test/DebugInfo/X86/dllimport.ll
index 034c826b96e..12ea8a8b447 100644
--- a/test/DebugInfo/X86/dllimport.ll
+++ b/test/DebugInfo/X86/dllimport.ll
@@ -11,7 +11,7 @@ target triple = "i686-pc-windows-msvc"
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!14, !15}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "id", linkageName: "\01?id@?$numpunct@D@@0HA", scope: !2, file: !6, line: 4, type: !7, isLocal: false, isDefinition: true, declaration: !8)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 272628) (llvm/trunk 272566)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "/usr/local/google/home/majnemer/Downloads/<stdin>", directory: "/usr/local/google/home/majnemer/llvm/src")
diff --git a/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll b/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll
index be27e4f8030..2fa56f57764 100644
--- a/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll
+++ b/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll
@@ -60,7 +60,7 @@ attributes #2 = { nounwind readnone }
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7, !8}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "global", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "tmp/debug_ranges/a.cc", directory: "/")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/X86/dwarf-aranges.ll b/test/DebugInfo/X86/dwarf-aranges.ll
index 210b344442c..724c38c440e 100644
--- a/test/DebugInfo/X86/dwarf-aranges.ll
+++ b/test/DebugInfo/X86/dwarf-aranges.ll
@@ -60,13 +60,13 @@ entry:
!llvm.dbg.cu = !{!8}
!llvm.module.flags = !{!11, !12}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "some_data", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "test.c", directory: "/home/kayamon")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "some_other", scope: null, file: !2, line: 3, type: !3, isLocal: false, isDefinition: true)
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "some_bss", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!8 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2, producer: "clang version 3.4 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !9, retainedTypes: !9, globals: !10, imports: !9)
!9 = !{}
diff --git a/test/DebugInfo/X86/dwarf-linkage-names.ll b/test/DebugInfo/X86/dwarf-linkage-names.ll
index 2a0ec737082..e8fb27cf09e 100644
--- a/test/DebugInfo/X86/dwarf-linkage-names.ll
+++ b/test/DebugInfo/X86/dwarf-linkage-names.ll
@@ -55,7 +55,7 @@ attributes #0 = { nounwind uwtable "disable-tail-calls"="false" "less-precise-fp
!llvm.module.flags = !{!8, !9}
!llvm.ident = !{!10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "global_var", linkageName: "_ZN4test10global_varE", scope: !2, file: !3, line: 2, type: !4, isLocal: false, isDefinition: true)
!2 = !DINamespace(name: "test", scope: null)
!3 = !DIFile(filename: "dwarf-linkage-names.cpp", directory: "/home/probinson/projects/scratch")
diff --git a/test/DebugInfo/X86/dwarf-public-names.ll b/test/DebugInfo/X86/dwarf-public-names.ll
index 150e08bc210..af9b27d2107 100644
--- a/test/DebugInfo/X86/dwarf-public-names.ll
+++ b/test/DebugInfo/X86/dwarf-public-names.ll
@@ -103,7 +103,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!20}
!llvm.module.flags = !{!22}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "static_member_variable", linkageName: "_ZN1C22static_member_variableE", scope: !2, file: !3, line: 7, type: !6, isLocal: false, isDefinition: true, declaration: !5)
!2 = !DICompositeType(tag: DW_TAG_structure_type, name: "C", file: !3, line: 1, size: 8, elements: !4)
!3 = !DIFile(filename: "dwarf-public-names.cpp", directory: "/usr2/kparzysz/s.hex/t")
@@ -118,9 +118,9 @@ attributes #1 = { nounwind readnone }
!12 = !DISubprogram(name: "static_member_function", linkageName: "_ZN1C22static_member_functionEv", scope: !2, file: !3, line: 3, type: !13, isLocal: false, isDefinition: false, scopeLine: 3, virtualIndex: 6, flags: DIFlagPrototyped, isOptimized: false, variables: !11)
!13 = !DISubroutineType(types: !14)
!14 = !{!6}
-!15 = !DIGlobalVariableExpression(var: !16)
+!15 = !DIGlobalVariableExpression(var: !16, expr: !DIExpression())
!16 = !DIGlobalVariable(name: "global_variable", scope: null, file: !3, line: 17, type: !2, isLocal: false, isDefinition: true) ; previously: invalid DW_TAG_base_type
-!17 = !DIGlobalVariableExpression(var: !18)
+!17 = !DIGlobalVariableExpression(var: !18, expr: !DIExpression())
!18 = !DIGlobalVariable(name: "global_namespace_variable", linkageName: "_ZN2ns25global_namespace_variableE", scope: !19, file: !3, line: 27, type: !6, isLocal: false, isDefinition: true)
!19 = !DINamespace(name: "ns", scope: null)
!20 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.3 (http://llvm.org/git/clang.git a09cd8103a6a719cb2628cdf0c91682250a17bd2) (http://llvm.org/git/llvm.git 47d03cec0afca0c01ae42b82916d1d731716cd20)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !11, retainedTypes: !11, globals: !21, imports: !11) ; previously: invalid DW_TAG_base_type
diff --git a/test/DebugInfo/X86/empty-array.ll b/test/DebugInfo/X86/empty-array.ll
index 703773b8705..4d9c34fe1a4 100644
--- a/test/DebugInfo/X86/empty-array.ll
+++ b/test/DebugInfo/X86/empty-array.ll
@@ -28,7 +28,7 @@ source_filename = "test/DebugInfo/X86/empty-array.ll"
!llvm.dbg.cu = !{!14}
!llvm.module.flags = !{!17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "t.cpp", directory: "/Volumes/Sandbox/llvm")
!3 = !DICompositeType(tag: DW_TAG_class_type, name: "A", file: !2, line: 1, align: 32, elements: !4)
diff --git a/test/DebugInfo/X86/enum-class.ll b/test/DebugInfo/X86/enum-class.ll
index 15699a293f5..299050104b9 100644
--- a/test/DebugInfo/X86/enum-class.ll
+++ b/test/DebugInfo/X86/enum-class.ll
@@ -10,20 +10,20 @@ source_filename = "test/DebugInfo/X86/enum-class.ll"
!llvm.dbg.cu = !{!18}
!llvm.module.flags = !{!22}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "foo.cpp", directory: "/Users/echristo/tmp")
!3 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "A", file: !2, line: 1, baseType: !4, size: 32, align: 32, elements: !5)
!4 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!5 = !{!6}
!6 = !DIEnumerator(name: "A1", value: 1)
-!7 = !DIGlobalVariableExpression(var: !8) ; [ DW_TAG_enumerator ]
+!7 = !DIGlobalVariableExpression(var: !8, expr: !DIExpression()) ; [ DW_TAG_enumerator ]
!8 = !DIGlobalVariable(name: "b", scope: null, file: !2, line: 5, type: !9, isLocal: false, isDefinition: true)
!9 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "B", file: !2, line: 2, baseType: !10, size: 64, align: 64, elements: !11)
!10 = !DIBasicType(name: "long unsigned int", size: 64, align: 64, encoding: DW_ATE_unsigned)
!11 = !{!12}
!12 = !DIEnumerator(name: "B1", value: 1) ; [ DW_TAG_enumerator ]
-!13 = !DIGlobalVariableExpression(var: !14)
+!13 = !DIGlobalVariableExpression(var: !14, expr: !DIExpression())
!14 = !DIGlobalVariable(name: "c", scope: null, file: !2, line: 6, type: !15, isLocal: false, isDefinition: true)
!15 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "C", file: !2, line: 3, size: 32, align: 32, elements: !16)
!16 = !{!17}
diff --git a/test/DebugInfo/X86/enum-fwd-decl.ll b/test/DebugInfo/X86/enum-fwd-decl.ll
index 4c56fd16777..86575aba95f 100644
--- a/test/DebugInfo/X86/enum-fwd-decl.ll
+++ b/test/DebugInfo/X86/enum-fwd-decl.ll
@@ -8,7 +8,7 @@ source_filename = "test/DebugInfo/X86/enum-fwd-decl.ll"
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "e", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "foo.cpp", directory: "/tmp")
!3 = !DICompositeType(tag: DW_TAG_enumeration_type, name: "E", file: !2, line: 1, size: 16, align: 16, flags: DIFlagFwdDecl)
diff --git a/test/DebugInfo/X86/fission-cu.ll b/test/DebugInfo/X86/fission-cu.ll
index 98f800a4f97..17bf87a6211 100644
--- a/test/DebugInfo/X86/fission-cu.ll
+++ b/test/DebugInfo/X86/fission-cu.ll
@@ -10,7 +10,7 @@ source_filename = "test/DebugInfo/X86/fission-cu.ll"
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "baz.c", directory: "/usr/local/google/home/echristo/tmp")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/X86/generate-odr-hash.ll b/test/DebugInfo/X86/generate-odr-hash.ll
index ce5f6d67bd0..2286c7c6619 100644
--- a/test/DebugInfo/X86/generate-odr-hash.ll
+++ b/test/DebugInfo/X86/generate-odr-hash.ll
@@ -219,13 +219,13 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!37, !38}
!llvm.ident = !{!39}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "b", scope: null, file: !2, line: 3, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "bar.cpp", directory: "/tmp/dbginfo")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "bar", file: !4, line: 1, size: 8, align: 8, elements: !5, identifier: "_ZTS3bar")
!4 = !DIFile(filename: "bar.h", directory: "/tmp/dbginfo")
!5 = !{}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "animal", linkageName: "_ZN7echidna8capybara8mongoose6animalE", scope: !8, file: !2, line: 18, type: !11, isLocal: false, isDefinition: true)
!8 = !DINamespace(name: "mongoose", scope: !9)
!9 = !DINamespace(name: "capybara", scope: !10)
@@ -235,7 +235,7 @@ attributes #1 = { nounwind readnone }
!13 = !DIDerivedType(tag: DW_TAG_member, name: "a", scope: !11, file: !2, line: 14, baseType: !14, size: 32, align: 32, flags: DIFlagPrivate)
!14 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!15 = !DIDerivedType(tag: DW_TAG_member, name: "b", scope: !11, file: !2, line: 15, baseType: !14, size: 32, align: 32, offset: 32, flags: DIFlagPrivate)
-!16 = !DIGlobalVariableExpression(var: !17)
+!16 = !DIGlobalVariableExpression(var: !17, expr: !DIExpression())
!17 = !DIGlobalVariable(name: "w", scope: null, file: !2, line: 29, type: !18, isLocal: true, isDefinition: true)
!18 = !DICompositeType(tag: DW_TAG_structure_type, name: "walrus", scope: !19, file: !2, line: 24, size: 8, align: 8, elements: !20)
!19 = !DINamespace(scope: null)
@@ -244,7 +244,7 @@ attributes #1 = { nounwind readnone }
!22 = !DISubroutineType(types: !23)
!23 = !{null, !24}
!24 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !18, size: 64, align: 64, flags: DIFlagArtificial | DIFlagObjectPointer)
-!25 = !DIGlobalVariableExpression(var: !26)
+!25 = !DIGlobalVariableExpression(var: !26, expr: !DIExpression())
!26 = !DIGlobalVariable(name: "wom", scope: null, file: !2, line: 38, type: !27, isLocal: false, isDefinition: true)
!27 = !DICompositeType(tag: DW_TAG_structure_type, name: "wombat", file: !2, line: 31, size: 64, align: 32, elements: !28, identifier: "_ZTS6wombat")
!28 = !{!29}
diff --git a/test/DebugInfo/X86/gnu-public-names-tu.ll b/test/DebugInfo/X86/gnu-public-names-tu.ll
index 9390d693ea0..9ea2484ccbd 100644
--- a/test/DebugInfo/X86/gnu-public-names-tu.ll
+++ b/test/DebugInfo/X86/gnu-public-names-tu.ll
@@ -37,7 +37,7 @@
!llvm.module.flags = !{!11, !12}
!llvm.ident = !{!13}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "b", scope: !2, file: !3, line: 8, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 5.0.0 (trunk 293904) (llvm/trunk 293908)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "type.cpp", directory: "/tmp/dbginfo")
diff --git a/test/DebugInfo/X86/gnu-public-names.ll b/test/DebugInfo/X86/gnu-public-names.ll
index df1d113538e..dc8be0cf38f 100644
--- a/test/DebugInfo/X86/gnu-public-names.ll
+++ b/test/DebugInfo/X86/gnu-public-names.ll
@@ -300,7 +300,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!48, !49}
!llvm.ident = !{!50}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "static_member_variable", linkageName: "_ZN1C22static_member_variableE", scope: !2, file: !3, line: 7, type: !9, isLocal: false, isDefinition: true, declaration: !8)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.7.0 (trunk 234897) (llvm/trunk 234911)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !5, globals: !21, imports: !44)
!3 = !DIFile(filename: "gnu-public-names.cpp", directory: "/tmp/dbginfo")
@@ -322,25 +322,25 @@ attributes #1 = { nounwind readnone }
!19 = !{!20}
!20 = !DIDerivedType(tag: DW_TAG_member, name: "A", scope: !17, file: !3, line: 30, baseType: !9, size: 32, align: 32)
!21 = !{!0, !22, !24, !26, !28, !34, !37, !40}
-!22 = !DIGlobalVariableExpression(var: !23)
+!22 = !DIGlobalVariableExpression(var: !23, expr: !DIExpression())
!23 = !DIGlobalVariable(name: "global_variable", scope: !2, file: !3, line: 17, type: !6, isLocal: false, isDefinition: true)
-!24 = !DIGlobalVariableExpression(var: !25)
+!24 = !DIGlobalVariableExpression(var: !25, expr: !DIExpression())
!25 = !DIGlobalVariable(name: "global_namespace_variable", linkageName: "_ZN2ns25global_namespace_variableE", scope: !18, file: !3, line: 27, type: !9, isLocal: false, isDefinition: true)
-!26 = !DIGlobalVariableExpression(var: !27)
+!26 = !DIGlobalVariableExpression(var: !27, expr: !DIExpression())
!27 = !DIGlobalVariable(name: "d", linkageName: "_ZN2ns1dE", scope: !18, file: !3, line: 31, type: !17, isLocal: false, isDefinition: true)
-!28 = !DIGlobalVariableExpression(var: !29)
+!28 = !DIGlobalVariableExpression(var: !29, expr: !DIExpression())
!29 = !DIGlobalVariable(name: "z", scope: !30, file: !3, line: 41, type: !9, isLocal: true, isDefinition: true)
!30 = distinct !DISubprogram(name: "f3", linkageName: "_Z2f3v", scope: !3, file: !3, line: 40, type: !31, isLocal: false, isDefinition: true, scopeLine: 40, flags: DIFlagPrototyped, isOptimized: false, unit: !2, variables: !4)
!31 = !DISubroutineType(types: !32)
!32 = !{!33}
!33 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !9, size: 64, align: 64)
-!34 = !DIGlobalVariableExpression(var: !35)
+!34 = !DIGlobalVariableExpression(var: !35, expr: !DIExpression())
!35 = !DIGlobalVariable(name: "i", linkageName: "_ZN12_GLOBAL__N_11iE", scope: !36, file: !3, line: 37, type: !9, isLocal: true, isDefinition: true)
!36 = !DINamespace(scope: null)
-!37 = !DIGlobalVariableExpression(var: !38)
+!37 = !DIGlobalVariableExpression(var: !38, expr: !DIExpression())
!38 = !DIGlobalVariable(name: "b", linkageName: "_ZN12_GLOBAL__N_15inner1bE", scope: !39, file: !3, line: 47, type: !9, isLocal: true, isDefinition: true)
!39 = !DINamespace(name: "inner", scope: !36)
-!40 = !DIGlobalVariableExpression(var: !41)
+!40 = !DIGlobalVariableExpression(var: !41, expr: !DIExpression())
!41 = !DIGlobalVariable(name: "c", linkageName: "_ZN5outer12_GLOBAL__N_11cE", scope: !42, file: !3, line: 53, type: !9, isLocal: true, isDefinition: true)
!42 = !DINamespace(scope: !43)
!43 = !DINamespace(name: "outer", scope: null)
diff --git a/test/DebugInfo/X86/inline-member-function.ll b/test/DebugInfo/X86/inline-member-function.ll
index f1b85702863..cda3803f396 100644
--- a/test/DebugInfo/X86/inline-member-function.ll
+++ b/test/DebugInfo/X86/inline-member-function.ll
@@ -68,7 +68,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!14, !15}
!llvm.ident = !{!16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "i", scope: null, file: !2, line: 5, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "inline.cpp", directory: "/tmp/dbginfo")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/X86/inline-namespace.ll b/test/DebugInfo/X86/inline-namespace.ll
index 4cfd8395062..a1012a30e30 100644
--- a/test/DebugInfo/X86/inline-namespace.ll
+++ b/test/DebugInfo/X86/inline-namespace.ll
@@ -26,7 +26,7 @@ target triple = "x86_64-apple-macosx10.12.0"
!llvm.module.flags = !{!9, !10, !11}
!llvm.ident = !{!12}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "i", linkageName: "_ZN6normal7inlined1iE", scope: !2, file: !3, line: 1, type: !5, isLocal: false, isDefinition: true)
!2 = !DINamespace(name: "inlined", scope: !4, exportSymbols: true)
!3 = !DIFile(filename: "namespace.cpp", directory: "/")
diff --git a/test/DebugInfo/X86/inlined-indirect-value.ll b/test/DebugInfo/X86/inlined-indirect-value.ll
index 6a7d48b3f85..435172cf24d 100644
--- a/test/DebugInfo/X86/inlined-indirect-value.ll
+++ b/test/DebugInfo/X86/inlined-indirect-value.ll
@@ -50,13 +50,13 @@ select.end: ; preds = %select.mid, %entry
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!10, !11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 1, type: !9, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5, imports: !4)
!3 = !DIFile(filename: "inline-break.c", directory: "/build/dir")
!4 = !{}
!5 = !{!0, !6}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "y", scope: !2, file: !3, line: 2, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!9 = !DIDerivedType(tag: DW_TAG_volatile_type, baseType: !8)
diff --git a/test/DebugInfo/X86/isel-cse-line.ll b/test/DebugInfo/X86/isel-cse-line.ll
index 4e0d4b924c3..11651f29121 100644
--- a/test/DebugInfo/X86/isel-cse-line.ll
+++ b/test/DebugInfo/X86/isel-cse-line.ll
@@ -68,7 +68,7 @@ attributes #0 = { nounwind readnone }
!llvm.module.flags = !{!13, !14}
!llvm.ident = !{!15}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "glb_start", scope: !2, file: !3, line: 4, type: !11, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.9.0 (trunk 268246)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !5, globals: !8)
!3 = !DIFile(filename: "/home/wpieb/test/D12094.cpp", directory: "/home/wpieb/build/llvm/trunk/llvm-RelWithDebInfo")
@@ -77,7 +77,7 @@ attributes #0 = { nounwind readnone }
!6 = !DIDerivedType(tag: DW_TAG_typedef, name: "fp_t", file: !3, line: 1, baseType: !7)
!7 = !DIBasicType(name: "double", size: 64, align: 64, encoding: DW_ATE_float)
!8 = !{!0, !9}
-!9 = distinct !DIGlobalVariableExpression(var: !10)
+!9 = distinct !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = !DIGlobalVariable(name: "glb_end", scope: !2, file: !3, line: 5, type: !11, isLocal: false, isDefinition: true)
!11 = !DIDerivedType(tag: DW_TAG_typedef, name: "int_t", file: !3, line: 2, baseType: !12)
!12 = !DIBasicType(name: "long unsigned int", size: 64, align: 64, encoding: DW_ATE_unsigned)
diff --git a/test/DebugInfo/X86/linkage-name.ll b/test/DebugInfo/X86/linkage-name.ll
index 41aefa90b1b..771ab740de5 100644
--- a/test/DebugInfo/X86/linkage-name.ll
+++ b/test/DebugInfo/X86/linkage-name.ll
@@ -35,7 +35,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!10}
!llvm.module.flags = !{!13}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 9, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "foo.cpp", directory: "/Users/echristo")
!3 = !DICompositeType(tag: DW_TAG_class_type, name: "A", file: !2, line: 1, size: 8, align: 8, elements: !4)
diff --git a/test/DebugInfo/X86/live-debug-values.ll b/test/DebugInfo/X86/live-debug-values.ll
index 1e327336dca..1e5b01151a4 100644
--- a/test/DebugInfo/X86/live-debug-values.ll
+++ b/test/DebugInfo/X86/live-debug-values.ll
@@ -107,7 +107,7 @@ attributes #2 = { nounwind readnone }
!llvm.module.flags = !{!7, !8}
!llvm.ident = !{!9}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "m", scope: !2, file: !3, line: 2, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.8.0 (trunk 253049) ", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "LiveDebugValues.c", directory: "/home/vt/julia/test/tvvikram")
diff --git a/test/DebugInfo/X86/memberfnptr.ll b/test/DebugInfo/X86/memberfnptr.ll
index 0065b1d2ae9..e6123228013 100644
--- a/test/DebugInfo/X86/memberfnptr.ll
+++ b/test/DebugInfo/X86/memberfnptr.ll
@@ -25,7 +25,7 @@ declare void @_ZN1A3fooEv(%struct.A*)
!llvm.module.flags = !{!14, !15, !16}
!llvm.ident = !{!17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "p", scope: null, file: !2, line: 5, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "memberfnptr.cpp", directory: "")
!3 = !DIDerivedType(tag: DW_TAG_ptr_to_member_type, baseType: !4, size: 64, extraData: !7)
diff --git a/test/DebugInfo/X86/misched-dbg-value.ll b/test/DebugInfo/X86/misched-dbg-value.ll
index bb07454e759..227409acc33 100644
--- a/test/DebugInfo/X86/misched-dbg-value.ll
+++ b/test/DebugInfo/X86/misched-dbg-value.ll
@@ -107,35 +107,35 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!56}
!llvm.module.flags = !{!60}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "Version", scope: null, file: !2, line: 111, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "dry.c", directory: "/Users/manmanren/test-Nov/rdar_13183203/test2")
!3 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 32, align: 8, elements: !5)
!4 = !DIBasicType(name: "char", size: 8, align: 8, encoding: DW_ATE_signed_char)
!5 = !{!6}
!6 = !DISubrange(count: 4) ; [ DW_TAG_enumerator ] [Ident1 :: 0]
-!7 = !DIGlobalVariableExpression(var: !8) ; [ DW_TAG_enumerator ] [Ident2 :: 10000]
+!7 = !DIGlobalVariableExpression(var: !8, expr: !DIExpression()) ; [ DW_TAG_enumerator ] [Ident2 :: 10000]
!8 = !DIGlobalVariable(name: "IntGlob", scope: null, file: !2, line: 171, type: !9, isLocal: false, isDefinition: true) ; [ DW_TAG_enumerator ] [Ident3 :: 10001]
!9 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed) ; [ DW_TAG_enumerator ] [Ident4 :: 10002]
-!10 = !DIGlobalVariableExpression(var: !11) ; [ DW_TAG_enumerator ] [Ident5 :: 10003]
+!10 = !DIGlobalVariableExpression(var: !11, expr: !DIExpression()) ; [ DW_TAG_enumerator ] [Ident5 :: 10003]
!11 = !DIGlobalVariable(name: "BoolGlob", scope: null, file: !2, line: 172, type: !12, isLocal: false, isDefinition: true)
!12 = !DIDerivedType(tag: DW_TAG_typedef, name: "boolean", file: !2, line: 149, baseType: !9)
-!13 = !DIGlobalVariableExpression(var: !14)
+!13 = !DIGlobalVariableExpression(var: !14, expr: !DIExpression())
!14 = !DIGlobalVariable(name: "Char1Glob", scope: null, file: !2, line: 173, type: !4, isLocal: false, isDefinition: true)
-!15 = !DIGlobalVariableExpression(var: !16)
+!15 = !DIGlobalVariableExpression(var: !16, expr: !DIExpression())
!16 = !DIGlobalVariable(name: "Char2Glob", scope: null, file: !2, line: 174, type: !4, isLocal: false, isDefinition: true)
-!17 = !DIGlobalVariableExpression(var: !18)
+!17 = !DIGlobalVariableExpression(var: !18, expr: !DIExpression())
!18 = !DIGlobalVariable(name: "Array1Glob", scope: null, file: !2, line: 175, type: !19, isLocal: false, isDefinition: true)
!19 = !DIDerivedType(tag: DW_TAG_typedef, name: "Array1Dim", file: !2, line: 135, baseType: !20)
!20 = !DICompositeType(tag: DW_TAG_array_type, baseType: !9, size: 1632, align: 32, elements: !21)
!21 = !{!22}
!22 = !DISubrange(count: 51)
-!23 = !DIGlobalVariableExpression(var: !24)
+!23 = !DIGlobalVariableExpression(var: !24, expr: !DIExpression())
!24 = !DIGlobalVariable(name: "Array2Glob", scope: null, file: !2, line: 176, type: !25, isLocal: false, isDefinition: true)
!25 = !DIDerivedType(tag: DW_TAG_typedef, name: "Array2Dim", file: !2, line: 136, baseType: !26)
!26 = !DICompositeType(tag: DW_TAG_array_type, baseType: !9, size: 83232, align: 32, elements: !27)
!27 = !{!22, !22}
-!28 = !DIGlobalVariableExpression(var: !29)
+!28 = !DIGlobalVariableExpression(var: !29, expr: !DIExpression())
!29 = !DIGlobalVariable(name: "PtrGlb", scope: null, file: !2, line: 177, type: !30, isLocal: false, isDefinition: true)
!30 = !DIDerivedType(tag: DW_TAG_typedef, name: "RecordPtr", file: !2, line: 148, baseType: !31)
!31 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !32, size: 64, align: 64)
@@ -161,7 +161,7 @@ attributes #1 = { nounwind readnone }
!51 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 248, align: 8, elements: !52)
!52 = !{!53}
!53 = !DISubrange(count: 31)
-!54 = !DIGlobalVariableExpression(var: !55)
+!54 = !DIGlobalVariableExpression(var: !55, expr: !DIExpression())
!55 = !DIGlobalVariable(name: "PtrGlbNext", scope: null, file: !2, line: 178, type: !30, isLocal: false, isDefinition: true)
!56 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2, producer: "clang version 3.3 (trunk 175015)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !57, retainedTypes: !58, globals: !59, imports: !58)
!57 = !{!39}
diff --git a/test/DebugInfo/X86/multiple-aranges.ll b/test/DebugInfo/X86/multiple-aranges.ll
index 6fe2e30deae..744fb2c1899 100644
--- a/test/DebugInfo/X86/multiple-aranges.ll
+++ b/test/DebugInfo/X86/multiple-aranges.ll
@@ -41,11 +41,11 @@ target triple = "x86_64-unknown-linux-gnu"
!llvm.dbg.cu = !{!7, !10}
!llvm.module.flags = !{!12, !13}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "kittens", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "test1.c", directory: "/home/kayamon")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "rainbows", scope: null, file: !6, line: 1, type: !3, isLocal: false, isDefinition: true)
!6 = !DIFile(filename: "test2.c", directory: "/home/kayamon")
!7 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2, producer: "clang version 3.4 ", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !8, retainedTypes: !8, globals: !9, imports: !8)
diff --git a/test/DebugInfo/X86/nondefault-subrange-array.ll b/test/DebugInfo/X86/nondefault-subrange-array.ll
index cbe23f392d9..b4fff0afbca 100644
--- a/test/DebugInfo/X86/nondefault-subrange-array.ll
+++ b/test/DebugInfo/X86/nondefault-subrange-array.ll
@@ -31,7 +31,7 @@ source_filename = "test/DebugInfo/X86/nondefault-subrange-array.ll"
!llvm.dbg.cu = !{!14}
!llvm.module.flags = !{!17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "t.cpp", directory: "/Volumes/Sandbox/llvm")
!3 = !DICompositeType(tag: DW_TAG_class_type, name: "A", file: !2, line: 1, align: 32, elements: !4)
diff --git a/test/DebugInfo/X86/objc-fwd-decl.ll b/test/DebugInfo/X86/objc-fwd-decl.ll
index 0f63fe2b541..38acc129e2f 100644
--- a/test/DebugInfo/X86/objc-fwd-decl.ll
+++ b/test/DebugInfo/X86/objc-fwd-decl.ll
@@ -14,7 +14,7 @@ source_filename = "test/DebugInfo/X86/objc-fwd-decl.ll"
!llvm.dbg.cu = !{!5}
!llvm.module.flags = !{!8, !9, !10, !11, !12, !13}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 3, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "foo.m", directory: "/Users/echristo")
!3 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !4, size: 64, align: 64)
diff --git a/test/DebugInfo/X86/pointer-type-size.ll b/test/DebugInfo/X86/pointer-type-size.ll
index c798c6cc397..085966d5955 100644
--- a/test/DebugInfo/X86/pointer-type-size.ll
+++ b/test/DebugInfo/X86/pointer-type-size.ll
@@ -13,7 +13,7 @@ source_filename = "test/DebugInfo/X86/pointer-type-size.ll"
!llvm.dbg.cu = !{!9}
!llvm.module.flags = !{!12}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "crass", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "foo.c", directory: "/Users/echristo/tmp")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "crass", file: !2, line: 1, size: 64, align: 64, elements: !4)
diff --git a/test/DebugInfo/X86/ref_addr_relocation.ll b/test/DebugInfo/X86/ref_addr_relocation.ll
index 373ccfd2dea..f478cd3428b 100644
--- a/test/DebugInfo/X86/ref_addr_relocation.ll
+++ b/test/DebugInfo/X86/ref_addr_relocation.ll
@@ -74,13 +74,13 @@ source_filename = "test/DebugInfo/X86/ref_addr_relocation.ll"
!llvm.dbg.cu = !{!9, !12}
!llvm.module.flags = !{!14, !15}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "f", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "tu1.cpp", directory: "/Users/manmanren/test-Nov/type_unique_air/ref_addr")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "foo", file: !4, line: 1, size: 8, align: 8, elements: !5, identifier: "_ZTS3foo")
!4 = !DIFile(filename: "./hdr.h", directory: "/Users/manmanren/test-Nov/type_unique_air/ref_addr")
!5 = !{}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "g", scope: null, file: !8, line: 2, type: !3, isLocal: false, isDefinition: true)
!8 = !DIFile(filename: "tu2.cpp", directory: "/Users/manmanren/test-Nov/type_unique_air/ref_addr")
!9 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !2, producer: "clang version 3.4 (trunk 191799)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !5, retainedTypes: !10, globals: !11, imports: !5)
diff --git a/test/DebugInfo/X86/split-global.ll b/test/DebugInfo/X86/split-global.ll
index 6e1fc05a84f..b2e72645b3b 100644
--- a/test/DebugInfo/X86/split-global.ll
+++ b/test/DebugInfo/X86/split-global.ll
@@ -56,4 +56,4 @@ target triple = "x86_64-apple-macosx10.12.0"
!18 = !DIGlobalVariableExpression(var: !19, expr: !DIExpression(DW_OP_constu, 2,
DW_OP_stack_value, DW_OP_LLVM_fragment, 32, 32))
!19 = distinct !DIGlobalVariable(name: "full_const", scope: !1, file: !2, line: 1, type: !5, isLocal: false, isDefinition: true)
-!20 = !DIGlobalVariableExpression(var: !0)
+!20 = !DIGlobalVariableExpression(var: !0, expr: !DIExpression())
diff --git a/test/DebugInfo/X86/static_member_array.ll b/test/DebugInfo/X86/static_member_array.ll
index 0e630970dac..a89408778ef 100644
--- a/test/DebugInfo/X86/static_member_array.ll
+++ b/test/DebugInfo/X86/static_member_array.ll
@@ -48,13 +48,13 @@ target triple = "x86_64-apple-macosx10.12.0"
!llvm.module.flags = !{!19, !20, !21}
!llvm.ident = !{!22}
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "fully_specified", linkageName: "_ZN1A15fully_specifiedE", scope: !2, file: !3, line: 7, type: !9, isLocal: false, isDefinition: true, declaration: !15)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 4.0.0 (trunk 286129) (llvm/trunk 286128)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "static_member_array.cpp", directory: "/Volumes/Data/radar/28706946")
!4 = !{}
!5 = !{!0, !6}
-!6 = distinct !DIGlobalVariableExpression(var: !7)
+!6 = distinct !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "smem", linkageName: "_ZN1A4smemE", scope: !2, file: !3, line: 8, type: !8, isLocal: false, isDefinition: true, declaration: !12)
!8 = !DICompositeType(tag: DW_TAG_array_type, baseType: !9, size: 128, elements: !10)
!9 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/X86/stringpool.ll b/test/DebugInfo/X86/stringpool.ll
index e4474275a41..95c514997de 100644
--- a/test/DebugInfo/X86/stringpool.ll
+++ b/test/DebugInfo/X86/stringpool.ll
@@ -8,7 +8,7 @@ source_filename = "test/DebugInfo/X86/stringpool.ll"
!llvm.dbg.cu = !{!4}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "yyyy", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "z.c", directory: "/home/nicholas")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/DebugInfo/X86/struct-loc.ll b/test/DebugInfo/X86/struct-loc.ll
index f6b32269ec2..c49336bd506 100644
--- a/test/DebugInfo/X86/struct-loc.ll
+++ b/test/DebugInfo/X86/struct-loc.ll
@@ -16,7 +16,7 @@ source_filename = "test/DebugInfo/X86/struct-loc.ll"
!llvm.dbg.cu = !{!7}
!llvm.module.flags = !{!10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "f", scope: null, file: !2, line: 5, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "struct_bug.c", directory: "/Users/echristo/tmp")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "foo", file: !2, line: 1, size: 32, align: 32, elements: !4)
diff --git a/test/DebugInfo/X86/template.ll b/test/DebugInfo/X86/template.ll
index b99bc716b90..97b94832d15 100644
--- a/test/DebugInfo/X86/template.ll
+++ b/test/DebugInfo/X86/template.ll
@@ -91,11 +91,11 @@ attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointe
!llvm.module.flags = !{!14, !15}
!llvm.ident = !{!16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "glbl", scope: null, file: !2, line: 3, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "template.cpp", directory: "/tmp/dbginfo")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "n", scope: null, file: !2, line: 4, type: !6, isLocal: false, isDefinition: true)
!6 = !DICompositeType(tag: DW_TAG_structure_type, name: "nested", scope: !7, file: !2, line: 2, size: 8, align: 8, elements: !8, identifier: "_ZTSN6y_implIiE6nestedE")
!7 = !DICompositeType(tag: DW_TAG_structure_type, name: "y_impl<int>", file: !2, line: 2, size: 8, align: 8, elements: !8, templateParams: !9, identifier: "_ZTS6y_implIiE")
diff --git a/test/DebugInfo/X86/tls.ll b/test/DebugInfo/X86/tls.ll
index 78b45e568a7..cf2e7d895a2 100644
--- a/test/DebugInfo/X86/tls.ll
+++ b/test/DebugInfo/X86/tls.ll
@@ -111,11 +111,11 @@ attributes #0 = { nounwind uwtable "less-precise-fpmad"="false" "no-frame-pointe
!llvm.module.flags = !{!9, !10}
!llvm.ident = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "tls", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "tls.cpp", directory: "/tmp/dbginfo")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "glbl", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!6 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !2, producer: "clang version 3.5 ", isOptimized: false, runtimeVersion: 0, splitDebugFilename: "-.dwo", emissionKind: FullDebug, enums: !7, retainedTypes: !7, globals: !8, imports: !7)
!7 = !{}
diff --git a/test/DebugInfo/X86/type_units_with_addresses.ll b/test/DebugInfo/X86/type_units_with_addresses.ll
index e93ed699ac5..6bd5c9c5979 100644
--- a/test/DebugInfo/X86/type_units_with_addresses.ll
+++ b/test/DebugInfo/X86/type_units_with_addresses.ll
@@ -113,24 +113,24 @@ source_filename = "test/DebugInfo/X86/type_units_with_addresses.ll"
!llvm.module.flags = !{!38, !39}
!llvm.ident = !{!40}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "i", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "tu.cpp", directory: "/tmp/dbginfo")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 6, type: !6, isLocal: false, isDefinition: true)
!6 = !DICompositeType(tag: DW_TAG_structure_type, name: "S1<&i>", file: !2, line: 4, size: 8, align: 8, elements: !7, templateParams: !8, identifier: "_ZTS2S1IXadL_Z1iEEE")
!7 = !{}
!8 = !{!9}
!9 = !DITemplateValueParameter(name: "I", type: !10, value: i32* @i)
!10 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !3, size: 64, align: 64)
-!11 = !DIGlobalVariableExpression(var: !12)
+!11 = !DIGlobalVariableExpression(var: !12, expr: !DIExpression())
!12 = !DIGlobalVariable(name: "s2", scope: null, file: !2, line: 15, type: !13, isLocal: false, isDefinition: true)
!13 = !DICompositeType(tag: DW_TAG_structure_type, name: "S2", file: !2, line: 11, size: 8, align: 8, elements: !14, identifier: "_ZTS2S2")
!14 = !{!15}
!15 = !DIDerivedType(tag: DW_TAG_member, name: "s2_1", scope: !13, file: !2, line: 12, baseType: !16, size: 8, align: 8)
!16 = !DICompositeType(tag: DW_TAG_structure_type, name: "S2_1<&i>", file: !2, line: 9, size: 8, align: 8, elements: !7, templateParams: !8, identifier: "_ZTS4S2_1IXadL_Z1iEEE")
-!17 = !DIGlobalVariableExpression(var: !18)
+!17 = !DIGlobalVariableExpression(var: !18, expr: !DIExpression())
!18 = !DIGlobalVariable(name: "s3", scope: null, file: !2, line: 27, type: !19, isLocal: false, isDefinition: true)
!19 = !DICompositeType(tag: DW_TAG_structure_type, name: "S3", file: !2, line: 22, size: 16, align: 8, elements: !20, identifier: "_ZTS2S3")
!20 = !{!21, !23}
@@ -138,7 +138,7 @@ source_filename = "test/DebugInfo/X86/type_units_with_addresses.ll"
!22 = !DICompositeType(tag: DW_TAG_structure_type, name: "S3_1<&i>", file: !2, line: 18, size: 8, align: 8, elements: !7, templateParams: !8, identifier: "_ZTS4S3_1IXadL_Z1iEEE")
!23 = !DIDerivedType(tag: DW_TAG_member, name: "s3_2", scope: !19, file: !2, line: 24, baseType: !24, size: 8, align: 8, offset: 8)
!24 = !DICompositeType(tag: DW_TAG_structure_type, name: "S3_2", file: !2, line: 20, size: 8, align: 8, elements: !7, identifier: "_ZTS4S3_2")
-!25 = !DIGlobalVariableExpression(var: !26)
+!25 = !DIGlobalVariableExpression(var: !26, expr: !DIExpression())
!26 = !DIGlobalVariable(name: "s4", scope: null, file: !2, line: 39, type: !27, isLocal: false, isDefinition: true)
!27 = !DICompositeType(tag: DW_TAG_structure_type, name: "S4", file: !2, line: 34, size: 16, align: 8, elements: !28, identifier: "_ZTS2S4")
!28 = !{!29, !31}
diff --git a/test/DebugInfo/X86/union-template.ll b/test/DebugInfo/X86/union-template.ll
index 83bd7b8c06a..e30ef5f3fd5 100644
--- a/test/DebugInfo/X86/union-template.ll
+++ b/test/DebugInfo/X86/union-template.ll
@@ -33,7 +33,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!15}
!llvm.module.flags = !{!18}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "f", linkageName: "_ZN7PR156371fE", scope: !2, file: !3, line: 6, type: !4, isLocal: false, isDefinition: true)
!2 = !DINamespace(name: "PR15637", scope: null)
!3 = !DIFile(filename: "foo.cc", directory: "/usr/local/google/home/echristo/tmp")
diff --git a/test/DebugInfo/X86/vector.ll b/test/DebugInfo/X86/vector.ll
index 48a81cb2751..76c3a2beabb 100644
--- a/test/DebugInfo/X86/vector.ll
+++ b/test/DebugInfo/X86/vector.ll
@@ -14,7 +14,7 @@ source_filename = "test/DebugInfo/X86/vector.ll"
!llvm.dbg.cu = !{!8}
!llvm.module.flags = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 3, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "foo.c", directory: "/Users/echristo")
!3 = !DIDerivedType(tag: DW_TAG_typedef, name: "v4si", file: !2, line: 1, baseType: !4)
diff --git a/test/DebugInfo/pr34186.ll b/test/DebugInfo/pr34186.ll
index 594cf96b04b..2d9c4f27877 100644
--- a/test/DebugInfo/pr34186.ll
+++ b/test/DebugInfo/pr34186.ll
@@ -9,6 +9,6 @@
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "", emissionKind: FullDebug, globals: !5)
!3 = !DIFile(filename: "patatino.c", directory: "/")
!5 = !{!6}
-!6 = !DIGlobalVariableExpression(var: !1)
+!6 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!63 = !{i32 2, !"Dwarf Version", i32 4}
!64 = !{i32 2, !"Debug Info Version", i32 3}
diff --git a/test/Instrumentation/AddressSanitizer/debug-info-global-var.ll b/test/Instrumentation/AddressSanitizer/debug-info-global-var.ll
index 0e20da63cd1..959693e086f 100644
--- a/test/Instrumentation/AddressSanitizer/debug-info-global-var.ll
+++ b/test/Instrumentation/AddressSanitizer/debug-info-global-var.ll
@@ -10,10 +10,10 @@ target triple = "x86_64-apple-macosx10.12.0"
!llvm.module.flags = !{!11, !12, !13}
!llvm.ident = !{!14}
; Should not have an expression:
-; CHECK: ![[GV]] = !DIGlobalVariableExpression(var: ![[GVAR:.*]])
+; CHECK: ![[GV]] = !DIGlobalVariableExpression(var: ![[GVAR:.*]], expr: !DIExpression())
; CHECK: ![[GVAR]] = !DIGlobalVariable(name: "version"
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "version", scope: !2, file: !3, line: 2, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 4.0.0 (trunk 281923) (llvm/trunk 281916)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "version.c", directory: "/Volumes/Fusion/Data/radar/24899262")
diff --git a/test/LTO/X86/Inputs/type-mapping-src.ll b/test/LTO/X86/Inputs/type-mapping-src.ll
index fc47cabaa16..94f108d6bb8 100644
--- a/test/LTO/X86/Inputs/type-mapping-src.ll
+++ b/test/LTO/X86/Inputs/type-mapping-src.ll
@@ -10,7 +10,7 @@ target triple = "x86_64-pc-windows-msvc18.0.0"
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!8}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "bar", linkageName: "bar", scope: !2, file: !3, line: 2, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "b", directory: "/")
diff --git a/test/LTO/X86/type-mapping-bug.ll b/test/LTO/X86/type-mapping-bug.ll
index 84c6939fb15..095e7cf1f88 100644
--- a/test/LTO/X86/type-mapping-bug.ll
+++ b/test/LTO/X86/type-mapping-bug.ll
@@ -30,7 +30,7 @@ target triple = "x86_64-pc-windows-msvc18.0.0"
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!14}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "foo", linkageName: "foo", scope: !2, file: !3, line: 5, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "a", directory: "/")
diff --git a/test/Linker/2011-08-04-Metadata.ll b/test/Linker/2011-08-04-Metadata.ll
index debdbf02309..d2dc61b9bfd 100644
--- a/test/Linker/2011-08-04-Metadata.ll
+++ b/test/Linker/2011-08-04-Metadata.ll
@@ -5,10 +5,10 @@
; CHECK: @x = internal global i32 0, align 4, !dbg [[DI1:![0-9]+]]
; CHECK: @x.1 = internal global i32 0, align 4, !dbg [[DI2:![0-9]+]]
-; CHECK: [[DI1]] = !DIGlobalVariableExpression(var: [[V1:.*]])
+; CHECK: [[DI1]] = !DIGlobalVariableExpression(var: [[V1:.*]], expr: !DIExpression())
; CHECK: [[V1]] = !DIGlobalVariable(name: "x",
; CHECK-NOT: linkageName:
-; CHECK: [[DI2]] = !DIGlobalVariableExpression(var: [[V2:.*]])
+; CHECK: [[DI2]] = !DIGlobalVariableExpression(var: [[V2:.*]], expr: !DIExpression())
; CHECK: [[V2]] = !DIGlobalVariable(name: "x",
; CHECK-NOT: linkageName:
source_filename = "test/Linker/2011-08-04-Metadata.ll"
@@ -29,7 +29,7 @@ attributes #0 = { nounwind ssp uwtable }
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 2, type: !6, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.0 ()", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5)
!3 = !DIFile(filename: "/tmp/one.c", directory: "/Volumes/Lalgate/Slate/D")
diff --git a/test/Linker/2011-08-04-Metadata2.ll b/test/Linker/2011-08-04-Metadata2.ll
index db1fc2f7a9e..21b0eba4be7 100644
--- a/test/Linker/2011-08-04-Metadata2.ll
+++ b/test/Linker/2011-08-04-Metadata2.ll
@@ -20,7 +20,7 @@ attributes #0 = { nounwind ssp uwtable }
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 1, type: !6, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.0 ()", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !4, globals: !5)
!3 = !DIFile(filename: "/tmp/two.c", directory: "/Volumes/Lalgate/Slate/D")
diff --git a/test/Linker/debug-info-global-var.ll b/test/Linker/debug-info-global-var.ll
index 196e57494d3..1f5b1683c14 100644
--- a/test/Linker/debug-info-global-var.ll
+++ b/test/Linker/debug-info-global-var.ll
@@ -10,9 +10,9 @@ target triple = "x86_64-apple-macosx10.12.0"
!llvm.module.flags = !{!6, !7, !8}
!llvm.ident = !{!9}
-; CHECK: ![[G]] = !DIGlobalVariableExpression(var: ![[GVAR:.*]])
+; CHECK: ![[G]] = !DIGlobalVariableExpression(var: ![[GVAR:.*]], expr: !DIExpression())
; CHECK: ![[GVAR]] = distinct !DIGlobalVariable(name: "g"
-!0 = !DIGlobalVariableExpression(var: !10)
+!0 = !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!1 = distinct !DICompileUnit(language: DW_LANG_C99, file: !2, producer: "clang", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !3, globals: !4)
!2 = !DIFile(filename: "debug-info-global-var.c", directory: "/")
!3 = !{}
diff --git a/test/Linker/odr.ll b/test/Linker/odr.ll
index be1f04765c0..2d919e44186 100644
--- a/test/Linker/odr.ll
+++ b/test/Linker/odr.ll
@@ -10,7 +10,7 @@ source_filename = "test/Linker/odr.ll"
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!8}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "c", scope: null, isLocal: false, isDefinition: true, type: !9)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, isOptimized: false, runtimeVersion: 0, emissionKind: NoDebug, retainedTypes: !4, globals: !7)
!3 = !DIFile(filename: "a", directory: "")
diff --git a/test/Linker/only-needed-debug-metadata.ll b/test/Linker/only-needed-debug-metadata.ll
index 29c20a9e30b..00f90b1ecdf 100644
--- a/test/Linker/only-needed-debug-metadata.ll
+++ b/test/Linker/only-needed-debug-metadata.ll
@@ -29,13 +29,13 @@ define i32 @unused() !dbg !18 {
!llvm.module.flags = !{!9, !10}
!llvm.ident = !{!11}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "X", scope: !2, file: !3, line: 1, type: !8, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C99, file: !3, producer: "clang version 3.8.0 (trunk 251407) (llvm/trunk 251401)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "linkused2.c", directory: "/usr/local/google/home/tejohnson/llvm/tmp")
!4 = !{}
!5 = !{!0, !6}
-!6 = !DIGlobalVariableExpression(var: !7)
+!6 = !DIGlobalVariableExpression(var: !7, expr: !DIExpression())
!7 = !DIGlobalVariable(name: "U", scope: !2, file: !3, line: 2, type: !8, isLocal: false, isDefinition: true)
!8 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!9 = !{i32 2, !"Dwarf Version", i32 4}
diff --git a/test/ThinLTO/X86/Inputs/crash_debuginfo.ll b/test/ThinLTO/X86/Inputs/crash_debuginfo.ll
index 8a145553fe7..ee74c37a09b 100644
--- a/test/ThinLTO/X86/Inputs/crash_debuginfo.ll
+++ b/test/ThinLTO/X86/Inputs/crash_debuginfo.ll
@@ -15,7 +15,7 @@ define void @bar(i32 %arg) {
!1 = !DIFile(filename: "2.cpp", directory: "some_dir")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "a_global", linkageName: "a_global", scope: null, line: 52, type: !6, isLocal: true, isDefinition: true)
!6 = !DISubroutineType(types: !2)
!7 = !{i32 2, !"Debug Info Version", i32 3}
diff --git a/test/ThinLTO/X86/crash_debuginfo.ll b/test/ThinLTO/X86/crash_debuginfo.ll
index 8638c24d082..2a91e2de133 100644
--- a/test/ThinLTO/X86/crash_debuginfo.ll
+++ b/test/ThinLTO/X86/crash_debuginfo.ll
@@ -27,7 +27,7 @@ declare void @bar(i32)
!0 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !1, producer: "Apple LLVM version 8.0.0 (clang-800.0.24.1)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, globals: !2)
!1 = !DIFile(filename: "1.cpp", directory: "/another_dir")
!2 = !{!3}
-!3 = !DIGlobalVariableExpression(var: !4)
+!3 = !DIGlobalVariableExpression(var: !4, expr: !DIExpression())
!4 = !DIGlobalVariable(name: "_", linkageName: "some_global", scope: null, file: !1, line: 20, type: !5, isLocal: true, isDefinition: true)
!5 = distinct !DICompositeType(tag: DW_TAG_class_type, name: "slice_nil", file: !1, line: 13, size: 64, align: 64, elements: !6, identifier: "_ZTSN5boost6python3api9slice_nilE")
!6 = !{}
diff --git a/test/ThinLTO/X86/debuginfo-cu-import.ll b/test/ThinLTO/X86/debuginfo-cu-import.ll
index e0b066c736e..2f034cffed0 100644
--- a/test/ThinLTO/X86/debuginfo-cu-import.ll
+++ b/test/ThinLTO/X86/debuginfo-cu-import.ll
@@ -48,7 +48,7 @@ entry:
!6 = !{!7}
!7 = !DICompositeType(tag: DW_TAG_structure_type, name: "Base", file: !1, line: 1, size: 32, align: 32, elements: !5, identifier: "_ZTS4Base")
!8 = !{!9}
-!9 = !DIGlobalVariableExpression(var: !10)
+!9 = !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = !DIGlobalVariable(name: "version", scope: !4, file: !1, line: 2, type: !7, isLocal: false, isDefinition: true)
!11 = !{!12, !16}
!12 = !DIImportedEntity(tag: DW_TAG_imported_declaration, scope: !4, entity: !13, file: !1, line: 8)
diff --git a/test/Transforms/ConstantMerge/merge-dbg.ll b/test/Transforms/ConstantMerge/merge-dbg.ll
index bc33248514e..6ea680cfb34 100644
--- a/test/Transforms/ConstantMerge/merge-dbg.ll
+++ b/test/Transforms/ConstantMerge/merge-dbg.ll
@@ -13,12 +13,12 @@ define void @test1(i32** %P1, i32** %P2) {
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!7, !8}
-; CHECK: [[A]] = !DIGlobalVariableExpression(var: [[VA:![0-9]+]])
+; CHECK: [[A]] = !DIGlobalVariableExpression(var: [[VA:![0-9]+]], expr: !DIExpression())
; CHECK: [[VA]] = distinct !DIGlobalVariable(name: "y"
-; CHECK: [[B]] = !DIGlobalVariableExpression(var: [[VB:![0-9]+]])
+; CHECK: [[B]] = !DIGlobalVariableExpression(var: [[VB:![0-9]+]], expr: !DIExpression())
; CHECK: [[VB]] = distinct !DIGlobalVariable(name: "x"
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "x", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 5.0.0 (trunk 297227) (llvm/trunk 297234)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "1.cc", directory: "/build")
@@ -28,5 +28,5 @@ define void @test1(i32** %P1, i32** %P2) {
!7 = !{i32 2, !"Dwarf Version", i32 4}
!8 = !{i32 2, !"Debug Info Version", i32 3}
-!9 = !DIGlobalVariableExpression(var: !10)
+!9 = !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = distinct !DIGlobalVariable(name: "y", scope: !2, file: !3, line: 1, type: !6, isLocal: false, isDefinition: true)
diff --git a/test/Transforms/GCOVProfiling/return-block.ll b/test/Transforms/GCOVProfiling/return-block.ll
index 93d441f2a55..fb25792ba42 100644
--- a/test/Transforms/GCOVProfiling/return-block.ll
+++ b/test/Transforms/GCOVProfiling/return-block.ll
@@ -62,7 +62,7 @@ attributes #2 = { nounwind }
!6 = !DISubroutineType(types: !7)
!7 = !{null}
!8 = !{!9}
-!9 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "A", line: 3, isLocal: false, isDefinition: true, scope: null, file: !5, type: !10))
+!9 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "A", line: 3, isLocal: false, isDefinition: true, scope: null, file: !5, type: !10), expr: !DIExpression())
!10 = !DIBasicType(tag: DW_TAG_base_type, name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!11 = !{i32 2, !"Dwarf Version", i32 4}
!12 = !{i32 2, !"Debug Info Version", i32 3}
diff --git a/test/Transforms/GlobalMerge/debug-info.ll b/test/Transforms/GlobalMerge/debug-info.ll
index 06c3d8ee470..2cea6f696c1 100644
--- a/test/Transforms/GlobalMerge/debug-info.ll
+++ b/test/Transforms/GlobalMerge/debug-info.ll
@@ -13,16 +13,16 @@ define void @use1() {
%y = load i32, i32* @b
ret void
}
-; CHECK: [[A]] = !DIGlobalVariableExpression(var: [[AVAR:![0-9]+]])
+; CHECK: [[A]] = !DIGlobalVariableExpression(var: [[AVAR:![0-9]+]], expr: !DIExpression())
; CHECK: [[AVAR]] = !DIGlobalVariable(name: "a", scope: null, type: !2, isLocal: false, isDefinition: true)
; CHECK: [[B]] = !DIGlobalVariableExpression(var: [[BVAR:![0-9]+]], expr: !DIExpression(DW_OP_plus_uconst, 4))
; CHECK: [[BVAR]] = !DIGlobalVariable(name: "b", scope: null, type: !2, isLocal: false, isDefinition: true)
!llvm.module.flags = !{!4, !5}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, type: !6, isLocal: false, isDefinition: true)
-!2 = !DIGlobalVariableExpression(var: !3)
+!2 = !DIGlobalVariableExpression(var: !3, expr: !DIExpression())
!3 = !DIGlobalVariable(name: "b", scope: null, type: !6, isLocal: false, isDefinition: true)
!4 = !{i32 2, !"Debug Info Version", i32 3}
!5 = !{i32 2, !"Dwarf Version", i32 4}
diff --git a/test/Transforms/GlobalOpt/2009-03-05-dbg.ll b/test/Transforms/GlobalOpt/2009-03-05-dbg.ll
index 0c8cfb9bc32..68ea4ffe639 100644
--- a/test/Transforms/GlobalOpt/2009-03-05-dbg.ll
+++ b/test/Transforms/GlobalOpt/2009-03-05-dbg.ll
@@ -68,7 +68,7 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!6, !7}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "Stop", scope: !2, file: !3, line: 2, type: !5, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C89, file: !3, producer: "4.2.1 (Based on Apple Inc. build 5658) (LLVM build)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, globals: !4)
!3 = !DIFile(filename: "g.c", directory: "/tmp")
diff --git a/test/Transforms/GlobalOpt/localize-constexpr-debuginfo.ll b/test/Transforms/GlobalOpt/localize-constexpr-debuginfo.ll
index 27f1144b1c5..d8f4a353579 100644
--- a/test/Transforms/GlobalOpt/localize-constexpr-debuginfo.ll
+++ b/test/Transforms/GlobalOpt/localize-constexpr-debuginfo.ll
@@ -33,7 +33,7 @@ declare void @llvm.dbg.value(metadata, metadata, metadata)
!llvm.module.flags = !{!15, !16}
!llvm.ident = !{!17}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = distinct !DIGlobalVariable(name: "x", linkageName: "_ZL1x", scope: !2, file: !14, line: 1, type: !6, isLocal: true, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, retainedTypes: !5, globals: !13)
!3 = !DIFile(filename: "-", directory: "/")
diff --git a/test/Transforms/Inline/alloca-dbgdeclare.ll b/test/Transforms/Inline/alloca-dbgdeclare.ll
index f96d4473d1a..9fb2a6940d3 100644
--- a/test/Transforms/Inline/alloca-dbgdeclare.ll
+++ b/test/Transforms/Inline/alloca-dbgdeclare.ll
@@ -85,7 +85,7 @@ attributes #3 = { noreturn nounwind }
!llvm.module.flags = !{!19, !20}
!llvm.ident = !{!21}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "test.cpp", directory: "")
!3 = !DICompositeType(tag: DW_TAG_structure_type, name: "A", file: !2, line: 1, size: 192, align: 64, elements: !4, identifier: "_ZTS1A")
@@ -97,7 +97,7 @@ attributes #3 = { noreturn nounwind }
!9 = !DIBasicType(name: "double", size: 64, align: 64, encoding: DW_ATE_float)
!10 = !{!11}
!11 = !DISubrange(count: 2)
-!12 = !DIGlobalVariableExpression(var: !13)
+!12 = !DIGlobalVariableExpression(var: !13, expr: !DIExpression())
!13 = !DIGlobalVariable(name: "b", scope: null, file: !2, line: 4, type: !3, isLocal: false, isDefinition: true)
!14 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !15, producer: "clang version 3.7.0 (trunk 227480) (llvm/trunk 227517)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !16, retainedTypes: !17, globals: !18, imports: !16)
!15 = !DIFile(filename: "<stdin>", directory: "")
diff --git a/test/Transforms/LoopVectorize/dbg.value.ll b/test/Transforms/LoopVectorize/dbg.value.ll
index 6ae0d8a5bf5..ae44845fde9 100644
--- a/test/Transforms/LoopVectorize/dbg.value.ll
+++ b/test/Transforms/LoopVectorize/dbg.value.ll
@@ -48,16 +48,16 @@ attributes #1 = { nounwind readnone }
!llvm.dbg.cu = !{!11}
!llvm.module.flags = !{!14}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "A", scope: null, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "test", directory: "/path/to/somewhere")
!3 = !DICompositeType(tag: DW_TAG_array_type, baseType: !4, size: 32768, align: 32, elements: !5)
!4 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!5 = !{!6}
!6 = !{i32 786465, i64 0, i64 1024}
-!7 = !DIGlobalVariableExpression(var: !8)
+!7 = !DIGlobalVariableExpression(var: !8, expr: !DIExpression())
!8 = !DIGlobalVariable(name: "B", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
-!9 = !DIGlobalVariableExpression(var: !10)
+!9 = !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = !DIGlobalVariable(name: "C", scope: null, file: !2, line: 3, type: !3, isLocal: false, isDefinition: true)
!11 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !2, producer: "clang", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !12, retainedTypes: !12, globals: !13)
!12 = !{}
diff --git a/test/Transforms/SampleProfile/cov-zero-samples.ll b/test/Transforms/SampleProfile/cov-zero-samples.ll
index 07b2d610612..f70711f8564 100644
--- a/test/Transforms/SampleProfile/cov-zero-samples.ll
+++ b/test/Transforms/SampleProfile/cov-zero-samples.ll
@@ -90,7 +90,7 @@ attributes #0 = { nounwind readnone }
!llvm.module.flags = !{!8, !9}
!llvm.ident = !{!10}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "N", scope: !2, file: !3, line: 3, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 3.8.0 (trunk 253667) (llvm/trunk 253670)", isOptimized: false, runtimeVersion: 0, emissionKind: NoDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "cov-zero-samples.cc", directory: ".")
diff --git a/test/Transforms/SimplifyCFG/PR27615-simplify-cond-br.ll b/test/Transforms/SimplifyCFG/PR27615-simplify-cond-br.ll
index 26f208a8568..1847b2c9cb5 100644
--- a/test/Transforms/SimplifyCFG/PR27615-simplify-cond-br.ll
+++ b/test/Transforms/SimplifyCFG/PR27615-simplify-cond-br.ll
@@ -42,16 +42,16 @@ attributes #0 = { nounwind readnone }
!llvm.dbg.cu = !{!12}
!llvm.module.flags = !{!15, !16}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "a", scope: null, file: !2, line: 2, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "csmith107.i.c", directory: "/tmp")
!3 = !DIBasicType(name: "int", size: 16, align: 16, encoding: DW_ATE_signed)
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "b", scope: null, file: !2, line: 3, type: !6, isLocal: false, isDefinition: true)
!6 = !DIDerivedType(tag: DW_TAG_typedef, name: "uint32_t", file: !2, line: 1, baseType: !7)
!7 = !DIDerivedType(tag: DW_TAG_typedef, name: "__u32_t", file: !2, baseType: !8)
!8 = !DIBasicType(name: "unsigned long", size: 32, align: 16, encoding: DW_ATE_unsigned)
-!9 = !DIGlobalVariableExpression(var: !10)
+!9 = !DIGlobalVariableExpression(var: !10, expr: !DIExpression())
!10 = !DIGlobalVariable(name: "c", scope: null, file: !2, line: 4, type: !11, isLocal: false, isDefinition: true)
!11 = !DIDerivedType(tag: DW_TAG_pointer_type, baseType: !3, size: 16, align: 16)
!12 = distinct !DICompileUnit(language: DW_LANG_C, file: !2, producer: "FlexC Compiler v6.36 (LLVM)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !13, retainedTypes: !13, globals: !14)
diff --git a/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll b/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll
index 1690d0b2087..da1798ccb4e 100644
--- a/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll
+++ b/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll
@@ -22,7 +22,7 @@ attributes #1 = { nounwind readnone }
!llvm.module.flags = !{!4}
!llvm.dbg.cu = !{!5}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "x", scope: !2, file: !2, line: 1, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "b.c", directory: "/tmp")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/Transforms/StripSymbols/2010-08-25-crash.ll b/test/Transforms/StripSymbols/2010-08-25-crash.ll
index 8b65553dc00..607e6f9af45 100644
--- a/test/Transforms/StripSymbols/2010-08-25-crash.ll
+++ b/test/Transforms/StripSymbols/2010-08-25-crash.ll
@@ -16,7 +16,7 @@ attributes #0 = { nounwind ssp }
!1 = !DIFile(filename: "/tmp/a.c", directory: "/Volumes/Lalgate/clean/D.CW")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = !DIGlobalVariable(name: "i", linkageName: "i", scope: !1, file: !1, line: 2, type: !6, isLocal: true, isDefinition: true)
!6 = !DIDerivedType(tag: DW_TAG_const_type, scope: !1, file: !1, baseType: !7)
!7 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
diff --git a/test/Transforms/StripSymbols/strip-dead-debug-info.ll b/test/Transforms/StripSymbols/strip-dead-debug-info.ll
index 1a3ae947fa2..e13e02cb4b5 100644
--- a/test/Transforms/StripSymbols/strip-dead-debug-info.ll
+++ b/test/Transforms/StripSymbols/strip-dead-debug-info.ll
@@ -35,14 +35,14 @@ attributes #2 = { nounwind readonly ssp }
!llvm.dbg.cu = !{!4, !23, !24, !28}
!llvm.module.flags = !{!9}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "xyz", scope: !2, file: !2, line: 3, type: !3, isLocal: false, isDefinition: true)
!2 = !DIFile(filename: "g.c", directory: "/tmp/")
!3 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!4 = distinct !DICompileUnit(language: DW_LANG_C89, file: !2, producer: "4.2.1 (Based on Apple Inc. build 5658) (LLVM build)", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, enums: !5, retainedTypes: !5, globals: !6)
!5 = !{}
!6 = !{!7, !0}
-!7 = !DIGlobalVariableExpression(var: !8)
+!7 = !DIGlobalVariableExpression(var: !8, expr: !DIExpression())
!8 = !DIGlobalVariable(name: "abcd", scope: !2, file: !2, line: 2, type: !3, isLocal: true, isDefinition: true)
!9 = !{i32 1, !"Debug Info Version", i32 3}
!10 = distinct !DISubprogram(name: "fn", linkageName: "fn", scope: null, file: !2, line: 6, type: !11, isLocal: false, isDefinition: true, virtualIndex: 6, isOptimized: true, unit: !4)
diff --git a/test/Transforms/Util/clone-dicompileunit.ll b/test/Transforms/Util/clone-dicompileunit.ll
index 3f7b5981752..4b35dbc565e 100644
--- a/test/Transforms/Util/clone-dicompileunit.ll
+++ b/test/Transforms/Util/clone-dicompileunit.ll
@@ -37,7 +37,7 @@ target triple = "x86_64-unknown-linux"
!1 = !DIFile(filename: "p.cpp", directory: "/usr/local/google/home/pcc/b682773-2-repro/small2")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !5)
+!4 = !DIGlobalVariableExpression(var: !5, expr: !DIExpression())
!5 = distinct !DIGlobalVariable(name: "a", scope: !6, file: !1, line: 5, type: !27, isLocal: true, isDefinition: true)
!6 = distinct !DISubprogram(name: "m_fn2<B>", linkageName: "_ZN1A5m_fn2IZ3foovE1BEEvv", scope: !7, file: !1, line: 5, type: !8, isLocal: true, isDefinition: true, scopeLine: 5, flags: DIFlagPrototyped, isOptimized: true, unit: !0, templateParams: !11, declaration: !23, variables: !24)
!7 = !DICompositeType(tag: DW_TAG_class_type, name: "A", file: !1, line: 3, flags: DIFlagFwdDecl, identifier: "_ZTS1A")
diff --git a/test/Transforms/Util/strip-nonlinetable-debuginfo-containingtypes.ll b/test/Transforms/Util/strip-nonlinetable-debuginfo-containingtypes.ll
index 4afab40818a..78b32c5d297 100644
--- a/test/Transforms/Util/strip-nonlinetable-debuginfo-containingtypes.ll
+++ b/test/Transforms/Util/strip-nonlinetable-debuginfo-containingtypes.ll
@@ -51,7 +51,7 @@ attributes #2 = { nounwind }
; CHECK-NEG-NOT: !DI{{Basic|Composite|Derived}}Type
-!0 = distinct !DIGlobalVariableExpression(var: !1)
+!0 = distinct !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "b", scope: !2, file: !3, line: 5, type: !6, isLocal: false, isDefinition: true)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, producer: "clang version 4.0.0 (trunk 282583) (llvm/trunk 282611)", isOptimized: false, runtimeVersion: 0, emissionKind: FullDebug, enums: !4, globals: !5)
!3 = !DIFile(filename: "t.cpp", directory: "/")
diff --git a/test/Verifier/pr34325.ll b/test/Verifier/pr34325.ll
index 5b21f67fa5d..ae258b7677f 100644
--- a/test/Verifier/pr34325.ll
+++ b/test/Verifier/pr34325.ll
@@ -7,7 +7,7 @@
!llvm.dbg.cu = !{!2}
!llvm.module.flags = !{!8}
-!0 = !DIGlobalVariableExpression(var: !1)
+!0 = !DIGlobalVariableExpression(var: !1, expr: !DIExpression())
!1 = !DIGlobalVariable(name: "c", scope: null, isLocal: false, isDefinition: true, type: !6)
!2 = distinct !DICompileUnit(language: DW_LANG_C_plus_plus, file: !3, isOptimized: false, runtimeVersion: 0, emissionKind: NoDebug, retainedTypes: !4, globals: !7)
!3 = !DIFile(filename: "a", directory: "")
diff --git a/test/tools/llvm-objdump/Hexagon/source-interleave-hexagon.ll b/test/tools/llvm-objdump/Hexagon/source-interleave-hexagon.ll
index eff24c0cdd6..b14eb2a85ed 100644
--- a/test/tools/llvm-objdump/Hexagon/source-interleave-hexagon.ll
+++ b/test/tools/llvm-objdump/Hexagon/source-interleave-hexagon.ll
@@ -45,7 +45,7 @@ attributes #1 = { nounwind readnone }
!1 = !DIFile(filename: "source-interleave-hexagon.c", directory: "SRC_COMPDIR")
!2 = !{}
!3 = !{!4}
-!4 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "a", scope: !0, file: !1, line: 1, type: !5, isLocal: false, isDefinition: true))
+!4 = !DIGlobalVariableExpression(var: !DIGlobalVariable(name: "a", scope: !0, file: !1, line: 1, type: !5, isLocal: false, isDefinition: true), expr: !DIExpression())
!5 = !DIBasicType(name: "int", size: 32, align: 32, encoding: DW_ATE_signed)
!6 = !{i32 2, !"Dwarf Version", i32 4}
!7 = !{i32 2, !"Debug Info Version", i32 3}