brintos

brintos / llvm-project-archived public Read only

0
0
Text · 1.7 KiB · 56bd726 Raw
52 lines · plain
1; RUN: llc -mtriple powerpc-ibm-aix-xcoff -stop-after=machine-cp < %s | \2; RUN: FileCheck --check-prefix=32BIT %s3 4; RUN: llc -mtriple powerpc64-ibm-aix-xcoff -stop-after=machine-cp < %s | \5; RUN: FileCheck --check-prefix=64BIT %s6 7; RUN: llc -mtriple powerpc-ibm-aix-xcoff < %s | FileCheck %s8; RUN: llc -mtriple powerpc64-ibm-aix-xcoff < %s | FileCheck %s9 10declare void @foo(...)11 12define void @test_call() {13entry:14; 32BIT: ADJCALLSTACKDOWN 56, 0, implicit-def dead $r1, implicit $r115; 32BIT: BL_NOP <mcsymbol .foo[PR]>, csr_aix32, implicit-def dead $lr, implicit $rm, implicit $r2, implicit-def $r116; 32BIT: ADJCALLSTACKUP 56, 0, implicit-def dead $r1, implicit $r117 18; 64BIT: ADJCALLSTACKDOWN 112, 0, implicit-def dead $r1, implicit $r119; 64BIT: BL8_NOP <mcsymbol .foo[PR]>, csr_ppc64, implicit-def dead $lr8, implicit $rm, implicit $x2, implicit-def $r120; 64BIT: ADJCALLSTACKUP 112, 0, implicit-def dead $r1, implicit $r121 22; CHECK-LABEL: test_call23; CHECK: bl .foo24; CHECK-NEXT: nop25 26  call void @foo()27  ret void28}29 30define hidden void @foo_local() {31entry:32  ret void33}34 35define void @test_local_call() {36entry:37; 32BIT: ADJCALLSTACKDOWN 56, 0, implicit-def dead $r1, implicit $r138; 32BIT: BL <mcsymbol .foo_local>, csr_aix32, implicit-def dead $lr, implicit $rm, implicit $r2, implicit-def $r139; 32BIT: ADJCALLSTACKUP 56, 0, implicit-def dead $r1, implicit $r140 41; 64BIT: ADJCALLSTACKDOWN 112, 0, implicit-def dead $r1, implicit $r142; 64BIT: BL8 <mcsymbol .foo_local>, csr_ppc64, implicit-def dead $lr8, implicit $rm, implicit $x2, implicit-def $r143; 64BIT: ADJCALLSTACKUP 112, 0, implicit-def dead $r1, implicit $r144 45; CHECK-LABEL: test_local_call46; CHECK: bl .foo_local47; CHECK-NOT: nop48 49  call void @foo_local()50  ret void51}52