brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.2 KiB · 50c676c Raw
70 lines · plain
1; RUN: llc -mtriple thumbv7em-apple-darwin -o - < %s | FileCheck %s2 3%"struct.s1" = type { [19 x i32] }4 5define void @f0(ptr byval(%"struct.s1") %0, ptr %1) #1 {6; CHECK-LABEL: _f0:                                    @ @f07; CHECK-NEXT:  @ %bb.0:8; CHECK-NEXT:  	sub	sp, #169; CHECK-NEXT:  	push	{r4, lr}10; CHECK-NEXT:  	sub	sp, #7611; CHECK-NEXT:  	add.w	r9, sp, #8412; CHECK-NEXT:  	stm.w	r9, {r0, r1, r2, r3}13; CHECK-NEXT:  	mov	r0, sp14; CHECK-NEXT:  	add	r1, sp, #8415; CHECK-NEXT:  	movs	r2, #7616; CHECK-NEXT:  	mov	r3, r017; CHECK-NEXT:  LBB0_1:                                 @ =>This Inner Loop Header: Depth=118; CHECK-NEXT:  	ldr	r4, [r1], #419; CHECK-NEXT:  	subs	r2, #420; CHECK-NEXT:  	str	r4, [r3], #421; CHECK-NEXT:  	bne	LBB0_122; CHECK-NEXT:  @ %bb.2:23; CHECK-NEXT:  	add.w	r1, r0, #1224; CHECK-NEXT:  	add	r2, sp, #10025; CHECK-NEXT:  	ldr	r0, [sp, #160]26; CHECK-NEXT:  	ldr	r3, [r1], #427; CHECK-NEXT:  	str	r3, [r2], #428; CHECK-NEXT:  	ldr	r3, [r1], #429; CHECK-NEXT:  	str	r3, [r2], #430; CHECK-NEXT:  	ldr	r3, [r1], #431; CHECK-NEXT:  	str	r3, [r2], #432; CHECK-NEXT:  	ldr	r3, [r1], #433; CHECK-NEXT:  	str	r3, [r2], #434; CHECK-NEXT:  	ldr	r3, [r1], #435; CHECK-NEXT:  	str	r3, [r2], #436; CHECK-NEXT:  	ldr	r3, [r1], #437; CHECK-NEXT:  	str	r3, [r2], #438; CHECK-NEXT:  	ldr	r3, [r1], #439; CHECK-NEXT:  	str	r3, [r2], #440; CHECK-NEXT:  	ldr	r3, [r1], #441; CHECK-NEXT:  	str	r3, [r2], #442; CHECK-NEXT:  	ldr	r3, [r1], #443; CHECK-NEXT:  	str	r3, [r2], #444; CHECK-NEXT:  	ldr	r3, [r1], #445; CHECK-NEXT:  	str	r3, [r2], #446; CHECK-NEXT:  	ldr	r3, [r1], #447; CHECK-NEXT:  	str	r3, [r2], #448; CHECK-NEXT:  	ldr	r3, [r1], #449; CHECK-NEXT:  	str	r3, [r2], #450; CHECK-NEXT:  	ldr	r3, [r1], #451; CHECK-NEXT:  	str	r3, [r2], #452; CHECK-NEXT:  	ldr	r3, [r1], #453; CHECK-NEXT:  	str	r3, [r2], #454; CHECK-NEXT:  	ldr	r3, [r1], #455; CHECK-NEXT:  	str	r3, [r2], #456; CHECK-NEXT:  	ldr	r3, [r1], #457; CHECK-NEXT:  	str	r3, [r2], #458; CHECK-NEXT:  	ldm.w	sp, {r1, r2, r3}59; CHECK-NEXT:  	add	sp, #7660; CHECK-NEXT:  	pop.w	{r4, lr}61; CHECK-NEXT:  	add	sp, #1662; CHECK-NEXT:  	b.w	_f163  tail call  void @f1(ptr %1, ptr byval(%"struct.s1") %0)64  ret void65}66 67declare void @f1(ptr, ptr)68 69attributes #1 = { nounwind "frame-pointes"="non-leaf" }70