forked from OSchip/llvm-project
				
			[PowerPC][NFC] Add test for 5b18b6e9a8
				
					
				
			When the above commit was added to fix a kernel build break, no tests were added. Just adding some testing to ensure similar regressions do not recur.
This commit is contained in:
		
							parent
							
								
									c3db138795
								
							
						
					
					
						commit
						95b718e511
					
				| 
						 | 
				
			
			@ -1,11 +1,14 @@
 | 
			
		|||
; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu \
 | 
			
		||||
; RUN:   -mcpu=future -ppc-asm-full-reg-names < %s \
 | 
			
		||||
; RUN:   | FileCheck %s --check-prefix=CHECK-S
 | 
			
		||||
; RUN:   | FileCheck %s --check-prefixes=CHECK-S,CHECK-ALL
 | 
			
		||||
; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu \
 | 
			
		||||
; RUN:   -mcpu=pwr9 -ppc-asm-full-reg-names < %s \
 | 
			
		||||
; RUN:   | FileCheck %s --check-prefixes=CHECK-P9,CHECK-ALL
 | 
			
		||||
 | 
			
		||||
@global_int = common dso_local local_unnamed_addr global i32 0, align 4
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @NoTOC() local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: NoTOC:
 | 
			
		||||
; CHECK-ALL-LABEL: NoTOC:
 | 
			
		||||
; CHECK-S-NOT:     .localentry
 | 
			
		||||
; CHECK-S:         li r3, 42
 | 
			
		||||
; CHECK-S-NEXT:    blr
 | 
			
		||||
| 
						 | 
				
			
			@ -14,7 +17,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @AsmClobberX2(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: AsmClobberX2:
 | 
			
		||||
; CHECK-ALL-LABEL: AsmClobberX2:
 | 
			
		||||
; CHECK-S:         .localentry AsmClobberX2, 1
 | 
			
		||||
; CHECK-S:         add r3, r4, r3
 | 
			
		||||
; CHECK-S:         #APP
 | 
			
		||||
| 
						 | 
				
			
			@ -32,7 +35,7 @@ entry:
 | 
			
		|||
;        should be replaced with @pcrel and we won't need R2 and so the problem
 | 
			
		||||
;        goes away.
 | 
			
		||||
define dso_local signext i32 @AsmClobberX2WithTOC(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: AsmClobberX2WithTOC:
 | 
			
		||||
; CHECK-ALL-LABEL: AsmClobberX2WithTOC:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep2@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep2@l
 | 
			
		||||
; CHECK-S:         .localentry     AsmClobberX2WithTOC, .Lfunc_lep2-.Lfunc_gep2
 | 
			
		||||
| 
						 | 
				
			
			@ -54,9 +57,10 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @AsmClobberX5(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: AsmClobberX5:
 | 
			
		||||
; CHECK-ALL-LABEL: AsmClobberX5:
 | 
			
		||||
; CHECK-S:         .localentry AsmClobberX5, 1
 | 
			
		||||
; CHECK-S-NEXT:  # %bb.0: # %entry
 | 
			
		||||
; CHECK-P9-NOT:    .localentry
 | 
			
		||||
; CHECK-ALL:       # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    add r3, r4, r3
 | 
			
		||||
; CHECK-S-NEXT:    extsw r3, r3
 | 
			
		||||
; CHECK-S-NEXT:    #APP
 | 
			
		||||
| 
						 | 
				
			
			@ -71,8 +75,9 @@ entry:
 | 
			
		|||
 | 
			
		||||
; Clobber all GPRs except R2.
 | 
			
		||||
define dso_local signext i32 @AsmClobberNotR2(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: AsmClobberNotR2:
 | 
			
		||||
; CHECK-ALL-LABEL: AsmClobberNotR2:
 | 
			
		||||
; CHECK-S:         .localentry AsmClobberNotR2, 1
 | 
			
		||||
; CHECK-P9-NOT:    .localentry
 | 
			
		||||
; CHECK-S:         add r3, r4, r3
 | 
			
		||||
; CHECK-S:         stw r3, -148(r1) # 4-byte Folded Spill
 | 
			
		||||
; CHECK-S-NEXT:    #APP
 | 
			
		||||
| 
						 | 
				
			
			@ -89,9 +94,10 @@ entry:
 | 
			
		|||
; Increase register pressure enough to force the register allocator to
 | 
			
		||||
; make use of R2.
 | 
			
		||||
define dso_local signext i32 @X2IsCallerSaved(i32 signext %a, i32 signext %b, i32 signext %c, i32 signext %d, i32 signext %e, i32 signext %f, i32 signext %g, i32 signext %h) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: X2IsCallerSaved:
 | 
			
		||||
; CHECK-ALL-LABEL: X2IsCallerSaved:
 | 
			
		||||
; CHECK-S:         .localentry X2IsCallerSaved, 1
 | 
			
		||||
; CHECK-S-NEXT:  # %bb.0: # %entry
 | 
			
		||||
; CHECK-P9-NOT:    .localentry
 | 
			
		||||
; CHECK-ALL:       # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    std r29, -24(r1) # 8-byte Folded Spill
 | 
			
		||||
; CHECK-S-NEXT:    add r11, r4, r3
 | 
			
		||||
; CHECK-S-NEXT:    subf r29, r9, r8
 | 
			
		||||
| 
						 | 
				
			
			@ -146,11 +152,11 @@ entry:
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @UsesX2AsTOC() local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: UsesX2AsTOC:
 | 
			
		||||
; CHECK-ALL-LABEL: UsesX2AsTOC:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep6@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep6@l
 | 
			
		||||
; CHECK-S:       .localentry     UsesX2AsTOC, .Lfunc_lep6-.Lfunc_gep6
 | 
			
		||||
; CHECK-S:       # %bb.0: # %entry
 | 
			
		||||
; CHECK-ALL:       # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    addis r3, r2, global_int@toc@ha
 | 
			
		||||
; CHECK-S-NEXT:    lwa r3, global_int@toc@l(r3)
 | 
			
		||||
; CHECK-S-NEXT:    blr
 | 
			
		||||
| 
						 | 
				
			
			@ -161,9 +167,9 @@ entry:
 | 
			
		|||
 | 
			
		||||
 | 
			
		||||
define dso_local double @UsesX2AsConstPoolTOC() local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: UsesX2AsConstPoolTOC:
 | 
			
		||||
; CHECK-ALL-LABEL: UsesX2AsConstPoolTOC:
 | 
			
		||||
; CHECK-S-NOT:       .localentry
 | 
			
		||||
; CHECK-S:       # %bb.0: # %entry
 | 
			
		||||
; CHECK-ALL:       # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    plfd f1, .LCPI7_0@PCREL(0), 1
 | 
			
		||||
; CHECK-S-NEXT:    blr
 | 
			
		||||
entry:
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -1,6 +1,9 @@
 | 
			
		|||
; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu \
 | 
			
		||||
; RUN:   -mcpu=future -ppc-asm-full-reg-names < %s \
 | 
			
		||||
; RUN:   | FileCheck %s --check-prefix=CHECK-S
 | 
			
		||||
; RUN:   | FileCheck %s --check-prefixes=CHECK-S,CHECK-ALL
 | 
			
		||||
; RUN: llc -verify-machineinstrs -mtriple=powerpc64le-unknown-linux-gnu \
 | 
			
		||||
; RUN:   -mcpu=pwr9 -ppc-asm-full-reg-names < %s \
 | 
			
		||||
; RUN:   | FileCheck %s --check-prefixes=CHECK-P9,CHECK-ALL
 | 
			
		||||
 | 
			
		||||
@globalVar = common dso_local local_unnamed_addr global i32 0, align 4
 | 
			
		||||
@externGlobalVar = external local_unnamed_addr global i32, align 4
 | 
			
		||||
| 
						 | 
				
			
			@ -11,7 +14,7 @@
 | 
			
		|||
; it. The only thing we really need to check here is that st_other=0 and
 | 
			
		||||
; so we make sure that there is no .localentry.
 | 
			
		||||
define dso_local signext i32 @localCall(i32 signext %a) local_unnamed_addr #0 {
 | 
			
		||||
; CHECK-S-LABEL: localCall:
 | 
			
		||||
; CHECK-ALL-LABEL: localCall:
 | 
			
		||||
; CHECK-S-NOT:   .localentry
 | 
			
		||||
; CHECK-S:         addi r3, r3, 5
 | 
			
		||||
; CHECK-S-NEXT:    extsw r3, r3
 | 
			
		||||
| 
						 | 
				
			
			@ -22,7 +25,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @DirectCallLocal1(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: DirectCallLocal1:
 | 
			
		||||
; CHECK-ALL-LABEL: DirectCallLocal1:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep1@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep1@l
 | 
			
		||||
; CHECK-S:         .localentry     DirectCallLocal1, .Lfunc_lep1-.Lfunc_gep1
 | 
			
		||||
| 
						 | 
				
			
			@ -53,7 +56,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @DirectCallLocal2(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: DirectCallLocal2:
 | 
			
		||||
; CHECK-ALL-LABEL: DirectCallLocal2:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep2@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep2@l
 | 
			
		||||
; CHECK-S:         .localentry     DirectCallLocal2, .Lfunc_lep2-.Lfunc_gep2
 | 
			
		||||
| 
						 | 
				
			
			@ -85,9 +88,9 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @DirectCallLocalNoGlobal(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: DirectCallLocalNoGlobal:
 | 
			
		||||
; CHECK-ALL-LABEL: DirectCallLocalNoGlobal:
 | 
			
		||||
; CHECK-S:         .localentry DirectCallLocalNoGlobal, 1
 | 
			
		||||
; CHECK-S-NEXT:  # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    mflr r0
 | 
			
		||||
; CHECK-S-NEXT:    .cfi_def_cfa_offset 48
 | 
			
		||||
; CHECK-S-NEXT:    .cfi_offset lr, 16
 | 
			
		||||
| 
						 | 
				
			
			@ -111,7 +114,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @DirectCallExtern1(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: DirectCallExtern1:
 | 
			
		||||
; CHECK-ALL-LABEL: DirectCallExtern1:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep4@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep4@l
 | 
			
		||||
; CHECK-S:         .localentry     DirectCallExtern1, .Lfunc_lep4-.Lfunc_gep4
 | 
			
		||||
| 
						 | 
				
			
			@ -144,7 +147,7 @@ entry:
 | 
			
		|||
declare signext i32 @externCall(i32 signext) local_unnamed_addr
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @DirectCallExtern2(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: DirectCallExtern2:
 | 
			
		||||
; CHECK-ALL-LABEL: DirectCallExtern2:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep5@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep5@l
 | 
			
		||||
; CHECK-S:         .localentry     DirectCallExtern2, .Lfunc_lep5-.Lfunc_gep5
 | 
			
		||||
| 
						 | 
				
			
			@ -176,9 +179,10 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @DirectCallExternNoGlobal(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: DirectCallExternNoGlobal:
 | 
			
		||||
; CHECK-ALL-LABEL: DirectCallExternNoGlobal:
 | 
			
		||||
; CHECK-S:         .localentry DirectCallExternNoGlobal, 1
 | 
			
		||||
; CHECK-S-NEXT:  # %bb.0: # %entry
 | 
			
		||||
; CHECK-P9:        .localentry DirectCallExternNoGlobal, .Lfunc_lep6-.Lfunc_gep6
 | 
			
		||||
; CHECK-ALL:       # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    mflr r0
 | 
			
		||||
; CHECK-S-NEXT:    .cfi_def_cfa_offset 48
 | 
			
		||||
; CHECK-S-NEXT:    .cfi_offset lr, 16
 | 
			
		||||
| 
						 | 
				
			
			@ -202,7 +206,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @TailCallLocal1(i32 signext %a) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: TailCallLocal1:
 | 
			
		||||
; CHECK-ALL-LABEL: TailCallLocal1:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep7@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep7@l
 | 
			
		||||
; CHECK-S:         .localentry     TailCallLocal1, .Lfunc_lep7-.Lfunc_gep7
 | 
			
		||||
| 
						 | 
				
			
			@ -230,7 +234,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @TailCallLocal2(i32 signext %a) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: TailCallLocal2:
 | 
			
		||||
; CHECK-ALL-LABEL: TailCallLocal2:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep8@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep8@l
 | 
			
		||||
; CHECK-S:         .localentry     TailCallLocal2, .Lfunc_lep8-.Lfunc_gep8
 | 
			
		||||
| 
						 | 
				
			
			@ -259,9 +263,10 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @TailCallLocalNoGlobal(i32 signext %a) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: TailCallLocalNoGlobal:
 | 
			
		||||
; CHECK-ALL-LABEL: TailCallLocalNoGlobal:
 | 
			
		||||
; CHECK-S:         .localentry TailCallLocalNoGlobal, 1
 | 
			
		||||
; CHECK-S-NEXT:  # %bb.0: # %entry
 | 
			
		||||
; CHECK-P9:        .localentry TailCallLocalNoGlobal, .Lfunc_lep9-.Lfunc_gep9
 | 
			
		||||
; CHECK-ALL:       # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    mflr r0
 | 
			
		||||
; CHECK-S-NEXT:    std r0, 16(r1)
 | 
			
		||||
; CHECK-S-NEXT:    stdu r1, -32(r1)
 | 
			
		||||
| 
						 | 
				
			
			@ -278,7 +283,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @TailCallExtern1(i32 signext %a) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: TailCallExtern1:
 | 
			
		||||
; CHECK-ALL-LABEL: TailCallExtern1:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep10@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep10@l
 | 
			
		||||
; CHECK-S:         .localentry     TailCallExtern1, .Lfunc_lep10-.Lfunc_gep10
 | 
			
		||||
| 
						 | 
				
			
			@ -306,7 +311,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @TailCallExtern2(i32 signext %a) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: TailCallExtern2:
 | 
			
		||||
; CHECK-ALL-LABEL: TailCallExtern2:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep11@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep11@l
 | 
			
		||||
; CHECK-S:         .localentry     TailCallExtern2, .Lfunc_lep11-.Lfunc_gep11
 | 
			
		||||
| 
						 | 
				
			
			@ -335,7 +340,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @TailCallExternNoGlobal(i32 signext %a) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: TailCallExternNoGlobal:
 | 
			
		||||
; CHECK-ALL-LABEL: TailCallExternNoGlobal:
 | 
			
		||||
; CHECK-S:         .localentry TailCallExternNoGlobal, 1
 | 
			
		||||
; CHECK-S-NEXT:  # %bb.0: # %entry
 | 
			
		||||
; CHECK-S-NEXT:    mflr r0
 | 
			
		||||
| 
						 | 
				
			
			@ -354,7 +359,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @IndirectCall1(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: IndirectCall1:
 | 
			
		||||
; CHECK-ALL-LABEL: IndirectCall1:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep13@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep13@l
 | 
			
		||||
; CHECK-S:         .localentry     IndirectCall1, .Lfunc_lep13-.Lfunc_gep13
 | 
			
		||||
| 
						 | 
				
			
			@ -390,7 +395,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @IndirectCall2(i32 signext %a, i32 signext %b) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: IndirectCall2:
 | 
			
		||||
; CHECK-ALL-LABEL: IndirectCall2:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep14@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep14@l
 | 
			
		||||
; CHECK-S:         .localentry     IndirectCall2, .Lfunc_lep14-.Lfunc_gep14
 | 
			
		||||
| 
						 | 
				
			
			@ -427,7 +432,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @IndirectCall3(i32 signext %a, i32 signext %b, i32 (i32)* nocapture %call_param) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: IndirectCall3:
 | 
			
		||||
; CHECK-ALL-LABEL: IndirectCall3:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep15@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep15@l
 | 
			
		||||
; CHECK-S:         .localentry     IndirectCall3, .Lfunc_lep15-.Lfunc_gep15
 | 
			
		||||
| 
						 | 
				
			
			@ -461,7 +466,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @IndirectCallNoGlobal(i32 signext %a, i32 signext %b, i32 (i32)* nocapture %call_param) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: IndirectCallNoGlobal:
 | 
			
		||||
; CHECK-ALL-LABEL: IndirectCallNoGlobal:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep16@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep16@l
 | 
			
		||||
; CHECK-S:         .localentry     IndirectCallNoGlobal, .Lfunc_lep16-.Lfunc_gep16
 | 
			
		||||
| 
						 | 
				
			
			@ -493,7 +498,7 @@ entry:
 | 
			
		|||
}
 | 
			
		||||
 | 
			
		||||
define dso_local signext i32 @IndirectCallOnly(i32 signext %a, i32 (i32)* nocapture %call_param) local_unnamed_addr {
 | 
			
		||||
; CHECK-S-LABEL: IndirectCallOnly:
 | 
			
		||||
; CHECK-ALL-LABEL: IndirectCallOnly:
 | 
			
		||||
; CHECK-S:         addis r2, r12, .TOC.-.Lfunc_gep17@ha
 | 
			
		||||
; CHECK-S-NEXT:    addi r2, r2, .TOC.-.Lfunc_gep17@l
 | 
			
		||||
; CHECK-S:         .localentry     IndirectCallOnly, .Lfunc_lep17-.Lfunc_gep17
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue