[MIParser] Set RegClassOrRegBank during instruction parsing
[llvm-complete.git] / test / CodeGen / AArch64 / GlobalISel / irtranslator-weird-alloca-size.ll
blob741bae3d75704178f9e8e2692a6d170b60a9aa40
1 ; RUN: llc -global-isel -stop-after irtranslator -mtriple aarch64-apple-ios %s -o - | FileCheck %s
3 ; We use to incorrectly use the store size instead of the alloc size when
4 ; creating the stack slot for allocas. This shows on aarch64 only when
5 ; we allocated weirdly sized type. For instance, in that case, we used
6 ; to allocate a slot of size 24-bit (19 rounded up to the next byte),
7 ; whereas we really want to use a full 32-bit slot for this type.
8 ; CHECK-LABEL: foo
9 ; Check that the stack slot is 4-byte wide instead of the previously
10 ; wrongly 3-byte sized slot.
11 ; CHECK: stack:
12 ; CHECK-NEXT: - { id: 0, name: stack_slot, type: default, offset: 0, size: 4, alignment: 4
13 define void @foo() {
14   %stack_slot = alloca i19
15   call void @bar(i19* %stack_slot)
16   ret void
19 declare void @bar(i19* %a)