[llvm] r312144 - Canonicalize the representation of empty an expression in DIGlobalVariableExpression

David Blaikie via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 4 10:22:10 PDT 2017


On Wed, Aug 30, 2017 at 11:07 AM Adrian Prantl via llvm-commits <
llvm-commits at lists.llvm.org> wrote:

> Author: adrian
> Date: Wed Aug 30 11:06:51 2017
> New Revision: 312144
>
> URL: http://llvm.org/viewvc/llvm-project?rev=312144&view=rev
> Log:
> Canonicalize the representation of empty an expression in
> DIGlobalVariableExpression
>
> This change simplifies code that has to deal with
> DIGlobalVariableExpression and mirrors how we treat DIExpressions in
> debug info intrinsics. Before this change there were two ways of
> representing empty expressions on globals, a nullptr and an empty
> !DIExpression().
>
> If someone needs to upgrade out-of-tree testcases:
>   perl -pi -e 's/(!DIGlobalVariableExpression\(var: ![0-9]*)\)/\1, expr:
> !DIExpression())/g' <MYTEST.ll>
>

Seems like it'd be nice for readability to omit the !DIExpression(),
perhaps (even if the bitcode remains the same and these are never null)? Or
do you find it's easier to read with it present?


> will catch 95%.
>
> Modified:
>     llvm/trunk/include/llvm/IR/DebugInfoMetadata.h
>     llvm/trunk/lib/AsmParser/LLParser.cpp
>     llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp
>     llvm/trunk/lib/IR/DIBuilder.cpp
>     llvm/trunk/test/Bitcode/DIGlobalVariableExpression.ll
>     llvm/trunk/test/Bitcode/DIGlobalVariableExpression2.ll
>     llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
>     llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
>     llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
>     llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll
>     llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll
>     llvm/trunk/test/CodeGen/ARM/no-cfi.ll
>     llvm/trunk/test/CodeGen/BPF/dwarfdump.ll
>     llvm/trunk/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll
>     llvm/trunk/test/CodeGen/PowerPC/pr17168.ll
>     llvm/trunk/test/CodeGen/PowerPC/pr24546.ll
>     llvm/trunk/test/CodeGen/WebAssembly/dbgvalue.ll
>     llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
>     llvm/trunk/test/CodeGen/X86/dwarf-headers.ll
>     llvm/trunk/test/CodeGen/X86/fp128-g.ll
>     llvm/trunk/test/CodeGen/X86/fpstack-debuginstr-kill.ll
>     llvm/trunk/test/CodeGen/X86/machine-outliner-debuginfo.ll
>     llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll
>     llvm/trunk/test/CodeGen/X86/null-streamer.ll
>     llvm/trunk/test/DebugInfo/AArch64/big-endian.ll
>     llvm/trunk/test/DebugInfo/AArch64/bitfields.ll
>     llvm/trunk/test/DebugInfo/AArch64/frameindices.ll
>     llvm/trunk/test/DebugInfo/AMDGPU/variable-locations.ll
>     llvm/trunk/test/DebugInfo/ARM/big-endian-bitfield.ll
>     llvm/trunk/test/DebugInfo/ARM/bitfield.ll
>     llvm/trunk/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll
>     llvm/trunk/test/DebugInfo/ARM/tls.ll
>     llvm/trunk/test/DebugInfo/COFF/anonymous-struct.ll
>     llvm/trunk/test/DebugInfo/COFF/array-odr-violation.ll
>     llvm/trunk/test/DebugInfo/COFF/big-type.ll
>     llvm/trunk/test/DebugInfo/COFF/bitfields.ll
>     llvm/trunk/test/DebugInfo/COFF/enum.ll
>     llvm/trunk/test/DebugInfo/COFF/global-dllimport.ll
>     llvm/trunk/test/DebugInfo/COFF/globals-discarded.ll
>     llvm/trunk/test/DebugInfo/COFF/globals.ll
>     llvm/trunk/test/DebugInfo/COFF/inheritance.ll
>     llvm/trunk/test/DebugInfo/COFF/inlining-files.ll
>     llvm/trunk/test/DebugInfo/COFF/inlining-header.ll
>     llvm/trunk/test/DebugInfo/COFF/inlining-levels.ll
>     llvm/trunk/test/DebugInfo/COFF/int8-char-type.ll
>     llvm/trunk/test/DebugInfo/COFF/long-type-name.ll
>     llvm/trunk/test/DebugInfo/COFF/nested-types.ll
>     llvm/trunk/test/DebugInfo/COFF/register-variables.ll
>     llvm/trunk/test/DebugInfo/COFF/scopes.ll
>     llvm/trunk/test/DebugInfo/COFF/types-array-advanced.ll
>     llvm/trunk/test/DebugInfo/COFF/types-nested-class.ll
>     llvm/trunk/test/DebugInfo/COFF/types-ptr-to-member.ll
>     llvm/trunk/test/DebugInfo/COFF/udts.ll
>     llvm/trunk/test/DebugInfo/COFF/virtual-method-kinds.ll
>     llvm/trunk/test/DebugInfo/COFF/vtable-optzn-array.ll
>     llvm/trunk/test/DebugInfo/Generic/2009-11-05-DeadGlobalVariable.ll
>     llvm/trunk/test/DebugInfo/Generic/2009-11-06-NamelessGlobalVariable.ll
>     llvm/trunk/test/DebugInfo/Generic/2010-06-29-InlinedFnLocalVar.ll
>     llvm/trunk/test/DebugInfo/Generic/accel-table-hash-collisions.ll
>     llvm/trunk/test/DebugInfo/Generic/cross-cu-linkonce-distinct.ll
>     llvm/trunk/test/DebugInfo/Generic/cross-cu-linkonce.ll
>     llvm/trunk/test/DebugInfo/Generic/dbg-at-specficiation.ll
>
> llvm/trunk/test/DebugInfo/Generic/debuginfofinder-forward-declaration.ll
>     llvm/trunk/test/DebugInfo/Generic/dwarf-public-names.ll
>     llvm/trunk/test/DebugInfo/Generic/enum.ll
>     llvm/trunk/test/DebugInfo/Generic/global-sra-array.ll
>     llvm/trunk/test/DebugInfo/Generic/global-sra-struct.ll
>     llvm/trunk/test/DebugInfo/Generic/global.ll
>     llvm/trunk/test/DebugInfo/Generic/gvn.ll
>     llvm/trunk/test/DebugInfo/Generic/member-pointers.ll
>     llvm/trunk/test/DebugInfo/Generic/namespace.ll
>     llvm/trunk/test/DebugInfo/Generic/recursive_inlining.ll
>     llvm/trunk/test/DebugInfo/Generic/template-recursive-void.ll
>     llvm/trunk/test/DebugInfo/Generic/tu-member-pointer.ll
>     llvm/trunk/test/DebugInfo/Generic/typedef.ll
>     llvm/trunk/test/DebugInfo/MIR/X86/live-debug-values-spill.mir
>     llvm/trunk/test/DebugInfo/MIR/X86/live-debug-values.mir
>     llvm/trunk/test/DebugInfo/MIR/X86/mlicm-hoist.mir
>     llvm/trunk/test/DebugInfo/Mips/InlinedFnLocalVar.ll
>     llvm/trunk/test/DebugInfo/Mips/dwarfdump-tls.ll
>     llvm/trunk/test/DebugInfo/Mips/tls.ll
>     llvm/trunk/test/DebugInfo/PowerPC/tls-fission.ll
>     llvm/trunk/test/DebugInfo/PowerPC/tls.ll
>     llvm/trunk/test/DebugInfo/X86/2011-09-26-GlobalVarContext.ll
>     llvm/trunk/test/DebugInfo/X86/DIModuleContext.ll
>     llvm/trunk/test/DebugInfo/X86/DW_AT_calling-convention.ll
>     llvm/trunk/test/DebugInfo/X86/DW_AT_specification.ll
>     llvm/trunk/test/DebugInfo/X86/DW_TAG_friend.ll
>     llvm/trunk/test/DebugInfo/X86/FrameIndexExprs.ll
>     llvm/trunk/test/DebugInfo/X86/InlinedFnLocalVar.ll
>     llvm/trunk/test/DebugInfo/X86/PR26148.ll
>     llvm/trunk/test/DebugInfo/X86/align_c11.ll
>     llvm/trunk/test/DebugInfo/X86/align_cpp11.ll
>     llvm/trunk/test/DebugInfo/X86/align_objc.ll
>     llvm/trunk/test/DebugInfo/X86/arange-and-stub.ll
>     llvm/trunk/test/DebugInfo/X86/arange.ll
>     llvm/trunk/test/DebugInfo/X86/atomic-c11-dwarf-4.ll
>     llvm/trunk/test/DebugInfo/X86/atomic-c11-dwarf-5.ll
>     llvm/trunk/test/DebugInfo/X86/bitfields-dwarf4.ll
>     llvm/trunk/test/DebugInfo/X86/bitfields.ll
>     llvm/trunk/test/DebugInfo/X86/c-type-units.ll
>     llvm/trunk/test/DebugInfo/X86/concrete_out_of_line.ll
>     llvm/trunk/test/DebugInfo/X86/cu-ranges-odr.ll
>     llvm/trunk/test/DebugInfo/X86/data_member_location.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-subrange.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-inlined-parameter.ll
>     llvm/trunk/test/DebugInfo/X86/dbg-value-regmask-clobber.ll
>     llvm/trunk/test/DebugInfo/X86/debug-info-access.ll
>     llvm/trunk/test/DebugInfo/X86/debug-info-packed-struct.ll
>     llvm/trunk/test/DebugInfo/X86/debug-info-static-member.ll
>     llvm/trunk/test/DebugInfo/X86/debug-loc-frame.ll
>     llvm/trunk/test/DebugInfo/X86/debugger-tune.ll
>     llvm/trunk/test/DebugInfo/X86/decl-derived-member.ll
>     llvm/trunk/test/DebugInfo/X86/default-subrange-array.ll
>     llvm/trunk/test/DebugInfo/X86/dllimport.ll
>     llvm/trunk/test/DebugInfo/X86/dwarf-aranges-no-dwarf-labels.ll
>     llvm/trunk/test/DebugInfo/X86/dwarf-aranges.ll
>     llvm/trunk/test/DebugInfo/X86/dwarf-linkage-names.ll
>     llvm/trunk/test/DebugInfo/X86/dwarf-public-names.ll
>     llvm/trunk/test/DebugInfo/X86/empty-array.ll
>     llvm/trunk/test/DebugInfo/X86/enum-class.ll
>     llvm/trunk/test/DebugInfo/X86/enum-fwd-decl.ll
>     llvm/trunk/test/DebugInfo/X86/fission-cu.ll
>     llvm/trunk/test/DebugInfo/X86/generate-odr-hash.ll
>     llvm/trunk/test/DebugInfo/X86/gnu-public-names-tu.ll
>     llvm/trunk/test/DebugInfo/X86/gnu-public-names.ll
>     llvm/trunk/test/DebugInfo/X86/inline-member-function.ll
>     llvm/trunk/test/DebugInfo/X86/inline-namespace.ll
>     llvm/trunk/test/DebugInfo/X86/inlined-indirect-value.ll
>     llvm/trunk/test/DebugInfo/X86/isel-cse-line.ll
>     llvm/trunk/test/DebugInfo/X86/linkage-name.ll
>     llvm/trunk/test/DebugInfo/X86/live-debug-values.ll
>     llvm/trunk/test/DebugInfo/X86/memberfnptr.ll
>     llvm/trunk/test/DebugInfo/X86/misched-dbg-value.ll
>     llvm/trunk/test/DebugInfo/X86/multiple-aranges.ll
>     llvm/trunk/test/DebugInfo/X86/nondefault-subrange-array.ll
>     llvm/trunk/test/DebugInfo/X86/objc-fwd-decl.ll
>     llvm/trunk/test/DebugInfo/X86/pointer-type-size.ll
>     llvm/trunk/test/DebugInfo/X86/ref_addr_relocation.ll
>     llvm/trunk/test/DebugInfo/X86/split-global.ll
>     llvm/trunk/test/DebugInfo/X86/static_member_array.ll
>     llvm/trunk/test/DebugInfo/X86/stringpool.ll
>     llvm/trunk/test/DebugInfo/X86/struct-loc.ll
>     llvm/trunk/test/DebugInfo/X86/template.ll
>     llvm/trunk/test/DebugInfo/X86/tls.ll
>     llvm/trunk/test/DebugInfo/X86/type_units_with_addresses.ll
>     llvm/trunk/test/DebugInfo/X86/union-template.ll
>     llvm/trunk/test/DebugInfo/X86/vector.ll
>     llvm/trunk/test/DebugInfo/pr34186.ll
>
> llvm/trunk/test/Instrumentation/AddressSanitizer/debug-info-global-var.ll
>     llvm/trunk/test/LTO/X86/Inputs/type-mapping-src.ll
>     llvm/trunk/test/LTO/X86/type-mapping-bug.ll
>     llvm/trunk/test/Linker/2011-08-04-Metadata.ll
>     llvm/trunk/test/Linker/2011-08-04-Metadata2.ll
>     llvm/trunk/test/Linker/debug-info-global-var.ll
>     llvm/trunk/test/Linker/odr.ll
>     llvm/trunk/test/Linker/only-needed-debug-metadata.ll
>     llvm/trunk/test/ThinLTO/X86/Inputs/crash_debuginfo.ll
>     llvm/trunk/test/ThinLTO/X86/crash_debuginfo.ll
>     llvm/trunk/test/ThinLTO/X86/debuginfo-cu-import.ll
>     llvm/trunk/test/Transforms/ConstantMerge/merge-dbg.ll
>     llvm/trunk/test/Transforms/GCOVProfiling/return-block.ll
>     llvm/trunk/test/Transforms/GlobalMerge/debug-info.ll
>     llvm/trunk/test/Transforms/GlobalOpt/2009-03-05-dbg.ll
>     llvm/trunk/test/Transforms/GlobalOpt/localize-constexpr-debuginfo.ll
>     llvm/trunk/test/Transforms/Inline/alloca-dbgdeclare.ll
>     llvm/trunk/test/Transforms/LoopVectorize/dbg.value.ll
>     llvm/trunk/test/Transforms/SampleProfile/cov-zero-samples.ll
>     llvm/trunk/test/Transforms/SimplifyCFG/PR27615-simplify-cond-br.ll
>     llvm/trunk/test/Transforms/StripSymbols/2010-06-30-StripDebug.ll
>     llvm/trunk/test/Transforms/StripSymbols/2010-08-25-crash.ll
>     llvm/trunk/test/Transforms/StripSymbols/strip-dead-debug-info.ll
>     llvm/trunk/test/Transforms/Util/clone-dicompileunit.ll
>
> llvm/trunk/test/Transforms/Util/strip-nonlinetable-debuginfo-containingtypes.ll
>     llvm/trunk/test/Verifier/pr34325.ll
>     llvm/trunk/test/tools/llvm-objdump/Hexagon/source-interleave-hexagon.ll
>
> Modified: llvm/trunk/include/llvm/IR/DebugInfoMetadata.h
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/IR/DebugInfoMetadata.h?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/include/llvm/IR/DebugInfoMetadata.h (original)
> +++ llvm/trunk/include/llvm/IR/DebugInfoMetadata.h Wed Aug 30 11:06:51 2017
> @@ -2630,7 +2630,7 @@ public:
>    Metadata *getRawExpression() const { return getOperand(1); }
>
>    DIExpression *getExpression() const {
> -    return cast_or_null<DIExpression>(getRawExpression());
> +    return cast<DIExpression>(getRawExpression());
>    }
>
>    static bool classof(const Metadata *MD) {
>
> Modified: llvm/trunk/lib/AsmParser/LLParser.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/AsmParser/LLParser.cpp?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/AsmParser/LLParser.cpp (original)
> +++ llvm/trunk/lib/AsmParser/LLParser.cpp Wed Aug 30 11:06:51 2017
> @@ -4383,7 +4383,7 @@ bool LLParser::ParseDIGlobalVariableExpr
>                                                 bool IsDistinct) {
>  #define VISIT_MD_FIELDS(OPTIONAL, REQUIRED)
>       \
>    REQUIRED(var, MDField, );
>       \
> -  OPTIONAL(expr, MDField, );
> +  REQUIRED(expr, MDField, );
>    PARSE_MD_FIELDS();
>  #undef VISIT_MD_FIELDS
>
>
> Modified: llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp (original)
> +++ llvm/trunk/lib/Bitcode/Reader/MetadataLoader.cpp Wed Aug 30 11:06:51
> 2017
> @@ -497,8 +497,8 @@ class MetadataLoader::MetadataLoaderImpl
>            for (unsigned I = 0; I < GVs->getNumOperands(); I++)
>              if (auto *GV =
>
>  dyn_cast_or_null<DIGlobalVariable>(GVs->getOperand(I))) {
> -              auto *DGVE =
> -                  DIGlobalVariableExpression::getDistinct(Context, GV,
> nullptr);
> +              auto *DGVE = DIGlobalVariableExpression::getDistinct(
> +                  Context, GV, DIExpression::get(Context, {}));
>                GVs->replaceOperandWith(I, DGVE);
>              }
>        }
> @@ -510,8 +510,8 @@ class MetadataLoader::MetadataLoaderImpl
>        GV.eraseMetadata(LLVMContext::MD_dbg);
>        for (auto *MD : MDs)
>          if (auto *DGV = dyn_cast_or_null<DIGlobalVariable>(MD)) {
> -          auto *DGVE =
> -              DIGlobalVariableExpression::getDistinct(Context, DGV,
> nullptr);
> +          auto *DGVE = DIGlobalVariableExpression::getDistinct(
> +              Context, DGV, DIExpression::get(Context, {}));
>            GV.addMetadata(LLVMContext::MD_dbg, *DGVE);
>          } else
>            GV.addMetadata(LLVMContext::MD_dbg, *MD);
> @@ -1585,7 +1585,8 @@ Error MetadataLoader::MetadataLoaderImpl
>
>        DIGlobalVariableExpression *DGVE = nullptr;
>        if (Attach || Expr)
> -        DGVE = DIGlobalVariableExpression::getDistinct(Context, DGV,
> Expr);
> +        DGVE = DIGlobalVariableExpression::getDistinct(
> +            Context, DGV, Expr ? Expr : DIExpression::get(Context, {}));
>        if (Attach)
>          Attach->addDebugInfo(DGVE);
>
> @@ -1648,10 +1649,13 @@ Error MetadataLoader::MetadataLoaderImpl
>        return error("Invalid record");
>
>      IsDistinct = Record[0];
> -    MetadataList.assignValue(GET_OR_DISTINCT(DIGlobalVariableExpression,
> -                                             (Context,
> getMDOrNull(Record[1]),
> -                                              getMDOrNull(Record[2]))),
> -                             NextMetadataNo);
> +    Metadata *Expr = getMDOrNull(Record[2]);
> +    if (!Expr)
> +      Expr = DIExpression::get(Context, {});
> +    MetadataList.assignValue(
> +        GET_OR_DISTINCT(DIGlobalVariableExpression,
> +                        (Context, getMDOrNull(Record[1]), Expr)),
> +        NextMetadataNo);
>      NextMetadataNo++;
>      break;
>    }
>
> Modified: llvm/trunk/lib/IR/DIBuilder.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/IR/DIBuilder.cpp?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/lib/IR/DIBuilder.cpp (original)
> +++ llvm/trunk/lib/IR/DIBuilder.cpp Wed Aug 30 11:06:51 2017
> @@ -595,6 +595,8 @@ DIGlobalVariableExpression *DIBuilder::c
>        VMContext, cast_or_null<DIScope>(Context), Name, LinkageName, F,
>        LineNumber, Ty, isLocalToUnit, true,
> cast_or_null<DIDerivedType>(Decl),
>        AlignInBits);
> +  if (!Expr)
> +    Expr = createExpression();
>    auto *N = DIGlobalVariableExpression::get(VMContext, GV, Expr);
>    AllGVs.push_back(N);
>    return N;
>
> Modified: llvm/trunk/test/Bitcode/DIGlobalVariableExpression.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Bitcode/DIGlobalVariableExpression.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Bitcode/DIGlobalVariableExpression.ll (original)
> +++ llvm/trunk/test/Bitcode/DIGlobalVariableExpression.ll Wed Aug 30
> 11:06:51 2017
> @@ -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
>
> Modified: llvm/trunk/test/Bitcode/DIGlobalVariableExpression2.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Bitcode/DIGlobalVariableExpression2.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/Bitcode/DIGlobalVariableExpression2.ll (original)
> +++ llvm/trunk/test/Bitcode/DIGlobalVariableExpression2.ll Wed Aug 30
> 11:06:51 2017
> @@ -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.
>
> Modified:
> llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
> (original)
> +++ llvm/trunk/test/CodeGen/AArch64/arm64-2011-03-17-AsmPrinterCrash.ll
> Wed Aug 30 11:06:51 2017
> @@ -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)
>
> Modified: llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll
> (original)
> +++ llvm/trunk/test/CodeGen/ARM/2010-06-25-Thumb2ITInvalidIterator.ll Wed
> Aug 30 11:06:51 2017
> @@ -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)
>
> Modified: llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/2011-01-19-MergedGlobalDbg.ll Wed Aug 30
> 11:06:51 2017
> @@ -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 = !{}
>
> Modified: llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/2011-08-02-MergedGlobalDbg.ll Wed Aug 30
> 11:06:51 2017
> @@ -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}
>
> Modified: llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/coalesce-dbgvalue.ll Wed Aug 30 11:06:51
> 2017
> @@ -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 = !{}
>
> Modified: llvm/trunk/test/CodeGen/ARM/no-cfi.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/ARM/no-cfi.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/ARM/no-cfi.ll (original)
> +++ llvm/trunk/test/CodeGen/ARM/no-cfi.ll Wed Aug 30 11:06:51 2017
> @@ -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")
>
> Modified: llvm/trunk/test/CodeGen/BPF/dwarfdump.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/BPF/dwarfdump.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/BPF/dwarfdump.ll (original)
> +++ llvm/trunk/test/CodeGen/BPF/dwarfdump.ll Wed Aug 30 11:06:51 2017
> @@ -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")
>
> Modified: llvm/trunk/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll (original)
> +++ llvm/trunk/test/CodeGen/NVPTX/generic-to-nvvm-ir.ll Wed Aug 30
> 11:06:51 2017
> @@ -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]+]]
>
> Modified: llvm/trunk/test/CodeGen/PowerPC/pr17168.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PowerPC/pr17168.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/PowerPC/pr17168.ll (original)
> +++ llvm/trunk/test/CodeGen/PowerPC/pr17168.ll Wed Aug 30 11:06:51 2017
> @@ -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}
>
> Modified: llvm/trunk/test/CodeGen/PowerPC/pr24546.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/PowerPC/pr24546.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/PowerPC/pr24546.ll (original)
> +++ llvm/trunk/test/CodeGen/PowerPC/pr24546.ll Wed Aug 30 11:06:51 2017
> @@ -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}
>
> Modified: llvm/trunk/test/CodeGen/WebAssembly/dbgvalue.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/WebAssembly/dbgvalue.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/WebAssembly/dbgvalue.ll (original)
> +++ llvm/trunk/test/CodeGen/WebAssembly/dbgvalue.ll Wed Aug 30 11:06:51
> 2017
> @@ -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)
>
> Modified: llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/2010-05-26-DotDebugLoc.ll Wed Aug 30
> 11:06:51 2017
> @@ -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}
>
> Modified: llvm/trunk/test/CodeGen/X86/dwarf-headers.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/dwarf-headers.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/dwarf-headers.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/dwarf-headers.ll Wed Aug 30 11:06:51 2017
> @@ -94,7 +94,7 @@ target triple = "x86_64-unknown-linux-gn
>  !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")
>
> Modified: llvm/trunk/test/CodeGen/X86/fp128-g.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/fp128-g.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/fp128-g.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/fp128-g.ll Wed Aug 30 11:06:51 2017
> @@ -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")
>
> Modified: llvm/trunk/test/CodeGen/X86/fpstack-debuginstr-kill.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/fpstack-debuginstr-kill.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/fpstack-debuginstr-kill.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/fpstack-debuginstr-kill.ll Wed Aug 30
> 11:06:51 2017
> @@ -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)
>
> Modified: llvm/trunk/test/CodeGen/X86/machine-outliner-debuginfo.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/machine-outliner-debuginfo.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/machine-outliner-debuginfo.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/machine-outliner-debuginfo.ll Wed Aug 30
> 11:06:51 2017
> @@ -48,7 +48,7 @@ attributes #0 = { noredzone nounwind ssp
>  !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")
>
> Modified: llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll
> (original)
> +++ llvm/trunk/test/CodeGen/X86/misched-code-difference-with-debug.ll Wed
> Aug 30 11:06:51 2017
> @@ -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)
>
> Modified: llvm/trunk/test/CodeGen/X86/null-streamer.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/null-streamer.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/CodeGen/X86/null-streamer.ll (original)
> +++ llvm/trunk/test/CodeGen/X86/null-streamer.ll Wed Aug 30 11:06:51 2017
> @@ -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}
>
> Modified: llvm/trunk/test/DebugInfo/AArch64/big-endian.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/AArch64/big-endian.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/AArch64/big-endian.ll (original)
> +++ llvm/trunk/test/DebugInfo/AArch64/big-endian.ll Wed Aug 30 11:06:51
> 2017
> @@ -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)
>
> Modified: llvm/trunk/test/DebugInfo/AArch64/bitfields.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/AArch64/bitfields.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/AArch64/bitfields.ll (original)
> +++ llvm/trunk/test/DebugInfo/AArch64/bitfields.ll Wed Aug 30 11:06:51 2017
> @@ -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: "/")
>
> Modified: llvm/trunk/test/DebugInfo/AArch64/frameindices.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/AArch64/frameindices.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/AArch64/frameindices.ll (original)
> +++ llvm/trunk/test/DebugInfo/AArch64/frameindices.ll Wed Aug 30 11:06:51
> 2017
> @@ -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)
>
> Modified: llvm/trunk/test/DebugInfo/AMDGPU/variable-locations.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/AMDGPU/variable-locations.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/AMDGPU/variable-locations.ll (original)
> +++ llvm/trunk/test/DebugInfo/AMDGPU/variable-locations.ll Wed Aug 30
> 11:06:51 2017
> @@ -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}
>
> Modified: llvm/trunk/test/DebugInfo/ARM/big-endian-bitfield.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/ARM/big-endian-bitfield.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/ARM/big-endian-bitfield.ll (original)
> +++ llvm/trunk/test/DebugInfo/ARM/big-endian-bitfield.ll Wed Aug 30
> 11:06:51 2017
> @@ -19,7 +19,7 @@ target datalayout = "E-m:e-p:32:32-i64:6
>  !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")
>
> Modified: llvm/trunk/test/DebugInfo/ARM/bitfield.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/ARM/bitfield.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/ARM/bitfield.ll (original)
> +++ llvm/trunk/test/DebugInfo/ARM/bitfield.ll Wed Aug 30 11:06:51 2017
> @@ -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: "/")
>
> Modified:
> llvm/trunk/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll
> URL:
> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll?rev=312144&r1=312143&r2=312144&view=diff
>
> ==============================================================================
> --- llvm/trunk/test/DebugInfo/ARM/multiple-constant-uses-drops-dbgloc.ll
> (original)
> +++ llvm/trunk/test/DebugInfo/ARM/multiple-constant-uses-drops-<
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170904/e4734a4f/attachment-0001.html>


More information about the llvm-commits mailing list