69 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc %s -mtriple aarch64 -run-pass=machine-outliner -o - | FileCheck %s3 4...5---6name: unsafe_range_in_middle7tracksRegLiveness: true8machineFunctionInfo:9 hasRedZone: false10body: |11 bb.0:12 liveins: $x013 ; Begin safe range of 3 instructions14 ; CHECK-LABEL: name: unsafe_range_in_middle15 ; CHECK: liveins: $x016 ; CHECK-NEXT: {{ $}}17 ; CHECK-NEXT: BL @OUTLINED_FUNCTION_0, implicit-def $lr, implicit $sp, implicit-def $lr, implicit-def $x0, implicit-def $x1, implicit-def $x2, implicit-def $x3, implicit-def $x16, implicit $x0, implicit $sp18 ; CHECK-NEXT: $x9 = ADDXri $x16, 16, 019 ; CHECK-NEXT: $x16 = ADDXri killed $x16, 16, 120 ; CHECK-NEXT: BL @OUTLINED_FUNCTION_0, implicit-def $lr, implicit $sp, implicit-def $lr, implicit-def $x0, implicit-def $x1, implicit-def $x2, implicit-def $x3, implicit-def $x16, implicit $x0, implicit $sp21 ; CHECK-NEXT: $x9 = ADDXri $x9, 16, 022 ; CHECK-NEXT: $x16 = ADDXri killed $x16, 16, 223 ; CHECK-NEXT: RET undef $x924 $x0 = ADDXri $x0, 0, 025 $x1 = ADDXri $x0, 1, 026 $x2 = ADDXri $x0, 2, 027 $x3 = ADDXri $x0, 3, 028 $x16 = ADDXri $x0, 16, 029 $x9 = ADDXri $x16, 16, 030 $x16 = ADDXri killed $x16, 16, 131 ; End safe range32 $x0 = ADDXri $x0, 0, 033 $x1 = ADDXri $x0, 1, 034 $x2 = ADDXri $x0, 2, 035 $x3 = ADDXri $x0, 3, 036 $x16 = ADDXri $x0, 16, 037 $x9 = ADDXri $x9, 16, 038 $x16 = ADDXri killed $x16, 16, 239 ; End safe range40 RET undef $x941...42---43name: unsafe_range_bundle44tracksRegLiveness: true45machineFunctionInfo:46 hasRedZone: false47body: |48 bb.0:49 liveins: $x050 ; CHECK-LABEL: name: unsafe_range_bundle51 ; CHECK: liveins: $x052 ; CHECK-NEXT: {{ $}}53 ; CHECK-NEXT: $x0 = ADDXri $x0, 0, 054 ; CHECK-NEXT: $x16 = ADDXri $x0, 16, 055 ; CHECK-NEXT: BUNDLE {56 ; CHECK-NEXT: $x16 = ADDXri killed $x16, 16, 357 ; CHECK-NEXT: $x1 = ADDXri $x0, 0, 058 ; CHECK-NEXT: }59 ; CHECK-NEXT: RET undef $x960 $x0 = ADDXri $x0, 0, 061 $x16 = ADDXri $x0, 16, 062 BUNDLE { ; Bundle crosses a safe range63 $x16 = ADDXri killed $x16, 16, 364 ; End safe range65 $x1 = ADDXri $x0, 0, 066 }67 RET undef $x968...69