brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.3 KiB · 89c2c82 Raw
100 lines · plain
1# RUN: llc -run-pass=aarch64-ldst-opt -o - -mtriple=aarch64-- %s | FileCheck %s2# Check that we merge the MIFlags from both the instructions in the final3# instruction.4---5name:            case116# CHECK-LABEL: name: case117body:             |8  bb.0:9    frame-setup STRWui $w1, $x0, 1 :: (store (s32))10    $w1 = frame-destroy LDRWui $x0, 1 :: (load (s32))11 12  ; CHECK: frame-setup STRWui13  ; CHECK-NOT: frame-setup14  ; CHECK-NEXT: frame-destroy ORRWrs15  ; No merging happening here, make sure we keep the flags of the previous16  ; instruction.17    RET_ReallyLR18 19...20---21name:            case1222# CHECK-LABEL: name: case1223body:             |24  bb.0:25    frame-setup STRWui $w1, $x0, 1 :: (store (s32))26    $w2 = frame-destroy LDRHHui $x0, 2 :: (load (s16))27 28  ; CHECK: frame-setup STRWui29  ; CHECK-NOT: frame-setup30  ; CHECK-NEXT: frame-destroy ANDWri31  ; No merging happening here, make sure we keep the flags of the previous32  ; instruction.33    RET_ReallyLR34 35...36---37name:            case1338# CHECK-LABEL: name: case1339body:             |40  bb.0:41    frame-setup STRWui $w1, $x0, 1 :: (store (s32))42    $w2 = frame-destroy LDRHHui $x0, 3 :: (load (s16))43 44  ; CHECK: frame-setup STRWui45  ; CHECK-NOT: frame-setup46  ; CHECK-NEXT: frame-destroy UBFMWri47  ; No merging happening here, make sure we keep the flags of the previous48  ; instruction.49    RET_ReallyLR50 51...52---53name:            case254# CHECK-LABEL: name: case255body:             |56  bb.0:57    frame-setup STRHHui $wzr, $x0, 0 :: (store (s32))58    frame-destroy STRHHui $wzr, $x0, 1 :: (store (s32))59 60  ; CHECK: frame-setup frame-destroy STRWui61    RET_ReallyLR62 63...64---65name:            case366# CHECK-LABEL: name: case367body:             |68  bb.0:69 70    $x0 = frame-setup LDRXui $x2, 0 :: (load (s64))71    $x1 = frame-destroy LDRXui $x2, 1 :: (load (s64))72 73  ; CHECK: frame-setup frame-destroy LDPXi74    RET_ReallyLR75...76---77name:            case478# CHECK-LABEL: name: case479body:             |80  bb.0:81    $x26, $x25 = frame-setup LDPXi $sp, 082    $sp = frame-destroy ADDXri $sp, 64, 083 84  ; CHECK: = frame-setup frame-destroy LDPXpost85    RET_ReallyLR86 87...88---89name:            case4190# CHECK-LABEL: name: case4191body:             |92  bb.0:93    $x26 = frame-setup LDRXui $sp, 094    $sp = frame-destroy ADDXri $sp, 64, 095 96  ; CHECK: = frame-setup frame-destroy LDRXpost97    RET_ReallyLR98 99...100