[PATCH] D134582: [LoongArch] Support lowering frames larger than 2048 bytes

Lu Weining via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 26 05:16:11 PDT 2022


SixWeining added inline comments.


================
Comment at: llvm/test/CodeGen/LoongArch/frame.ll:42-64
+define void @test_large_frame_size_2032(ptr byval(%size2016) %x) {
+; CHECK-LABEL: test_large_frame_size_2032:
+; CHECK:       # %bb.0:
+; CHECK-NEXT:    addi.d $sp, $sp, -2032
+; CHECK-NEXT:    .cfi_def_cfa_offset 2032
+; CHECK-NEXT:    st.d $ra, $sp, 2024 # 8-byte Folded Spill
+; CHECK-NEXT:    st.d $fp, $sp, 2016 # 8-byte Folded Spill
----------------
How about this IR which is simpler:

```
define void @test_large_frame_size_2032() {
; CHECK-LABEL: test_large_frame_size_2032:
; CHECK:       # %bb.0:
; CHECK-NEXT:    addi.d $sp, $sp, -2032
; CHECK-NEXT:    .cfi_def_cfa_offset 2032
; CHECK-NEXT:    addi.d $sp, $sp, 2032
; CHECK-NEXT:    ret
  %1 = alloca i8, i32 2032
  ret void
}
```


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D134582/new/

https://reviews.llvm.org/D134582



More information about the llvm-commits mailing list