brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.6 KiB · 112a840 Raw
50 lines · plain
1; RUN: llc -mtriple=thumb-- -mcpu=cortex-a8 -relocation-model=static %s -o - | FileCheck -check-prefix=NO-OPTION %s2; RUN: llc -mtriple=thumb-- -mcpu=cortex-a8 -relocation-model=static %s -o - -mattr=+long-calls | FileCheck -check-prefix=LONGCALL %s3; RUN: llc -mtriple=thumb-- -mcpu=cortex-a8 -relocation-model=static %s -o - -mattr=-long-calls | FileCheck -check-prefix=NO-LONGCALL %s4; RUN: llc -mtriple=thumb-- -mcpu=cortex-a8 -relocation-model=static %s -o - -O0 | FileCheck -check-prefix=NO-OPTION %s5; RUN: llc -mtriple=thumb-- -mcpu=cortex-a8 -relocation-model=static %s -o - -O0 -mattr=+long-calls | FileCheck -check-prefix=LONGCALL %s6; RUN: llc -mtriple=thumb-- -mcpu=cortex-a8 -relocation-model=static %s -o - -O0 -mattr=-long-calls | FileCheck -check-prefix=NO-LONGCALL %s7 8; NO-OPTION-LABEL: {{_?}}caller09; NO-OPTION: ldr [[R0:r[0-9]+]], [[L0:.*]] 10; NO-OPTION: blx [[R0]]11; NO-OPTION: [[L0]]:12; NO-OPTION: .long {{_?}}callee013 14; LONGCALL-LABEL: {{_?}}caller015; LONGCALL: ldr [[R0:r[0-9]+]], [[L0:.*]]16; LONGCALL: blx [[R0]]17; LONGCALL: [[L0]]:18; LONGCALL: .long {{_?}}callee019 20; NO-LONGCALL-LABEL: {{_?}}caller021; NO-LONGCALL: bl {{_?}}callee022 23define i32 @caller0() #0 {24entry:25  tail call void @callee0()26  ret i32 027}28 29; NO-OPTION-LABEL: {{_?}}caller130; NO-OPTION: bl {{_?}}callee031 32; LONGCALL-LABEL: {{_?}}caller133; LONGCALL: ldr [[R0:r[0-9]+]], [[L0:.*]]34; LONGCALL: blx [[R0]]35; LONGCALL: [[L0]]:36; LONGCALL: .long {{_?}}callee037 38; NO-LONGCALL-LABEL: {{_?}}caller139; NO-LONGCALL: bl {{_?}}callee040 41define i32 @caller1() {42entry:43  tail call void @callee0()44  ret i32 045}46 47declare void @callee0()48 49attributes #0 = { "target-features"="+long-calls" }50