mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2024-08-23 17:29:19 +00:00
Check fields from `MDLocalVariable` and `MDGlobalVariable` and change the accessors to downcast to the right types. `getType()` still returns `Metadata*` since it could be an `MDString`-based reference. Since local variables require non-null scopes, I also updated `LLParser` to require a `scope:` field. A number of testcases had grown bitrot and started failing with this patch; I committed them separately in r233349. If I just broke your out-of-tree testcases, you're probably hitting similar problems (so have a look there). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@233389 91177308-0d34-0410-b5e6-96231b3b80d8
18 lines
544 B
LLVM
18 lines
544 B
LLVM
; RUN: not llvm-as -disable-output <%s 2>&1 | FileCheck %s
|
|
; CHECK: invalid llvm.dbg.value intrinsic address/value
|
|
; CHECK-NEXT: call void @llvm.dbg.value({{.*}})
|
|
; CHECK-NEXT: !""
|
|
|
|
define void @foo(i32 %a) {
|
|
entry:
|
|
%s = alloca i32
|
|
call void @llvm.dbg.value(metadata !"", i64 0, metadata !MDLocalVariable(tag: DW_TAG_arg_variable, scope: !1), metadata !MDExpression())
|
|
ret void
|
|
}
|
|
|
|
declare void @llvm.dbg.value(metadata, i64, metadata, metadata)
|
|
|
|
!llvm.module.flags = !{!0}
|
|
!0 = !{i32 2, !"Debug Info Version", i32 3}
|
|
!1 = !MDSubprogram()
|