mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 10:42:39 +01:00
107b591be0
In the WebAssembly target, we would like to allow alloca in two address spaces. The alloca instruction already has an address space argument, but the verifier asserts that the address space of an alloca is the default alloca address space from the datalayout. This patch removes this restriction. Targets that would like to impose additional restrictions should do so via target-specific verification passes. Differential Revision: https://reviews.llvm.org/D101045
25 lines
844 B
LLVM
25 lines
844 B
LLVM
; RUN: llvm-as < %s -o %t.bc -data-layout=A5 2>&1 | FileCheck -check-prefixes=AS %s
|
|
; RUN: llvm-dis < %t.bc | FileCheck -check-prefixes=DIS %s
|
|
; RUN: opt < %s -S -data-layout=A5 2>&1 | FileCheck -check-prefixes=AS %s
|
|
; RUN: opt < %t.bc -S | FileCheck -check-prefixes=DIS %s
|
|
|
|
define void @foo() {
|
|
entry:
|
|
; DIS: target datalayout = "A5"
|
|
; DIS: %tmp = alloca i32, align 4, addrspace(5)
|
|
%tmp = alloca i32, addrspace(5)
|
|
call void @llvm.dbg.value(
|
|
metadata i8* undef,
|
|
metadata !DILocalVariable(scope: !1),
|
|
metadata !DIExpression())
|
|
; AS: llvm.dbg.value intrinsic requires a !dbg attachment
|
|
; AS: warning: ignoring invalid debug info in <stdin>
|
|
ret void
|
|
}
|
|
|
|
declare void @llvm.dbg.value(metadata, metadata, metadata)
|
|
|
|
!llvm.module.flags = !{!0}
|
|
!0 = !{i32 2, !"Debug Info Version", i32 3}
|
|
!1 = distinct !DISubprogram(name: "foo")
|