llvm/test/Assembler/alloca-addrspace-elems.ll
Yaxun Liu 7581146f57 Fix assembler for alloca of multiple elements in non-zero addr space
Currently llvm assembler emits parsing error for valid IR assembly

alloca i32, i32 9, addrspace(5)
when alloca addr space is 5.

This patch fixes that.

Differential Revision: https://reviews.llvm.org/D38713


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315791 91177308-0d34-0410-b5e6-96231b3b80d8
2017-10-14 03:23:18 +00:00

26 lines
1.1 KiB
LLVM

; RUN: llvm-as < %s | llvm-dis | FileCheck %s
target datalayout = "A5"
; CHECK: target datalayout = "A5"
; CHECK: %alloca_array_no_align = alloca i32, i32 9, addrspace(5)
; CHECK-NEXT: %alloca_array_align4 = alloca i32, i32 9, align 4, addrspace(5)
; CHECK-NEXT: %alloca_array_no_align_metadata = alloca i32, i32 9, addrspace(5), !foo !0
; CHECK-NEXT: %alloca_array_align4_metadata = alloca i32, i32 9, align 4, addrspace(5), !foo !0
; CHECK-NEXT: %alloca_inalloca_array_no_align = alloca inalloca i32, i32 9, addrspace(5)
; CHECK-NEXT: %alloca_inalloca_array_align4_metadata = alloca inalloca i32, i32 9, align 4, addrspace(5), !foo !0
define void @use_alloca() {
%alloca_array_no_align = alloca i32, i32 9, addrspace(5)
%alloca_array_align4 = alloca i32, i32 9, align 4, addrspace(5)
%alloca_array_no_align_metadata = alloca i32, i32 9, addrspace(5), !foo !0
%alloca_array_align4_metadata = alloca i32, i32 9, align 4, addrspace(5), !foo !0
%alloca_inalloca_array_no_align = alloca inalloca i32, i32 9, addrspace(5)
%alloca_inalloca_array_align4_metadata = alloca inalloca i32, i32 9, align 4, addrspace(5), !foo !0
ret void
}
!0 = !{}