70 lines · plain
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py2# RUN: llc -mtriple=aarch64-apple-unknown -run-pass=machine-outliner -verify-machineinstrs %s -o - | FileCheck %s3 4# Outlining CFI instructions is unsafe if it is not tail called, but otherwise,5# it requires fixups. Show that we include CFI instructions in tail call 6# outlined sequences right now.7 8--- |9 define void @foo() #0 { ret void }10 define void @bar() #0 { ret void }11 define void @baz() #0 { ret void }12 attributes #0 = { noredzone }13...14---15name: foo16tracksRegLiveness: true17body: |18 bb.0:19 liveins: $lr20 ; CHECK-LABEL: name: foo21 ; CHECK: liveins: $lr22 ; CHECK: TCRETURNdi @OUTLINED_FUNCTION_0, 0, implicit $sp, implicit-def $w9, implicit-def $w10, implicit-def $w11, implicit-def $w12, implicit-def $w13, implicit-def $w14, implicit-def $w15, implicit $wzr, implicit $sp23 $w9 = ORRWri $wzr, 124 $w10 = ORRWri $wzr, 225 $w11 = ORRWri $wzr, 326 frame-setup CFI_INSTRUCTION def_cfa $w29, 1627 $w12 = ORRWri $wzr, 128 $w13 = ORRWri $wzr, 229 $w14 = ORRWri $wzr, 330 $w15 = ORRWri $wzr, 431 RET undef $lr32...33---34name: bar35tracksRegLiveness: true36body: |37 bb.0:38 liveins: $lr39 ; CHECK-LABEL: name: bar40 ; CHECK: liveins: $lr41 ; CHECK: TCRETURNdi @OUTLINED_FUNCTION_0, 0, implicit $sp, implicit-def $w9, implicit-def $w10, implicit-def $w11, implicit-def $w12, implicit-def $w13, implicit-def $w14, implicit-def $w15, implicit $wzr, implicit $sp42 $w9 = ORRWri $wzr, 143 $w10 = ORRWri $wzr, 244 $w11 = ORRWri $wzr, 345 frame-setup CFI_INSTRUCTION def_cfa $w29, 1646 $w12 = ORRWri $wzr, 147 $w13 = ORRWri $wzr, 248 $w14 = ORRWri $wzr, 349 $w15 = ORRWri $wzr, 450 RET undef $lr51...52---53name: baz54tracksRegLiveness: true55body: |56 bb.0:57 liveins: $lr58 ; CHECK-LABEL: name: baz59 ; CHECK: liveins: $lr60 ; CHECK: TCRETURNdi @OUTLINED_FUNCTION_0, 0, implicit $sp, implicit-def $w9, implicit-def $w10, implicit-def $w11, implicit-def $w12, implicit-def $w13, implicit-def $w14, implicit-def $w15, implicit $wzr, implicit $sp61 $w9 = ORRWri $wzr, 162 $w10 = ORRWri $wzr, 263 $w11 = ORRWri $wzr, 364 frame-setup CFI_INSTRUCTION def_cfa $w29, 1665 $w12 = ORRWri $wzr, 166 $w13 = ORRWri $wzr, 267 $w14 = ORRWri $wzr, 368 $w15 = ORRWri $wzr, 469 RET undef $lr70