
These date back to when the non-intrinsic format of variable locations was still being tested and was behind a compile-time flag, so not all builds / bots would correctly run them. The solution at the time, to get at least some test coverage, was to have tests opt-in to non-intrinsic debug-info if it was built into LLVM. Nowadays, non-intrinsic format is the default and has been on for more than a year, there's no need for this flag to exist. (I've downgraded the flag from "try" to explicitly requesting non-intrinsic format in some places, so that we can deal with tests that are explicitly about non-intrinsic format in their own commit).
26 lines
653 B
LLVM
26 lines
653 B
LLVM
; RUN: opt -S -passes=debugify,globalopt -f %s | FileCheck %s
|
|
|
|
@foo = internal global i32 0, align 4
|
|
|
|
define void @store() {
|
|
entry:
|
|
store i32 5, ptr @foo, align 4
|
|
ret void
|
|
}
|
|
|
|
define i32 @bar() {
|
|
entry:
|
|
%0 = load i32, ptr @foo, align 4
|
|
ret i32 %0
|
|
}
|
|
|
|
;CHECK: @bar
|
|
;CHECK-NEXT: entry:
|
|
;CHECK-NEXT: %.b = load i1, ptr @foo, align 1, !dbg ![[DbgLocLoadSel:[0-9]+]]
|
|
;CHECK-NEXT: %0 = select i1 %.b, i32 5, i32 0, !dbg ![[DbgLocLoadSel]]
|
|
;CHECK-NEXT: #dbg_value({{.*}}, ![[DbgLocLoadSel]]
|
|
;CHECK-NEXT: ret i32 %0, !dbg ![[DbgLocRet:[0-9]+]]
|
|
|
|
;CHECK: ![[DbgLocLoadSel]] = !DILocation(line: 3,
|
|
;CHECK: ![[DbgLocRet]] = !DILocation(line: 4,
|