56 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 52# RUN: llc -mtriple=aarch64 -passes=machine-scheduler -o - %s | FileCheck %s3# RUN: llc -mtriple=aarch64 -passes=machine-scheduler -misched-cutoff=1 -debug-only=machine-scheduler -o - %s 2>&1 | FileCheck %s --check-prefix=CHECK-CUTOFF4 5# REQUIRES: asserts6 7# CHECK-CUTOFF-COUNT-1: Scheduling SU8 9# NOTE: copied from machine-scheduler.mir10 11--- |12 define i64 @load_imp-def(ptr nocapture %P, i32 %v) {13 entry:14 %0 = bitcast ptr %P to ptr15 %1 = load i32, ptr %016 %conv = zext i32 %1 to i6417 %arrayidx19 = getelementptr inbounds i64, ptr %P, i64 118 %arrayidx1 = bitcast ptr %arrayidx19 to ptr19 store i32 %v, ptr %arrayidx120 %2 = load i64, ptr %arrayidx1921 %and = and i64 %2, 429496729522 %add = add nuw nsw i64 %and, %conv23 ret i64 %add24 }25...26---27name: load_imp-def28tracksRegLiveness: true29body: |30 bb.0.entry:31 liveins: $w1, $x032 ; CHECK-LABEL: name: load_imp-def33 ; CHECK: liveins: $w1, $x034 ; CHECK-NEXT: {{ $}}35 ; CHECK-NEXT: $w8 = LDRWui $x0, 1, implicit-def $x8 :: (load (s32) from %ir.0)36 ; CHECK-NEXT: $w9 = LDRWui $x0, 0, implicit-def $x9 :: (load (s32) from %ir.arrayidx19, align 8)37 ; CHECK-NEXT: STRWui $w1, $x0, 2 :: (store (s32) into %ir.arrayidx1)38 ; CHECK-NEXT: $x0 = ADDXrr killed $x9, killed $x839 ; CHECK-NEXT: RET_ReallyLR implicit $x040 ;41 ; CHECK-CUTOFF-LABEL: name: load_imp-def42 ; CHECK-CUTOFF: liveins: $w1, $x043 ; CHECK-CUTOFF-NEXT: {{ $}}44 ; CHECK-CUTOFF-NEXT: $w8 = LDRWui $x0, 1, implicit-def $x8 :: (load (s32) from %ir.0)45 ; CHECK-CUTOFF-NEXT: STRWui $w1, $x0, 2 :: (store (s32) into %ir.arrayidx1)46 ; CHECK-CUTOFF-NEXT: $w9 = LDRWui $x0, 0, implicit-def $x9 :: (load (s32) from %ir.arrayidx19, align 8)47 ; CHECK-CUTOFF-NEXT: $x0 = ADDXrr killed $x9, killed $x848 ; CHECK-CUTOFF-NEXT: RET_ReallyLR implicit $x049 $w8 = LDRWui $x0, 1, implicit-def $x8 :: (load (s32) from %ir.0)50 STRWui killed $w1, $x0, 2 :: (store (s32) into %ir.arrayidx1)51 $w9 = LDRWui killed $x0, 0, implicit-def $x9 :: (load (s32) from %ir.arrayidx19, align 8)52 $x0 = ADDXrr killed $x9, killed $x853 RET_ReallyLR implicit $x054...55 56