33 lines
1.1 KiB
YAML
33 lines
1.1 KiB
YAML
# NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
|
|
# RUN: llc -mattr=+sve -mtriple=aarch64-none-linux-gnu -start-before=prologepilog %s -o - | FileCheck %s
|
|
|
|
--- |
|
|
define aarch64_sve_vector_pcs void @access_large_stack() nounwind { entry: unreachable }
|
|
; CHECK-LABEL: access_large_stack:
|
|
; CHECK: // %bb.0: // %entry
|
|
; CHECK-NEXT: stp x29, x30, [sp, #-16]! // 16-byte Folded Spill
|
|
; CHECK-NEXT: mov x29, sp
|
|
; CHECK-NEXT: addvl sp, sp, #-32
|
|
; CHECK-NEXT: addvl sp, sp, #-28
|
|
; CHECK-NEXT: sub sp, sp, #2064
|
|
; CHECK-NEXT: ldr x8, [sp, #2048]
|
|
; CHECK-NEXT: addvl sp, sp, #31
|
|
; CHECK-NEXT: addvl sp, sp, #29
|
|
; CHECK-NEXT: add sp, sp, #2064
|
|
; CHECK-NEXT: ldp x29, x30, [sp], #16 // 16-byte Folded Reload
|
|
; CHECK-NEXT: ret
|
|
...
|
|
name: access_large_stack
|
|
frameInfo:
|
|
maxAlignment: 16
|
|
isFrameAddressTaken: true
|
|
stack:
|
|
- { id: 0, stack-id: default, size: 16, alignment: 16 }
|
|
- { id: 1, stack-id: default, size: 2048, alignment: 16 }
|
|
- { id: 2, stack-id: scalable-vector, size: 960, alignment: 16 }
|
|
body: |
|
|
bb.0.entry:
|
|
$x8 = LDRXui %stack.0, 0
|
|
RET_ReallyLR
|
|
---
|