# RUN: llc -mtriple=aarch64-unknown-unknown -run-pass=machine-outliner \ # RUN: -verify-machineinstrs %s -o - | FileCheck %s # Ensure that outlined function names appear as expected. Currently, they are # output in order of benefit. --- | define void @should_have_fn2() #0 { ret void } define void @should_have_fn0() #0 { ret void } define void @should_have_fn1() #0 { ret void } attributes #0 = { noredzone optsize minsize } ... --- name: should_have_fn2 tracksRegLiveness: true body: | bb.0: ; CHECK-LABEL: name: should_have_fn2 ; CHECK-NOT: OUTLINED_FUNCTION_1 ; CHECK-NOT: OUTLINED_FUNCTION_0 ; CHECK: OUTLINED_FUNCTION_2 $w0 = ORRWri $wzr, 1 $w0 = ORRWri $wzr, 1 $w0 = ORRWri $wzr, 1 bb.1: ; CHECK-DAG: OUTLINED_FUNCTION_2 $w0 = ORRWri $wzr, 1 $w0 = ORRWri $wzr, 1 $w0 = ORRWri $wzr, 1 bb.2: ; CHECK-DAG: OUTLINED_FUNCTION_2 $w0 = ORRWri $wzr, 1 $w0 = ORRWri $wzr, 1 $w0 = ORRWri $wzr, 1 bb.3: ; CHECK-DAG: OUTLINED_FUNCTION_2 $w0 = ORRWri $wzr, 1 $w0 = ORRWri $wzr, 1 $w0 = ORRWri $wzr, 1 bb.4: RET undef $lr ... --- name: should_have_fn0 tracksRegLiveness: true body: | bb.0: ; CHECK-LABEL: name: should_have_fn0 ; CHECK-NOT: OUTLINED_FUNCTION_1 ; CHECK-NOT: OUTLINED_FUNCTION_2 ; CHECK: OUTLINED_FUNCTION_0 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 bb.1: ; CHECK-DAG: OUTLINED_FUNCTION_0 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 bb.3: ; CHECK-DAG: OUTLINED_FUNCTION_0 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 $w1 = ORRWri $wzr, 1 bb.4: RET undef $lr ... --- name: should_have_fn1 tracksRegLiveness: true body: | bb.0: ; CHECK-LABEL: name: should_have_fn1 ; CHECK-NOT: OUTLINED_FUNCTION_0 ; CHECK-NOT: OUTLINED_FUNCTION_2 ; CHECK: OUTLINED_FUNCTION_1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 bb.1: ; CHECK-DAG: OUTLINED_FUNCTION_1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 bb.3: ; CHECK-DAG: OUTLINED_FUNCTION_1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 $w2 = ORRWri $wzr, 1 bb.4: RET undef $lr