forked from OSchip/llvm-project
41 lines
1.6 KiB
YAML
41 lines
1.6 KiB
YAML
# RUN: llc -run-pass=aarch64-ldst-opt -mtriple=arm64-apple-iphoneos -aarch64-load-store-renaming=true -o - -verify-machineinstrs %s | FileCheck %s
|
|
--- |
|
|
define void @test_ld3(<8 x i8>* %a1) {
|
|
entry:
|
|
%s1 = alloca i64
|
|
ret void
|
|
}
|
|
|
|
...
|
|
---
|
|
# CHECK-LABEL: name: test_ld3
|
|
# CHECK: bb.0.entry:
|
|
# CHECK: renamable $x0, renamable $d0_d1_d2 = LD3Threev8b_POST killed renamable $x0, $xzr
|
|
# CHECK-NEXT: STPDi renamable $d0, renamable $d1, $fp, -6 :: (store 8)
|
|
# CHECK-NEXT: STURDi renamable $d2, $fp, -32, implicit killed $d0_d1_d2 :: (store 8 into %ir.s1)
|
|
# CHECK-NEXT: renamable $d0_d1_d2 = LD3Threev8b killed renamable $x0 :: (load 24 from %ir.a1, align 32)
|
|
# CHECK-NEXT: STPDi renamable $d0, renamable $d1, $fp, -3 :: (store 8)
|
|
# CHECK-NEXT: STURDi renamable $d2, $fp, -8, implicit killed $d0_d1_d2 :: (store 8)
|
|
# CHECK-NEXT: RET undef $lr
|
|
#
|
|
name: test_ld3
|
|
alignment: 4
|
|
tracksRegLiveness: true
|
|
frameInfo: {}
|
|
machineFunctionInfo: {}
|
|
body: |
|
|
bb.0.entry:
|
|
liveins: $x0, $x1, $lr, $fp
|
|
|
|
renamable $x0, renamable $d0_d1_d2 = LD3Threev8b_POST killed renamable $x0, $xzr
|
|
STURDi renamable $d0, $fp, -48 :: (store 8)
|
|
STURDi renamable $d1, $fp, -40 :: (store 8)
|
|
STURDi renamable $d2, $fp, -32, implicit killed $d0_d1_d2 :: (store 8 into %ir.s1)
|
|
renamable $d0_d1_d2 = LD3Threev8b killed renamable $x0 :: (load 24 from %ir.a1, align 32)
|
|
STURDi renamable $d0, $fp, -24 :: (store 8)
|
|
STURDi renamable $d1, $fp, -16 :: (store 8)
|
|
STURDi renamable $d2, $fp, -8, implicit killed $d0_d1_d2 :: (store 8)
|
|
RET undef $lr
|
|
|
|
...
|