1 ; RUN: llc -O0 -march=amdgcn -verify-machineinstrs < %s | FileCheck %s 2 3 ; Test that the alignment of kernel arguments does not impact the 4 ; alignment of the stack 5 6 ; CHECK-LABEL: {{^}}no_args: 7 ; CHECK: ScratchSize: 8{{$}} 8 define void @no_args() { 9 %alloca = alloca i8 10 store volatile i8 0, i8* %alloca 11 ret void 12 } 13 14 ; CHECK-LABEL: {{^}}force_align32: 15 ; CHECK: ScratchSize: 8{{$}} 16 define void @force_align32(<8 x i32>) { 17 %alloca = alloca i8 18 store volatile i8 0, i8* %alloca 19 ret void 20 } 21 22 ; CHECK-LABEL: {{^}}force_align64: 23 ; CHECK: ScratchSize: 8{{$}} 24 define void @force_align64(<16 x i32>) { 25 %alloca = alloca i8 26 store volatile i8 0, i8* %alloca 27 ret void 28 } 29 30 ; CHECK-LABEL: {{^}}force_align128: 31 ; CHECK: ScratchSize: 8{{$}} 32 define void @force_align128(<32 x i32>) { 33 %alloca = alloca i8 34 store volatile i8 0, i8* %alloca 35 ret void 36 } 37 38 ; CHECK-LABEL: {{^}}force_align256: 39 ; CHECK: ScratchSize: 8{{$}} 40 define void @force_align256(<64 x i32>) { 41 %alloca = alloca i8 42 store volatile i8 0, i8* %alloca 43 ret void 44 } 45