45 lines · plain
1; RUN: llc -mtriple=aarch64-windows-msvc -mattr=+sve -pass-remarks-analysis=stack-frame-layout < %s 2>&1 -o /dev/null | FileCheck %s2 3; CHECK: Function: f104; CHECK: Offset: [SP+0-16 x vscale], Type: Spill, Align: 16, Size: vscale x 165; CHECK: Offset: [SP+0-32 x vscale], Type: Spill, Align: 16, Size: vscale x 166; CHECK: Offset: [SP+0-48 x vscale], Type: Spill, Align: 16, Size: vscale x 167; CHECK: Offset: [SP+0-64 x vscale], Type: Spill, Align: 16, Size: vscale x 168; CHECK: Offset: [SP+0-80 x vscale], Type: Spill, Align: 16, Size: vscale x 169; CHECK: Offset: [SP+0-96 x vscale], Type: Spill, Align: 16, Size: vscale x 1610; CHECK: Offset: [SP+0-112 x vscale], Type: Spill, Align: 16, Size: vscale x 1611; CHECK: Offset: [SP+0-128 x vscale], Type: Spill, Align: 16, Size: vscale x 1612; CHECK: Offset: [SP+0-144 x vscale], Type: Spill, Align: 16, Size: vscale x 1613; CHECK: Offset: [SP+0-160 x vscale], Type: Spill, Align: 16, Size: vscale x 1614; CHECK: Offset: [SP+0-176 x vscale], Type: Spill, Align: 16, Size: vscale x 1615; CHECK: Offset: [SP+0-192 x vscale], Type: Spill, Align: 16, Size: vscale x 1616; CHECK: Offset: [SP+0-208 x vscale], Type: Spill, Align: 16, Size: vscale x 1617; CHECK: Offset: [SP+0-224 x vscale], Type: Spill, Align: 16, Size: vscale x 1618; CHECK: Offset: [SP+0-240 x vscale], Type: Spill, Align: 16, Size: vscale x 1619; CHECK: Offset: [SP+0-256 x vscale], Type: Spill, Align: 16, Size: vscale x 1620; CHECK: Offset: [SP+0-258 x vscale], Type: Spill, Align: 2, Size: vscale x 221; CHECK: Offset: [SP+0-260 x vscale], Type: Spill, Align: 2, Size: vscale x 222; CHECK: Offset: [SP+0-262 x vscale], Type: Spill, Align: 2, Size: vscale x 223; CHECK: Offset: [SP+0-264 x vscale], Type: Spill, Align: 2, Size: vscale x 224; CHECK: Offset: [SP+0-266 x vscale], Type: Spill, Align: 2, Size: vscale x 225; CHECK: Offset: [SP+0-268 x vscale], Type: Spill, Align: 2, Size: vscale x 226; CHECK: Offset: [SP+0-270 x vscale], Type: Spill, Align: 2, Size: vscale x 227; CHECK: Offset: [SP+0-272 x vscale], Type: Spill, Align: 2, Size: vscale x 228; CHECK: Offset: [SP+0-274 x vscale], Type: Spill, Align: 2, Size: vscale x 229; CHECK: Offset: [SP+0-276 x vscale], Type: Spill, Align: 2, Size: vscale x 230; CHECK: Offset: [SP+0-278 x vscale], Type: Spill, Align: 2, Size: vscale x 231; CHECK: Offset: [SP+0-280 x vscale], Type: Spill, Align: 2, Size: vscale x 232; CHECK: Offset: [SP-16-288 x vscale], Type: Spill, Align: 16, Size: 833; CHECK: Offset: [SP-24-288 x vscale], Type: Spill, Align: 8, Size: 834; CHECK: Offset: [SP-32-288 x vscale], Type: Spill, Align: 8, Size: 835; CHECK: Offset: [SP-32-304 x vscale], Type: Variable, Align: 16, Size: vscale x 1636; CHECK: Offset: [SP-48-304 x vscale], Type: Variable, Align: 8, Size: 1637 38declare void @g10(ptr,ptr)39define void @f10(i64 %n, <vscale x 2 x i64> %x) "frame-pointer"="all" {40 %p1 = alloca [2 x i64]41 %p2 = alloca <vscale x 2 x i64>42 call void @g10(ptr %p1, ptr %p2)43 ret void44}45