Skip to content

Instantly share code, notes, and snippets.

@stffrdhrn
Created May 16, 2016 21:55
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save stffrdhrn/10ad7ce095c36967107ff851ff62001a to your computer and use it in GitHub Desktop.
Save stffrdhrn/10ad7ce095c36967107ff851ff62001a to your computer and use it in GitHub Desktop.
testsuite/outputs/gdb.base/gnu_vector/gnu_vector: file format elf32-or1k
; removed libgloss, libc stuff
; Investigating issues in openrisc gdb tests.
; The call to or1k_push_dummy_call will build a dummy stack for a debug function call
; it doesnt work so well forvector args or long doubles
; Below assembly is extracted to help understand how gcc builds and uses stacks for
; the function calls in question
;print add_various_floatvecs(2, f4a, f4b)
;core: 4 byte read to unmapped address 0x3f800000 at 0x27bc
; - here the code is expecting arg to be address, but we pass literal [3f,80,0,0])
;print add_singlevecs((char1) {6}, (int1) {12}, (double1) {24})
;core: 4 byte misaligned write to address 0x6 at 0x2aac
; - here the code is expecting arg 1 to be a pointer, but we pass literal 0x6 [6,0,0,0].
;print add_some_intvecs(i4a, i4b, 3 * i4a)
;That operation is not available on integers of more than 8 bytes.
; - here the or1k_push_dummy_call cannot place args > 8 to the dummy call
int4
add_some_intvecs (int4 a, int4 b, int4 c)
{
return a + b + c;
}
0000239c <add_some_intvecs>:
239c: d7 e1 17 fc l.sw -4(r1),r2
23a0: 9c 41 00 00 l.addi r2,r1,0
23a4: d7 e1 77 f8 l.sw -8(r1),r14
23a8: 9c 21 ff c4 l.addi r1,r1,-60
23ac: d7 e2 1f f4 l.sw -12(r2),r3 ; save r3 (return location)
23b0: a9 c4 00 00 l.ori r14,r4,0x0 ; save r4 to r14 (arg1 pointer)
23b4: 84 6e 00 00 l.lwz r3,0(r14) ; move from pointer to SF
23b8: d7 e2 1f e4 l.sw -28(r2),r3
23bc: 84 6e 00 04 l.lwz r3,4(r14)
23c0: d7 e2 1f e8 l.sw -24(r2),r3
23c4: 84 6e 00 08 l.lwz r3,8(r14)
23c8: d7 e2 1f ec l.sw -20(r2),r3
23cc: 84 6e 00 0c l.lwz r3,12(r14)
23d0: d7 e2 1f f0 l.sw -16(r2),r3
23d4: a9 c5 00 00 l.ori r14,r5,0x0 ; SAVE arg2 to SF
23d8: 84 6e 00 00 l.lwz r3,0(r14)
23dc: d7 e2 1f d4 l.sw -44(r2),r3
23e0: 84 6e 00 04 l.lwz r3,4(r14)
23e4: d7 e2 1f d8 l.sw -40(r2),r3
23e8: 84 6e 00 08 l.lwz r3,8(r14)
23ec: d7 e2 1f dc l.sw -36(r2),r3
23f0: 84 6e 00 0c l.lwz r3,12(r14)
23f4: d7 e2 1f e0 l.sw -32(r2),r3
23f8: a9 c6 00 00 l.ori r14,r6,0x0 ; SAVE arg3 to SF
23fc: 84 6e 00 00 l.lwz r3,0(r14)
2400: d7 e2 1f c4 l.sw -60(r2),r3
2404: 84 6e 00 04 l.lwz r3,4(r14)
2408: d7 e2 1f c8 l.sw -56(r2),r3
240c: 84 6e 00 08 l.lwz r3,8(r14)
2410: d7 e2 1f cc l.sw -52(r2),r3
2414: 84 6e 00 0c l.lwz r3,12(r14)
2418: d7 e2 1f d0 l.sw -48(r2),r3
241c: 84 82 ff e4 l.lwz r4,-28(r2) ; do math LOAD from SF and add
2420: 84 62 ff d4 l.lwz r3,-44(r2)
2424: e1 84 18 00 l.add r12,r4,r3
2428: 84 82 ff e8 l.lwz r4,-24(r2)
242c: 84 62 ff d8 l.lwz r3,-40(r2)
2430: e1 64 18 00 l.add r11,r4,r3
2434: 84 82 ff ec l.lwz r4,-20(r2)
2438: 84 62 ff dc l.lwz r3,-36(r2)
243c: e1 04 18 00 l.add r8,r4,r3
2440: 84 82 ff f0 l.lwz r4,-16(r2)
2444: 84 62 ff e0 l.lwz r3,-32(r2)
2448: e0 e4 18 00 l.add r7,r4,r3
244c: 9c 60 00 00 l.addi r3,r0,0
2450: 9c 80 00 00 l.addi r4,r0,0
2454: 9c a0 00 00 l.addi r5,r0,0
2458: 9c c0 00 00 l.addi r6,r0,0
245c: a8 6c 00 00 l.ori r3,r12,0x0
2460: a8 8b 00 00 l.ori r4,r11,0x0
2464: a8 a8 00 00 l.ori r5,r8,0x0
2468: a8 c7 00 00 l.ori r6,r7,0x0
246c: a9 63 00 00 l.ori r11,r3,0x0
2470: a9 84 00 00 l.ori r12,r4,0x0
2474: a9 a5 00 00 l.ori r13,r5,0x0
2478: a9 c6 00 00 l.ori r14,r6,0x0
247c: a8 8b 00 00 l.ori r4,r11,0x0
2480: 84 62 ff c4 l.lwz r3,-60(r2)
2484: e2 24 18 00 l.add r17,r4,r3
2488: a8 8c 00 00 l.ori r4,r12,0x0
248c: 84 62 ff c8 l.lwz r3,-56(r2)
2490: e1 e4 18 00 l.add r15,r4,r3
2494: a8 8d 00 00 l.ori r4,r13,0x0
2498: 84 62 ff cc l.lwz r3,-52(r2)
249c: e1 04 18 00 l.add r8,r4,r3
24a0: a8 8e 00 00 l.ori r4,r14,0x0
24a4: 84 62 ff d0 l.lwz r3,-48(r2)
24a8: e0 e4 18 00 l.add r7,r4,r3
24ac: 9c 60 00 00 l.addi r3,r0,0
24b0: 9c 80 00 00 l.addi r4,r0,0
24b4: 9c a0 00 00 l.addi r5,r0,0
24b8: 9c c0 00 00 l.addi r6,r0,0
24bc: a8 71 00 00 l.ori r3,r17,0x0
24c0: a8 8f 00 00 l.ori r4,r15,0x0
24c4: a8 a8 00 00 l.ori r5,r8,0x0
24c8: a8 c7 00 00 l.ori r6,r7,0x0
24cc: a9 63 00 00 l.ori r11,r3,0x0
24d0: a9 84 00 00 l.ori r12,r4,0x0
24d4: a9 a5 00 00 l.ori r13,r5,0x0
24d8: a9 c6 00 00 l.ori r14,r6,0x0
24dc: 84 62 ff f4 l.lwz r3,-12(r2)
24e0: a8 8b 00 00 l.ori r4,r11,0x0
24e4: d4 03 20 00 l.sw 0(r3),r4
24e8: a8 8c 00 00 l.ori r4,r12,0x0
24ec: d4 03 20 04 l.sw 4(r3),r4
24f0: a8 8d 00 00 l.ori r4,r13,0x0
24f4: d4 03 20 08 l.sw 8(r3),r4
24f8: a8 8e 00 00 l.ori r4,r14,0x0
24fc: d4 03 20 0c l.sw 12(r3),r4
2500: 85 62 ff f4 l.lwz r11,-12(r2)
2504: a8 22 00 00 l.ori r1,r2,0x0
2508: 84 41 ff fc l.lwz r2,-4(r1)
250c: 85 c1 ff f8 l.lwz r14,-8(r1)
2510: 44 00 48 00 l.jr r9
2514: 15 00 00 00 l.nop 0x0
00002518 <add_many_charvecs>:
2518: d7 e1 17 fc l.sw -4(r1),r2
251c: 9c 41 00 00 l.addi r2,r1,0
2520: 9c 21 ff e4 l.addi r1,r1,-28
2524: d7 e2 1f f8 l.sw -8(r2),r3
2528: d7 e2 27 f4 l.sw -12(r2),r4
252c: d7 e2 2f f0 l.sw -16(r2),r5
2530: d7 e2 37 ec l.sw -20(r2),r6
2534: d7 e2 3f e8 l.sw -24(r2),r7
2538: d7 e2 47 e4 l.sw -28(r2),r8
253c: 84 62 ff f8 l.lwz r3,-8(r2)
2540: 84 82 ff f4 l.lwz r4,-12(r2)
2544: e0 c3 20 05 l.xor r6,r3,r4
2548: 18 e0 7f 7f l.movhi r7,0x7f7f
254c: a8 e7 7f 7f l.ori r7,r7,0x7f7f
2550: e0 a4 38 03 l.and r5,r4,r7
2554: 18 80 7f 7f l.movhi r4,0x7f7f
2558: a8 84 7f 7f l.ori r4,r4,0x7f7f
255c: e0 63 20 03 l.and r3,r3,r4
2560: 18 e0 80 80 l.movhi r7,0x8080
2564: a8 e7 80 80 l.ori r7,r7,0x8080
2568: e0 86 38 03 l.and r4,r6,r7
256c: e0 65 18 00 l.add r3,r5,r3
2570: e0 64 18 05 l.xor r3,r4,r3
2574: a8 83 00 00 l.ori r4,r3,0x0
2578: 84 62 ff f0 l.lwz r3,-16(r2)
257c: e0 c4 18 05 l.xor r6,r4,r3
2580: 18 e0 7f 7f l.movhi r7,0x7f7f
2584: a8 e7 7f 7f l.ori r7,r7,0x7f7f
2588: e0 a3 38 03 l.and r5,r3,r7
258c: 18 e0 7f 7f l.movhi r7,0x7f7f
2590: a8 e7 7f 7f l.ori r7,r7,0x7f7f
2594: e0 64 38 03 l.and r3,r4,r7
2598: 18 e0 80 80 l.movhi r7,0x8080
259c: a8 e7 80 80 l.ori r7,r7,0x8080
25a0: e0 86 38 03 l.and r4,r6,r7
25a4: e0 65 18 00 l.add r3,r5,r3
25a8: e0 64 18 05 l.xor r3,r4,r3
25ac: a8 83 00 00 l.ori r4,r3,0x0
25b0: 84 62 ff ec l.lwz r3,-20(r2)
25b4: e0 c4 18 05 l.xor r6,r4,r3
25b8: 18 e0 7f 7f l.movhi r7,0x7f7f
25bc: a8 e7 7f 7f l.ori r7,r7,0x7f7f
25c0: e0 a3 38 03 l.and r5,r3,r7
25c4: 18 e0 7f 7f l.movhi r7,0x7f7f
25c8: a8 e7 7f 7f l.ori r7,r7,0x7f7f
25cc: e0 64 38 03 l.and r3,r4,r7
25d0: 18 e0 80 80 l.movhi r7,0x8080
25d4: a8 e7 80 80 l.ori r7,r7,0x8080
25d8: e0 86 38 03 l.and r4,r6,r7
25dc: e0 65 18 00 l.add r3,r5,r3
25e0: e0 64 18 05 l.xor r3,r4,r3
25e4: a8 83 00 00 l.ori r4,r3,0x0
25e8: 84 62 ff e8 l.lwz r3,-24(r2)
25ec: e0 c4 18 05 l.xor r6,r4,r3
25f0: 18 e0 7f 7f l.movhi r7,0x7f7f
25f4: a8 e7 7f 7f l.ori r7,r7,0x7f7f
25f8: e0 a3 38 03 l.and r5,r3,r7
25fc: 18 e0 7f 7f l.movhi r7,0x7f7f
2600: a8 e7 7f 7f l.ori r7,r7,0x7f7f
2604: e0 64 38 03 l.and r3,r4,r7
2608: 18 e0 80 80 l.movhi r7,0x8080
260c: a8 e7 80 80 l.ori r7,r7,0x8080
2610: e0 86 38 03 l.and r4,r6,r7
2614: e0 65 18 00 l.add r3,r5,r3
2618: e0 64 18 05 l.xor r3,r4,r3
261c: a8 83 00 00 l.ori r4,r3,0x0
2620: 84 62 ff e4 l.lwz r3,-28(r2)
2624: e0 c4 18 05 l.xor r6,r4,r3
2628: 18 e0 7f 7f l.movhi r7,0x7f7f
262c: a8 e7 7f 7f l.ori r7,r7,0x7f7f
2630: e0 a3 38 03 l.and r5,r3,r7
2634: 18 e0 7f 7f l.movhi r7,0x7f7f
2638: a8 e7 7f 7f l.ori r7,r7,0x7f7f
263c: e0 64 38 03 l.and r3,r4,r7
2640: 18 e0 80 80 l.movhi r7,0x8080
2644: a8 e7 80 80 l.ori r7,r7,0x8080
2648: e0 86 38 03 l.and r4,r6,r7
264c: e0 65 18 00 l.add r3,r5,r3
2650: e0 64 18 05 l.xor r3,r4,r3
2654: a8 83 00 00 l.ori r4,r3,0x0
2658: 84 62 00 00 l.lwz r3,0(r2)
265c: e0 c4 18 05 l.xor r6,r4,r3
2660: 18 e0 7f 7f l.movhi r7,0x7f7f
2664: a8 e7 7f 7f l.ori r7,r7,0x7f7f
2668: e0 a3 38 03 l.and r5,r3,r7
266c: 18 e0 7f 7f l.movhi r7,0x7f7f
2670: a8 e7 7f 7f l.ori r7,r7,0x7f7f
2674: e0 64 38 03 l.and r3,r4,r7
2678: 18 e0 80 80 l.movhi r7,0x8080
267c: a8 e7 80 80 l.ori r7,r7,0x8080
2680: e0 86 38 03 l.and r4,r6,r7
2684: e0 65 18 00 l.add r3,r5,r3
2688: e0 64 18 05 l.xor r3,r4,r3
268c: a8 83 00 00 l.ori r4,r3,0x0
2690: 84 62 00 04 l.lwz r3,4(r2)
2694: e0 c4 18 05 l.xor r6,r4,r3
2698: 18 e0 7f 7f l.movhi r7,0x7f7f
269c: a8 e7 7f 7f l.ori r7,r7,0x7f7f
26a0: e0 a3 38 03 l.and r5,r3,r7
26a4: 18 e0 7f 7f l.movhi r7,0x7f7f
26a8: a8 e7 7f 7f l.ori r7,r7,0x7f7f
26ac: e0 64 38 03 l.and r3,r4,r7
26b0: 18 e0 80 80 l.movhi r7,0x8080
26b4: a8 e7 80 80 l.ori r7,r7,0x8080
26b8: e0 86 38 03 l.and r4,r6,r7
26bc: e0 65 18 00 l.add r3,r5,r3
26c0: e0 64 18 05 l.xor r3,r4,r3
26c4: a8 83 00 00 l.ori r4,r3,0x0
26c8: 84 62 00 08 l.lwz r3,8(r2)
26cc: e0 c4 18 05 l.xor r6,r4,r3
26d0: 18 e0 7f 7f l.movhi r7,0x7f7f
26d4: a8 e7 7f 7f l.ori r7,r7,0x7f7f
26d8: e0 a3 38 03 l.and r5,r3,r7
26dc: 18 e0 7f 7f l.movhi r7,0x7f7f
26e0: a8 e7 7f 7f l.ori r7,r7,0x7f7f
26e4: e0 64 38 03 l.and r3,r4,r7
26e8: 18 e0 80 80 l.movhi r7,0x8080
26ec: a8 e7 80 80 l.ori r7,r7,0x8080
26f0: e0 86 38 03 l.and r4,r6,r7
26f4: e0 65 18 00 l.add r3,r5,r3
26f8: e0 64 18 05 l.xor r3,r4,r3
26fc: a8 83 00 00 l.ori r4,r3,0x0
2700: 84 62 00 0c l.lwz r3,12(r2)
2704: e0 c4 18 05 l.xor r6,r4,r3
2708: 18 e0 7f 7f l.movhi r7,0x7f7f
270c: a8 e7 7f 7f l.ori r7,r7,0x7f7f
2710: e0 a3 38 03 l.and r5,r3,r7
2714: 18 e0 7f 7f l.movhi r7,0x7f7f
2718: a8 e7 7f 7f l.ori r7,r7,0x7f7f
271c: e0 64 38 03 l.and r3,r4,r7
2720: 18 e0 80 80 l.movhi r7,0x8080
2724: a8 e7 80 80 l.ori r7,r7,0x8080
2728: e0 86 38 03 l.and r4,r6,r7
272c: e0 65 18 00 l.add r3,r5,r3
2730: e0 64 18 05 l.xor r3,r4,r3
2734: a9 63 00 00 l.ori r11,r3,0x0
2738: a8 22 00 00 l.ori r1,r2,0x0
273c: 84 41 ff fc l.lwz r2,-4(r1)
2740: 44 00 48 00 l.jr r9
2744: 15 00 00 00 l.nop 0x0
float4
add_various_floatvecs (int n, float4 a, ...)
{
int i;
va_list argp;
va_start (argp, a);
for (i = 1; i < n; i++)
a += va_arg (argp, float4);
va_end (argp);
return a;
}
; float4 : r3 pointer to return location
; n : r4 = n=2
; f4a : r5 = pointer to f4a
; f4b : pointer on stack (r1+0)
00002748 <add_various_floatvecs>:
; callee prologue
2748: d7 e1 17 f8 l.sw -8(r1),r2 ; store fp to stack
274c: 9c 41 00 00 l.addi r2,r1,0 ; fp=sp
2750: d7 e1 4f fc l.sw -4(r1),r9 ;
2754: d7 e1 77 e0 l.sw -32(r1),r14
2758: d7 e1 97 e4 l.sw -28(r1),r18
275c: d7 e1 a7 e8 l.sw -24(r1),r20
2760: d7 e1 b7 ec l.sw -20(r1),r22
2764: d7 e1 c7 f0 l.sw -16(r1),r24
2768: d7 e1 d7 f4 l.sw -12(r1),r26 ;
276c: 9c 21 ff c0 l.addi r1,r1,-64 ; sp = sp-64
; remember in args r3, r4, f5
2770: d7 e2 1f d4 l.sw -44(r2),r3 ; push r3(ret) fp-44 (RETURN)
2774: d7 e2 27 d0 l.sw -48(r2),r4 ; push r4(n) fp-48 (ARG 1)
2778: a9 c5 00 00 l.ori r14,r5,0x0 ; r14 = r5 (f4a) (ARG 2)
277c: ab 41 00 00 l.ori r26,r1,0x0 ; r26 = sp
2780: 9c 21 ff e0 l.addi r1,r1,-32 ; sp = sp-32
2784: a8 61 00 00 l.ori r3,r1,0x0 ;\
2788: 9c 63 00 0f l.addi r3,r3,15 ; > - algng stack?
278c: b8 63 00 44 l.srli r3,r3,0x4 ;/
2790: ba 43 00 04 l.slli r18,r3,0x4 ; r18 = aligned stack
2794: a8 62 00 00 l.ori r3,r2,0x0 ; r3 = fp
; PUSH FP before jump
2798: d7 e2 1f d8 l.sw -40(r2),r3 ; push r3(fp) fp-40
279c: 9c 60 00 01 l.addi r3,r0,1 ; r3 = 1
27a0: d7 e2 1f dc l.sw -36(r2),r3 ; push r3(1) fp-36
27a4: 00 00 00 34 l.j 2874 <add_various_floatvecs+0x12c> ; JUMP down to check (1<n)
27a8: 15 00 00 00 l.nop 0x0
; POP FP (here FP should point to varargs)
27ac: 84 62 ff d8 l.lwz r3,-40(r2) ; JUMP back: r3=fp (fp-40)
27b0: 9c 83 00 04 l.addi r4,r3,4 ; r4=r3+4
27b4: d7 e2 27 d8 l.sw -40(r2),r4 ; push r4 (fp-40)
27b8: 84 63 00 00 l.lwz r3,0(r3) ; r3=*fp
27bc: 84 83 00 00 l.lwz r4,0(r3) ; r4=*r3 (loading f4a); core: 4 byte misaligned read to address 0x21000001 at 0x27bc
27c0: d4 12 20 00 l.sw 0(r18),r4
27c4: 84 83 00 04 l.lwz r4,4(r3)
27c8: d4 12 20 04 l.sw 4(r18),r4
27cc: 84 83 00 08 l.lwz r4,8(r3)
27d0: d4 12 20 08 l.sw 8(r18),r4
27d4: 84 63 00 0c l.lwz r3,12(r3)
27d8: d4 12 18 0c l.sw 12(r18),r3
27dc: 84 72 00 00 l.lwz r3,0(r18)
27e0: 84 8e 00 00 l.lwz r4,0(r14)
27e4: 04 00 02 0f l.jal 3020 <__addsf3>
27e8: 15 00 00 00 l.nop 0x0
27ec: a8 6b 00 00 l.ori r3,r11,0x0
27f0: ab 03 00 00 l.ori r24,r3,0x0
27f4: 84 72 00 04 l.lwz r3,4(r18)
27f8: 84 8e 00 04 l.lwz r4,4(r14)
27fc: 04 00 02 09 l.jal 3020 <__addsf3>
2800: 15 00 00 00 l.nop 0x0
2804: a8 6b 00 00 l.ori r3,r11,0x0
2808: aa c3 00 00 l.ori r22,r3,0x0
280c: 84 72 00 08 l.lwz r3,8(r18)
2810: 84 8e 00 08 l.lwz r4,8(r14)
2814: 04 00 02 03 l.jal 3020 <__addsf3>
2818: 15 00 00 00 l.nop 0x0
281c: a8 6b 00 00 l.ori r3,r11,0x0
2820: aa 83 00 00 l.ori r20,r3,0x0
2824: 84 72 00 0c l.lwz r3,12(r18)
2828: 84 8e 00 0c l.lwz r4,12(r14)
282c: 04 00 01 fd l.jal 3020 <__addsf3>
2830: 15 00 00 00 l.nop 0x0
2834: a8 6b 00 00 l.ori r3,r11,0x0
2838: d7 e2 c7 c0 l.sw -64(r2),r24
283c: d7 e2 b7 c4 l.sw -60(r2),r22
2840: d7 e2 a7 c8 l.sw -56(r2),r20
2844: d7 e2 1f cc l.sw -52(r2),r3
2848: 84 62 ff c0 l.lwz r3,-64(r2)
284c: d4 0e 18 00 l.sw 0(r14),r3
2850: 84 62 ff c4 l.lwz r3,-60(r2)
2854: d4 0e 18 04 l.sw 4(r14),r3
2858: 84 62 ff c8 l.lwz r3,-56(r2)
285c: d4 0e 18 08 l.sw 8(r14),r3
2860: 84 62 ff cc l.lwz r3,-52(r2)
2864: d4 0e 18 0c l.sw 12(r14),r3
2868: 84 62 ff dc l.lwz r3,-36(r2)
286c: 9c 63 00 01 l.addi r3,r3,1
2870: d7 e2 1f dc l.sw -36(r2),r3
2874: 84 82 ff dc l.lwz r4,-36(r2) ; r4 = fp-36 (1)
2878: 84 62 ff d0 l.lwz r3,-48(r2) ; r3 = fp-48 (n)
287c: e5 84 18 00 l.sflts r4,r3 ; f = (1 < n)
2880: 13 ff ff cb l.bf 27ac <add_various_floatvecs+0x64> ; if (f) : 27ac
2884: 15 00 00 00 l.nop 0x0
2888: 84 62 ff d4 l.lwz r3,-44(r2)
288c: 84 8e 00 00 l.lwz r4,0(r14)
2890: d4 03 20 00 l.sw 0(r3),r4
2894: 84 8e 00 04 l.lwz r4,4(r14)
2898: d4 03 20 04 l.sw 4(r3),r4
289c: 84 8e 00 08 l.lwz r4,8(r14)
28a0: d4 03 20 08 l.sw 8(r3),r4
28a4: 84 8e 00 0c l.lwz r4,12(r14)
28a8: d4 03 20 0c l.sw 12(r3),r4
28ac: 85 62 ff d4 l.lwz r11,-44(r2)
28b0: a8 3a 00 00 l.ori r1,r26,0x0
28b4: a8 22 00 00 l.ori r1,r2,0x0
28b8: 84 41 ff f8 l.lwz r2,-8(r1)
28bc: 85 21 ff fc l.lwz r9,-4(r1)
28c0: 85 c1 ff e0 l.lwz r14,-32(r1)
28c4: 86 41 ff e4 l.lwz r18,-28(r1)
28c8: 86 81 ff e8 l.lwz r20,-24(r1)
28cc: 86 c1 ff ec l.lwz r22,-20(r1)
28d0: 87 01 ff f0 l.lwz r24,-16(r1)
28d4: 87 41 ff f4 l.lwz r26,-12(r1)
28d8: 44 00 48 00 l.jr r9
28dc: 15 00 00 00 l.nop 0x0
000028e0 <add_structvecs>:
28e0: d7 e1 17 fc l.sw -4(r1),r2
28e4: 9c 41 00 00 l.addi r2,r1,0
28e8: d7 e1 77 f8 l.sw -8(r1),r14
28ec: 9c 21 ff e4 l.addi r1,r1,-28
28f0: d7 e2 1f f4 l.sw -12(r2),r3
28f4: d7 e2 27 ec l.sw -20(r2),r4
28f8: d7 e2 2f f0 l.sw -16(r2),r5
28fc: a9 c6 00 00 l.ori r14,r6,0x0
2900: 84 6e 00 00 l.lwz r3,0(r14)
2904: 84 8e 00 04 l.lwz r4,4(r14)
2908: d7 e2 1f e4 l.sw -28(r2),r3
290c: d7 e2 27 e8 l.sw -24(r2),r4
2910: a9 c7 00 00 l.ori r14,r7,0x0
2914: a9 81 00 00 l.ori r12,r1,0x0
2918: 9c 21 ff f0 l.addi r1,r1,-16
291c: a8 61 00 00 l.ori r3,r1,0x0
2920: 9c 63 00 07 l.addi r3,r3,7
2924: b8 63 00 43 l.srli r3,r3,0x3
2928: b8 a3 00 03 l.slli r5,r3,0x3
292c: 84 62 ff e4 l.lwz r3,-28(r2)
2930: 84 82 ff e8 l.lwz r4,-24(r2)
2934: a8 e3 00 00 l.ori r7,r3,0x0
2938: 84 c2 ff ec l.lwz r6,-20(r2)
293c: e0 e7 30 00 l.add r7,r7,r6
2940: 84 62 ff f0 l.lwz r3,-16(r2)
2944: e0 c4 18 00 l.add r6,r4,r3
2948: 9c 60 00 00 l.addi r3,r0,0
294c: 9c 80 00 00 l.addi r4,r0,0
2950: a8 67 00 00 l.ori r3,r7,0x0
2954: a8 86 00 00 l.ori r4,r6,0x0
2958: e0 c3 00 04 l.or r6,r3,r0
295c: e0 e4 00 04 l.or r7,r4,r0
2960: 84 6e 00 00 l.lwz r3,0(r14)
2964: 84 8e 00 04 l.lwz r4,4(r14)
2968: a9 66 00 00 l.ori r11,r6,0x0
296c: a9 03 00 00 l.ori r8,r3,0x0
2970: e1 0b 40 00 l.add r8,r11,r8
2974: a8 c7 00 00 l.ori r6,r7,0x0
2978: a8 64 00 00 l.ori r3,r4,0x0
297c: e0 c6 18 00 l.add r6,r6,r3
2980: 9c 60 00 00 l.addi r3,r0,0
2984: 9c 80 00 00 l.addi r4,r0,0
2988: a8 68 00 00 l.ori r3,r8,0x0
298c: a8 86 00 00 l.ori r4,r6,0x0
2990: e0 c3 00 04 l.or r6,r3,r0
2994: e0 e4 00 04 l.or r7,r4,r0
2998: 84 6e 00 08 l.lwz r3,8(r14)
299c: 84 8e 00 0c l.lwz r4,12(r14)
29a0: a9 66 00 00 l.ori r11,r6,0x0
29a4: a9 03 00 00 l.ori r8,r3,0x0
29a8: e1 0b 40 00 l.add r8,r11,r8
29ac: a8 c7 00 00 l.ori r6,r7,0x0
29b0: a8 64 00 00 l.ori r3,r4,0x0
29b4: e0 c6 18 00 l.add r6,r6,r3
29b8: 9c 60 00 00 l.addi r3,r0,0
29bc: 9c 80 00 00 l.addi r4,r0,0
29c0: a8 68 00 00 l.ori r3,r8,0x0
29c4: a8 86 00 00 l.ori r4,r6,0x0
29c8: d4 05 18 00 l.sw 0(r5),r3
29cc: d4 05 20 04 l.sw 4(r5),r4
29d0: 84 62 ff f4 l.lwz r3,-12(r2)
29d4: 84 c5 00 00 l.lwz r6,0(r5)
29d8: 84 e5 00 04 l.lwz r7,4(r5)
29dc: d4 03 30 00 l.sw 0(r3),r6
29e0: d4 03 38 04 l.sw 4(r3),r7
29e4: 85 62 ff f4 l.lwz r11,-12(r2)
29e8: a8 2c 00 00 l.ori r1,r12,0x0
29ec: a8 22 00 00 l.ori r1,r2,0x0
29f0: 84 41 ff fc l.lwz r2,-4(r1)
29f4: 85 c1 ff f8 l.lwz r14,-8(r1)
29f8: 44 00 48 00 l.jr r9
29fc: 15 00 00 00 l.nop 0x0
double1
add_singlevecs (char1 a, int1 b, double1 c)
{
return (double1) {a[0] + b[0] + c[0]};
}
00002a00 <add_singlevecs>:
; prologue
2a00: d7 e1 17 f8 l.sw -8(r1),r2
2a04: 9c 41 00 00 l.addi r2,r1,0
2a08: d7 e1 4f fc l.sw -4(r1),r9
2a0c: d7 e1 77 f0 l.sw -16(r1),r14
2a10: d7 e1 97 f4 l.sw -12(r1),r18
2a14: 9c 21 ff d4 l.addi r1,r1,-44
; Save registers args
2a18: d7 e2 1f ec l.sw -20(r2),r3 ; RETURN struct ptr
2a1c: db e2 27 eb l.sb -21(r2),r4 ; arg1 (char) 1 reg
2a20: d7 e2 2f e4 l.sw -28(r2),r5 ; arg2 (int) 1 reg
2a24: d7 e2 37 dc l.sw -36(r2),r6 ; \__ arg3 (double) accross 2 regs
2a28: d7 e2 3f e0 l.sw -32(r2),r7 ; /
2a2c: aa 41 00 00 l.ori r18,r1,0x0
2a30: 9c 21 ff f0 l.addi r1,r1,-16 ; make room on stack
2a34: a8 61 00 00 l.ori r3,r1,0x0 ;\
2a38: 9c 63 00 07 l.addi r3,r3,7 ; > stack alignment into r3
2a3c: b8 63 00 43 l.srli r3,r3,0x3 ;/
2a40: b9 c3 00 03 l.slli r14,r3,0x3 ; r14 = aligned stack
2a44: 90 62 ff eb l.lbs r3,-21(r2) ; r3 = arg1
2a48: a8 83 00 00 l.ori r4,r3,0x0 ; r4 = r3
2a4c: 84 62 ff e4 l.lwz r3,-28(r2) ; r3 = arg2
2a50: e0 64 18 00 l.add r3,r4,r3 ; r3 = arg1 + arg2
2a54: 04 00 05 cc l.jal 4184 <__floatsidf> ; covert r3 to double
2a58: 15 00 00 00 l.nop 0x0
2a5c: e0 eb 00 04 l.or r7,r11,r0 ; \___ results of conversion in 2 regs
2a60: e1 0c 00 04 l.or r8,r12,r0 ; /
2a64: 84 62 ff dc l.lwz r3,-36(r2) ; \___ load arg3 from Frame
2a68: 84 82 ff e0 l.lwz r4,-32(r2) ; /
2a6c: e0 a3 00 04 l.or r5,r3,r0 ; \
2a70: e0 c4 00 04 l.or r6,r4,r0 ; | prepare 2 double args in
2a74: e0 67 00 04 l.or r3,r7,r0 ; | r3,r4,r5,r6
2a78: e0 88 00 04 l.or r4,r8,r0 ; /
2a7c: 04 00 02 f7 l.jal 3658 <__adddf3>
2a80: 15 00 00 00 l.nop 0x0
2a84: e0 6b 00 04 l.or r3,r11,r0 ;\____ move result to (r3,r4)
2a88: e0 8c 00 04 l.or r4,r12,r0 ;/
2a8c: d7 e2 1f d4 l.sw -44(r2),r3 ;\____ store result to Frame
2a90: d7 e2 27 d8 l.sw -40(r2),r4 ;/
2a94: 84 62 ff d4 l.lwz r3,-44(r2) ;\
2a98: d4 0e 18 00 l.sw 0(r14),r3 ;| move result from Frame to stack
2a9c: 84 62 ff d8 l.lwz r3,-40(r2) ;|
2aa0: d4 0e 18 04 l.sw 4(r14),r3 ;/
2aa4: 84 62 ff ec l.lwz r3,-20(r2) ; R3 = pointer to return value
2aa8: 84 8e 00 00 l.lwz r4,0(r14) ; \ Store result to return pointer
2aac: d4 03 20 00 l.sw 0(r3),r4 ; / FAIL Getting misaligned write here
2ab0: 84 8e 00 04 l.lwz r4,4(r14)
2ab4: d4 03 20 04 l.sw 4(r3),r4
2ab8: 85 62 ff ec l.lwz r11,-20(r2)
2abc: a8 32 00 00 l.ori r1,r18,0x0
2ac0: a8 22 00 00 l.ori r1,r2,0x0
2ac4: 84 41 ff f8 l.lwz r2,-8(r1)
2ac8: 85 21 ff fc l.lwz r9,-4(r1)
2acc: 85 c1 ff f0 l.lwz r14,-16(r1)
2ad0: 86 41 ff f4 l.lwz r18,-12(r1)
2ad4: 44 00 48 00 l.jr r9
2ad8: 15 00 00 00 l.nop 0x0
int
main ()
{
int4 res;
res = add_some_intvecs (i4a, i4a + i4b, i4b);
res = add_some_intvecs (i4a, i4a + i4b, i4b);
add_some_intvecs (i4a, i4a + i4b, i4b);
add_various_floatvecs(2, f4a, f4b);
return 0;
}
00002adc <main>:
2adc: d7 e1 17 f8 l.sw -8(r1),r2
2ae0: 9c 41 00 00 l.addi r2,r1,0
2ae4: d7 e1 4f fc l.sw -4(r1),r9
2ae8: d7 e1 77 e0 l.sw -32(r1),r14
2aec: d7 e1 97 e4 l.sw -28(r1),r18
2af0: d7 e1 a7 e8 l.sw -24(r1),r20
2af4: d7 e1 b7 ec l.sw -20(r1),r22
2af8: d7 e1 c7 f0 l.sw -16(r1),r24
2afc: d7 e1 d7 f4 l.sw -12(r1),r26
2b00: 9c 21 ff 6c l.addi r1,r1,-148
2b04: ab 41 00 00 l.ori r26,r1,0x0
2b08: 9c 21 ff c0 l.addi r1,r1,-64
2b0c: 9c 61 00 04 l.addi r3,r1,4
2b10: 9c 63 00 0f l.addi r3,r3,15
2b14: b8 63 00 44 l.srli r3,r3,0x4
2b18: b9 c3 00 04 l.slli r14,r3,0x4
2b1c: 18 60 00 00 l.movhi r3,0x0
2b20: a8 63 60 50 l.ori r3,r3,0x6050
2b24: 86 23 00 00 l.lwz r17,0(r3)
2b28: 86 43 00 04 l.lwz r18,4(r3)
2b2c: 86 63 00 08 l.lwz r19,8(r3)
2b30: 86 83 00 0c l.lwz r20,12(r3)
2b34: 18 60 00 00 l.movhi r3,0x0
2b38: a8 63 60 50 l.ori r3,r3,0x6050
2b3c: 86 a3 00 00 l.lwz r21,0(r3)
2b40: 86 c3 00 04 l.lwz r22,4(r3)
2b44: 86 e3 00 08 l.lwz r23,8(r3)
2b48: 87 03 00 0c l.lwz r24,12(r3)
2b4c: 18 e0 00 00 l.movhi r7,0x0
2b50: a8 e7 60 60 l.ori r7,r7,0x6060
2b54: 84 67 00 00 l.lwz r3,0(r7)
2b58: 84 87 00 04 l.lwz r4,4(r7)
2b5c: 84 a7 00 08 l.lwz r5,8(r7)
2b60: 84 c7 00 0c l.lwz r6,12(r7)
2b64: a9 15 00 00 l.ori r8,r21,0x0
2b68: a8 e3 00 00 l.ori r7,r3,0x0
2b6c: e1 88 38 00 l.add r12,r8,r7
2b70: a9 16 00 00 l.ori r8,r22,0x0
2b74: a8 e4 00 00 l.ori r7,r4,0x0
2b78: e1 68 38 00 l.add r11,r8,r7
2b7c: a9 17 00 00 l.ori r8,r23,0x0
2b80: a8 e5 00 00 l.ori r7,r5,0x0
2b84: e1 08 38 00 l.add r8,r8,r7
2b88: a8 f8 00 00 l.ori r7,r24,0x0
2b8c: a8 66 00 00 l.ori r3,r6,0x0
2b90: e0 e7 18 00 l.add r7,r7,r3
2b94: 9c 60 00 00 l.addi r3,r0,0
2b98: 9c 80 00 00 l.addi r4,r0,0
2b9c: 9c a0 00 00 l.addi r5,r0,0
2ba0: 9c c0 00 00 l.addi r6,r0,0
2ba4: a8 6c 00 00 l.ori r3,r12,0x0
2ba8: a8 8b 00 00 l.ori r4,r11,0x0
2bac: a8 a8 00 00 l.ori r5,r8,0x0
2bb0: a8 c7 00 00 l.ori r6,r7,0x0
2bb4: aa a3 00 00 l.ori r21,r3,0x0
2bb8: aa c4 00 00 l.ori r22,r4,0x0
2bbc: aa e5 00 00 l.ori r23,r5,0x0
2bc0: ab 06 00 00 l.ori r24,r6,0x0
2bc4: 18 e0 00 00 l.movhi r7,0x0
2bc8: a8 e7 60 60 l.ori r7,r7,0x6060
2bcc: 84 67 00 00 l.lwz r3,0(r7)
2bd0: 84 87 00 04 l.lwz r4,4(r7)
2bd4: 84 a7 00 08 l.lwz r5,8(r7)
2bd8: 84 c7 00 0c l.lwz r6,12(r7)
2bdc: 9c e2 ff d0 l.addi r7,r2,-48
2be0: a9 11 00 00 l.ori r8,r17,0x0
2be4: d7 e2 47 c0 l.sw -64(r2),r8
2be8: a9 12 00 00 l.ori r8,r18,0x0
2bec: d7 e2 47 c4 l.sw -60(r2),r8
2bf0: a9 13 00 00 l.ori r8,r19,0x0
2bf4: d7 e2 47 c8 l.sw -56(r2),r8
2bf8: a9 14 00 00 l.ori r8,r20,0x0
2bfc: d7 e2 47 cc l.sw -52(r2),r8
2c00: a9 15 00 00 l.ori r8,r21,0x0
2c04: d7 e2 47 b0 l.sw -80(r2),r8
2c08: a9 16 00 00 l.ori r8,r22,0x0
2c0c: d7 e2 47 b4 l.sw -76(r2),r8
2c10: a9 17 00 00 l.ori r8,r23,0x0
2c14: d7 e2 47 b8 l.sw -72(r2),r8
2c18: a9 18 00 00 l.ori r8,r24,0x0
2c1c: d7 e2 47 bc l.sw -68(r2),r8
2c20: a9 03 00 00 l.ori r8,r3,0x0
2c24: d7 e2 47 a0 l.sw -96(r2),r8
2c28: a9 04 00 00 l.ori r8,r4,0x0
2c2c: d7 e2 47 a4 l.sw -92(r2),r8
2c30: a9 05 00 00 l.ori r8,r5,0x0
2c34: d7 e2 47 a8 l.sw -88(r2),r8
2c38: a8 66 00 00 l.ori r3,r6,0x0
2c3c: d7 e2 1f ac l.sw -84(r2),r3
2c40: 9c a2 ff a0 l.addi r5,r2,-96
2c44: 9c 82 ff b0 l.addi r4,r2,-80
2c48: 9c 62 ff c0 l.addi r3,r2,-64
2c4c: a8 c5 00 00 l.ori r6,r5,0x0
2c50: a8 a4 00 00 l.ori r5,r4,0x0
2c54: a8 83 00 00 l.ori r4,r3,0x0
2c58: a8 67 00 00 l.ori r3,r7,0x0
2c5c: 07 ff fd d0 l.jal 239c <add_some_intvecs>
2c60: 15 00 00 00 l.nop 0x0
2c64: 84 62 ff d0 l.lwz r3,-48(r2)
2c68: d4 0e 18 20 l.sw 32(r14),r3
2c6c: 84 62 ff d4 l.lwz r3,-44(r2)
2c70: d4 0e 18 24 l.sw 36(r14),r3
2c74: 84 62 ff d8 l.lwz r3,-40(r2)
2c78: d4 0e 18 28 l.sw 40(r14),r3
2c7c: 84 62 ff dc l.lwz r3,-36(r2)
2c80: d4 0e 18 2c l.sw 44(r14),r3
2c84: 18 60 00 00 l.movhi r3,0x0
2c88: a8 63 60 50 l.ori r3,r3,0x6050
2c8c: 86 23 00 00 l.lwz r17,0(r3)
2c90: 86 43 00 04 l.lwz r18,4(r3)
2c94: 86 63 00 08 l.lwz r19,8(r3)
2c98: 86 83 00 0c l.lwz r20,12(r3)
2c9c: 18 60 00 00 l.movhi r3,0x0
2ca0: a8 63 60 50 l.ori r3,r3,0x6050
2ca4: 86 a3 00 00 l.lwz r21,0(r3)
2ca8: 86 c3 00 04 l.lwz r22,4(r3)
2cac: 86 e3 00 08 l.lwz r23,8(r3)
2cb0: 87 03 00 0c l.lwz r24,12(r3)
2cb4: 18 e0 00 00 l.movhi r7,0x0
2cb8: a8 e7 60 60 l.ori r7,r7,0x6060
2cbc: 84 67 00 00 l.lwz r3,0(r7)
2cc0: 84 87 00 04 l.lwz r4,4(r7)
2cc4: 84 a7 00 08 l.lwz r5,8(r7)
2cc8: 84 c7 00 0c l.lwz r6,12(r7)
2ccc: a9 15 00 00 l.ori r8,r21,0x0
2cd0: a8 e3 00 00 l.ori r7,r3,0x0
2cd4: e1 88 38 00 l.add r12,r8,r7
2cd8: a9 16 00 00 l.ori r8,r22,0x0
2cdc: a8 e4 00 00 l.ori r7,r4,0x0
2ce0: e1 68 38 00 l.add r11,r8,r7
2ce4: a9 17 00 00 l.ori r8,r23,0x0
2ce8: a8 e5 00 00 l.ori r7,r5,0x0
2cec: e1 08 38 00 l.add r8,r8,r7
2cf0: a8 f8 00 00 l.ori r7,r24,0x0
2cf4: a8 66 00 00 l.ori r3,r6,0x0
2cf8: e0 e7 18 00 l.add r7,r7,r3
2cfc: 9c 60 00 00 l.addi r3,r0,0
2d00: 9c 80 00 00 l.addi r4,r0,0
2d04: 9c a0 00 00 l.addi r5,r0,0
2d08: 9c c0 00 00 l.addi r6,r0,0
2d0c: a8 6c 00 00 l.ori r3,r12,0x0
2d10: a8 8b 00 00 l.ori r4,r11,0x0
2d14: a8 a8 00 00 l.ori r5,r8,0x0
2d18: a8 c7 00 00 l.ori r6,r7,0x0
2d1c: aa a3 00 00 l.ori r21,r3,0x0
2d20: aa c4 00 00 l.ori r22,r4,0x0
2d24: aa e5 00 00 l.ori r23,r5,0x0
2d28: ab 06 00 00 l.ori r24,r6,0x0
2d2c: 18 e0 00 00 l.movhi r7,0x0
2d30: a8 e7 60 60 l.ori r7,r7,0x6060
2d34: 84 67 00 00 l.lwz r3,0(r7)
2d38: 84 87 00 04 l.lwz r4,4(r7)
2d3c: 84 a7 00 08 l.lwz r5,8(r7)
2d40: 84 c7 00 0c l.lwz r6,12(r7)
2d44: 9c e2 ff d0 l.addi r7,r2,-48
2d48: a9 11 00 00 l.ori r8,r17,0x0
2d4c: d7 e2 47 c0 l.sw -64(r2),r8
2d50: a9 12 00 00 l.ori r8,r18,0x0
2d54: d7 e2 47 c4 l.sw -60(r2),r8
2d58: a9 13 00 00 l.ori r8,r19,0x0
2d5c: d7 e2 47 c8 l.sw -56(r2),r8
2d60: a9 14 00 00 l.ori r8,r20,0x0
2d64: d7 e2 47 cc l.sw -52(r2),r8
2d68: a9 15 00 00 l.ori r8,r21,0x0
2d6c: d7 e2 47 b0 l.sw -80(r2),r8
2d70: a9 16 00 00 l.ori r8,r22,0x0
2d74: d7 e2 47 b4 l.sw -76(r2),r8
2d78: a9 17 00 00 l.ori r8,r23,0x0
2d7c: d7 e2 47 b8 l.sw -72(r2),r8
2d80: a9 18 00 00 l.ori r8,r24,0x0
2d84: d7 e2 47 bc l.sw -68(r2),r8
2d88: a9 03 00 00 l.ori r8,r3,0x0
2d8c: d7 e2 47 a0 l.sw -96(r2),r8
2d90: a9 04 00 00 l.ori r8,r4,0x0
2d94: d7 e2 47 a4 l.sw -92(r2),r8
2d98: a9 05 00 00 l.ori r8,r5,0x0
2d9c: d7 e2 47 a8 l.sw -88(r2),r8
2da0: a8 66 00 00 l.ori r3,r6,0x0
2da4: d7 e2 1f ac l.sw -84(r2),r3
2da8: 9c a2 ff a0 l.addi r5,r2,-96
2dac: 9c 82 ff b0 l.addi r4,r2,-80
2db0: 9c 62 ff c0 l.addi r3,r2,-64
2db4: a8 c5 00 00 l.ori r6,r5,0x0
2db8: a8 a4 00 00 l.ori r5,r4,0x0
2dbc: a8 83 00 00 l.ori r4,r3,0x0
2dc0: a8 67 00 00 l.ori r3,r7,0x0
2dc4: 07 ff fd 76 l.jal 239c <add_some_intvecs>
2dc8: 15 00 00 00 l.nop 0x0
2dcc: 84 62 ff d0 l.lwz r3,-48(r2)
2dd0: d4 0e 18 20 l.sw 32(r14),r3
2dd4: 84 62 ff d4 l.lwz r3,-44(r2)
2dd8: d4 0e 18 24 l.sw 36(r14),r3
2ddc: 84 62 ff d8 l.lwz r3,-40(r2)
2de0: d4 0e 18 28 l.sw 40(r14),r3
2de4: 84 62 ff dc l.lwz r3,-36(r2)
2de8: d4 0e 18 2c l.sw 44(r14),r3
2dec: 18 60 00 00 l.movhi r3,0x0
2df0: a8 63 60 50 l.ori r3,r3,0x6050
2df4: 86 23 00 00 l.lwz r17,0(r3)
2df8: 86 43 00 04 l.lwz r18,4(r3)
2dfc: 86 63 00 08 l.lwz r19,8(r3)
2e00: 86 83 00 0c l.lwz r20,12(r3)
2e04: 18 60 00 00 l.movhi r3,0x0
2e08: a8 63 60 50 l.ori r3,r3,0x6050
2e0c: 86 a3 00 00 l.lwz r21,0(r3)
2e10: 86 c3 00 04 l.lwz r22,4(r3)
2e14: 86 e3 00 08 l.lwz r23,8(r3)
2e18: 87 03 00 0c l.lwz r24,12(r3)
2e1c: 18 e0 00 00 l.movhi r7,0x0
2e20: a8 e7 60 60 l.ori r7,r7,0x6060
2e24: 84 67 00 00 l.lwz r3,0(r7)
2e28: 84 87 00 04 l.lwz r4,4(r7)
2e2c: 84 a7 00 08 l.lwz r5,8(r7)
2e30: 84 c7 00 0c l.lwz r6,12(r7)
2e34: a9 15 00 00 l.ori r8,r21,0x0
2e38: a8 e3 00 00 l.ori r7,r3,0x0
2e3c: e1 88 38 00 l.add r12,r8,r7
2e40: a9 16 00 00 l.ori r8,r22,0x0
2e44: a8 e4 00 00 l.ori r7,r4,0x0
2e48: e1 68 38 00 l.add r11,r8,r7
2e4c: a9 17 00 00 l.ori r8,r23,0x0
2e50: a8 e5 00 00 l.ori r7,r5,0x0
2e54: e1 08 38 00 l.add r8,r8,r7
2e58: a8 f8 00 00 l.ori r7,r24,0x0
2e5c: a8 66 00 00 l.ori r3,r6,0x0
2e60: e0 e7 18 00 l.add r7,r7,r3
2e64: 9c 60 00 00 l.addi r3,r0,0
2e68: 9c 80 00 00 l.addi r4,r0,0
2e6c: 9c a0 00 00 l.addi r5,r0,0
2e70: 9c c0 00 00 l.addi r6,r0,0
2e74: a8 6c 00 00 l.ori r3,r12,0x0
2e78: a8 8b 00 00 l.ori r4,r11,0x0
2e7c: a8 a8 00 00 l.ori r5,r8,0x0
2e80: a8 c7 00 00 l.ori r6,r7,0x0
2e84: aa a3 00 00 l.ori r21,r3,0x0
2e88: aa c4 00 00 l.ori r22,r4,0x0
2e8c: aa e5 00 00 l.ori r23,r5,0x0
2e90: ab 06 00 00 l.ori r24,r6,0x0
2e94: 18 e0 00 00 l.movhi r7,0x0
2e98: a8 e7 60 60 l.ori r7,r7,0x6060
2e9c: 84 67 00 00 l.lwz r3,0(r7)
2ea0: 84 87 00 04 l.lwz r4,4(r7)
2ea4: 84 a7 00 08 l.lwz r5,8(r7)
2ea8: 84 c7 00 0c l.lwz r6,12(r7)
2eac: 9c e2 ff d0 l.addi r7,r2,-48
2eb0: a9 11 00 00 l.ori r8,r17,0x0
2eb4: d7 e2 47 c0 l.sw -64(r2),r8
2eb8: a9 12 00 00 l.ori r8,r18,0x0
2ebc: d7 e2 47 c4 l.sw -60(r2),r8
2ec0: a9 13 00 00 l.ori r8,r19,0x0
2ec4: d7 e2 47 c8 l.sw -56(r2),r8
2ec8: a9 14 00 00 l.ori r8,r20,0x0
2ecc: d7 e2 47 cc l.sw -52(r2),r8
2ed0: a9 15 00 00 l.ori r8,r21,0x0
2ed4: d7 e2 47 b0 l.sw -80(r2),r8
2ed8: a9 16 00 00 l.ori r8,r22,0x0
2edc: d7 e2 47 b4 l.sw -76(r2),r8
2ee0: a9 17 00 00 l.ori r8,r23,0x0
2ee4: d7 e2 47 b8 l.sw -72(r2),r8
2ee8: a9 18 00 00 l.ori r8,r24,0x0
2eec: d7 e2 47 bc l.sw -68(r2),r8
2ef0: a9 03 00 00 l.ori r8,r3,0x0
2ef4: d7 e2 47 a0 l.sw -96(r2),r8
2ef8: a9 04 00 00 l.ori r8,r4,0x0
2efc: d7 e2 47 a4 l.sw -92(r2),r8
2f00: a9 05 00 00 l.ori r8,r5,0x0
2f04: d7 e2 47 a8 l.sw -88(r2),r8
2f08: a8 66 00 00 l.ori r3,r6,0x0
2f0c: d7 e2 1f ac l.sw -84(r2),r3
2f10: 9c a2 ff a0 l.addi r5,r2,-96
2f14: 9c 82 ff b0 l.addi r4,r2,-80
2f18: 9c 62 ff c0 l.addi r3,r2,-64
2f1c: a8 c5 00 00 l.ori r6,r5,0x0
2f20: a8 a4 00 00 l.ori r5,r4,0x0
2f24: a8 83 00 00 l.ori r4,r3,0x0
2f28: a8 67 00 00 l.ori r3,r7,0x0
2f2c: 07 ff fd 1c l.jal 239c <add_some_intvecs>
2f30: 15 00 00 00 l.nop 0x0 ; (r14 here is aligned stack pointer)
2f34: 18 60 00 00 l.movhi r3,0x0
2f38: a8 63 60 70 l.ori r3,r3,0x6070
2f3c: 84 83 00 00 l.lwz r4,0(r3) ; r4 = *0x6070 read in f4a
2f40: d4 0e 20 10 l.sw 16(r14),r4 ; sp+16 = f4a[0]
2f44: 84 83 00 04 l.lwz r4,4(r3)
2f48: d4 0e 20 14 l.sw 20(r14),r4 ; sp+20 = f4a[1]
2f4c: 84 83 00 08 l.lwz r4,8(r3)
2f50: d4 0e 20 18 l.sw 24(r14),r4 ; sp+24 = f4a[2]
2f54: 84 63 00 0c l.lwz r3,12(r3)
2f58: d4 0e 18 1c l.sw 28(r14),r3 ; sp+24 = f4a[3]
2f5c: 18 60 00 00 l.movhi r3,0x0
2f60: a8 63 60 80 l.ori r3,r3,0x6080
2f64: 84 83 00 00 l.lwz r4,0(r3) ; r4 = *0x6080 read in f4b
2f68: d4 0e 20 00 l.sw 0(r14),r4
2f6c: 84 83 00 04 l.lwz r4,4(r3)
2f70: d4 0e 20 04 l.sw 4(r14),r4
2f74: 84 83 00 08 l.lwz r4,8(r3)
2f78: d4 0e 20 08 l.sw 8(r14),r4
2f7c: 84 63 00 0c l.lwz r3,12(r3)
2f80: d4 0e 18 0c l.sw 12(r14),r3 ; slice f4b to stack sp+0
2f84: 9c c2 ff 90 l.addi r6,r2,-112 ; r6 = FP-112 (return location)
2f88: 84 6e 00 10 l.lwz r3,16(r14) ; mov f4a from sp+16 to sp-128
2f8c: d7 e2 1f 80 l.sw -128(r2),r3
2f90: 84 6e 00 14 l.lwz r3,20(r14)
2f94: d7 e2 1f 84 l.sw -124(r2),r3
2f98: 84 6e 00 18 l.lwz r3,24(r14)
2f9c: d7 e2 1f 88 l.sw -120(r2),r3
2fa0: 84 6e 00 1c l.lwz r3,28(r14)
2fa4: d7 e2 1f 8c l.sw -116(r2),r3
2fa8: 84 6e 00 00 l.lwz r3,0(r14) ; mov f4b from sp+0 to sp-144
2fac: d7 e2 1f 70 l.sw -144(r2),r3
2fb0: 84 6e 00 04 l.lwz r3,4(r14)
2fb4: d7 e2 1f 74 l.sw -140(r2),r3
2fb8: 84 6e 00 08 l.lwz r3,8(r14)
2fbc: d7 e2 1f 78 l.sw -136(r2),r3
2fc0: 84 6e 00 0c l.lwz r3,12(r14)
2fc4: d7 e2 1f 7c l.sw -132(r2),r3
2fc8: 9c 82 ff 80 l.addi r4,r2,-128 ; r4 = r2-128 (pointer to f4a)
2fcc: 9c 62 ff 70 l.addi r3,r2,-144 ; r3 = r2-144 (pointer to f4b)
2fd0: d4 01 18 00 l.sw 0(r1),r3 ; store (r3) arg3 f4b pointer to stack
2fd4: a8 a4 00 00 l.ori r5,r4,0x0 ; r5 - (r4) arg2 = f4a
2fd8: 9c 80 00 02 l.addi r4,r0,2 ; r4 - arg1 - n=2
2fdc: a8 66 00 00 l.ori r3,r6,0x0 ; r3 - return location
2fe0: 07 ff fd da l.jal 2748 <add_various_floatvecs>
2fe4: 15 00 00 00 l.nop 0x0
2fe8: 9c 60 00 00 l.addi r3,r0,0
2fec: a9 63 00 00 l.ori r11,r3,0x0
2ff0: a8 3a 00 00 l.ori r1,r26,0x0
2ff4: a8 22 00 00 l.ori r1,r2,0x0
2ff8: 84 41 ff f8 l.lwz r2,-8(r1)
2ffc: 85 21 ff fc l.lwz r9,-4(r1)
3000: 85 c1 ff e0 l.lwz r14,-32(r1)
3004: 86 41 ff e4 l.lwz r18,-28(r1)
3008: 86 81 ff e8 l.lwz r20,-24(r1)
300c: 86 c1 ff ec l.lwz r22,-20(r1)
3010: 87 01 ff f0 l.lwz r24,-16(r1)
3014: 87 41 ff f4 l.lwz r26,-12(r1)
3018: 44 00 48 00 l.jr r9
301c: 15 00 00 00 l.nop 0x0
;;;
; Example of main with call to add_singlevecs
int
main ()
{
int4 res;
float4 resf;
double1 resd;
char1 ac1 = {6};
int1 ai1 = {12};
double1 ad1 = {24};
res = add_some_intvecs (i4a, i4a + i4b, i4b);
res = add_some_intvecs (i4a, i4a + i4b, i4b);
add_some_intvecs (i4a, i4a + i4b, i4b);
resf = add_various_floatvecs(2, f4a, f4b);
resd = add_singlevecs(ac1, ai1, ad1);
return 0;
}
00002adc <main>:
2adc: d7 e1 17 f8 l.sw -8(r1),r2
2ae0: 9c 41 00 00 l.addi r2,r1,0
2ae4: d7 e1 4f fc l.sw -4(r1),r9
2ae8: d7 e1 77 e0 l.sw -32(r1),r14
2aec: d7 e1 97 e4 l.sw -28(r1),r18
2af0: d7 e1 a7 e8 l.sw -24(r1),r20
2af4: d7 e1 b7 ec l.sw -20(r1),r22
2af8: d7 e1 c7 f0 l.sw -16(r1),r24
2afc: d7 e1 d7 f4 l.sw -12(r1),r26
2b00: 9c 21 ff 64 l.addi r1,r1,-156
2b04: ab 41 00 00 l.ori r26,r1,0x0
2b08: 9c 21 ff a0 l.addi r1,r1,-96
2b0c: 9c 61 00 04 l.addi r3,r1,4
2b10: 9c 63 00 0f l.addi r3,r3,15
2b14: b8 63 00 44 l.srli r3,r3,0x4
2b18: b9 c3 00 04 l.slli r14,r3,0x4
2b1c: 9c 60 00 06 l.addi r3,r0,6
2b20: db e2 1f df l.sb -33(r2),r3
2b24: 9c 60 00 0c l.addi r3,r0,12
2b28: d7 e2 1f d8 l.sw -40(r2),r3
2b2c: 18 60 00 00 l.movhi r3,0x0
2b30: a8 63 5b 20 l.ori r3,r3,0x5b20
2b34: 84 83 00 00 l.lwz r4,0(r3)
2b38: 84 a3 00 04 l.lwz r5,4(r3)
2b3c: d4 0e 20 48 l.sw 72(r14),r4
2b40: d4 0e 28 4c l.sw 76(r14),r5
2b44: 18 60 00 00 l.movhi r3,0x0
2b48: a8 63 60 50 l.ori r3,r3,0x6050
2b4c: 86 23 00 00 l.lwz r17,0(r3)
2b50: 86 43 00 04 l.lwz r18,4(r3)
2b54: 86 63 00 08 l.lwz r19,8(r3)
2b58: 86 83 00 0c l.lwz r20,12(r3)
2b5c: 18 60 00 00 l.movhi r3,0x0
2b60: a8 63 60 50 l.ori r3,r3,0x6050
2b64: 86 a3 00 00 l.lwz r21,0(r3)
2b68: 86 c3 00 04 l.lwz r22,4(r3)
2b6c: 86 e3 00 08 l.lwz r23,8(r3)
2b70: 87 03 00 0c l.lwz r24,12(r3)
2b74: 18 e0 00 00 l.movhi r7,0x0
2b78: a8 e7 60 60 l.ori r7,r7,0x6060
2b7c: 84 67 00 00 l.lwz r3,0(r7)
2b80: 84 87 00 04 l.lwz r4,4(r7)
2b84: 84 a7 00 08 l.lwz r5,8(r7)
2b88: 84 c7 00 0c l.lwz r6,12(r7)
2b8c: a9 15 00 00 l.ori r8,r21,0x0
2b90: a8 e3 00 00 l.ori r7,r3,0x0
2b94: e1 88 38 00 l.add r12,r8,r7
2b98: a9 16 00 00 l.ori r8,r22,0x0
2b9c: a8 e4 00 00 l.ori r7,r4,0x0
2ba0: e1 68 38 00 l.add r11,r8,r7
2ba4: a9 17 00 00 l.ori r8,r23,0x0
2ba8: a8 e5 00 00 l.ori r7,r5,0x0
2bac: e1 08 38 00 l.add r8,r8,r7
2bb0: a8 f8 00 00 l.ori r7,r24,0x0
2bb4: a8 66 00 00 l.ori r3,r6,0x0
2bb8: e0 e7 18 00 l.add r7,r7,r3
2bbc: 9c 60 00 00 l.addi r3,r0,0
2bc0: 9c 80 00 00 l.addi r4,r0,0
2bc4: 9c a0 00 00 l.addi r5,r0,0
2bc8: 9c c0 00 00 l.addi r6,r0,0
2bcc: a8 6c 00 00 l.ori r3,r12,0x0
2bd0: a8 8b 00 00 l.ori r4,r11,0x0
2bd4: a8 a8 00 00 l.ori r5,r8,0x0
2bd8: a8 c7 00 00 l.ori r6,r7,0x0
2bdc: aa a3 00 00 l.ori r21,r3,0x0
2be0: aa c4 00 00 l.ori r22,r4,0x0
2be4: aa e5 00 00 l.ori r23,r5,0x0
2be8: ab 06 00 00 l.ori r24,r6,0x0
2bec: 18 e0 00 00 l.movhi r7,0x0
2bf0: a8 e7 60 60 l.ori r7,r7,0x6060
2bf4: 84 67 00 00 l.lwz r3,0(r7)
2bf8: 84 87 00 04 l.lwz r4,4(r7)
2bfc: 84 a7 00 08 l.lwz r5,8(r7)
2c00: 84 c7 00 0c l.lwz r6,12(r7)
2c04: 9c e2 ff c8 l.addi r7,r2,-56
2c08: a9 11 00 00 l.ori r8,r17,0x0
2c0c: d7 e2 47 b8 l.sw -72(r2),r8
2c10: a9 12 00 00 l.ori r8,r18,0x0
2c14: d7 e2 47 bc l.sw -68(r2),r8
2c18: a9 13 00 00 l.ori r8,r19,0x0
2c1c: d7 e2 47 c0 l.sw -64(r2),r8
2c20: a9 14 00 00 l.ori r8,r20,0x0
2c24: d7 e2 47 c4 l.sw -60(r2),r8
2c28: a9 15 00 00 l.ori r8,r21,0x0
2c2c: d7 e2 47 a8 l.sw -88(r2),r8
2c30: a9 16 00 00 l.ori r8,r22,0x0
2c34: d7 e2 47 ac l.sw -84(r2),r8
2c38: a9 17 00 00 l.ori r8,r23,0x0
2c3c: d7 e2 47 b0 l.sw -80(r2),r8
2c40: a9 18 00 00 l.ori r8,r24,0x0
2c44: d7 e2 47 b4 l.sw -76(r2),r8
2c48: a9 03 00 00 l.ori r8,r3,0x0
2c4c: d7 e2 47 98 l.sw -104(r2),r8
2c50: a9 04 00 00 l.ori r8,r4,0x0
2c54: d7 e2 47 9c l.sw -100(r2),r8
2c58: a9 05 00 00 l.ori r8,r5,0x0
2c5c: d7 e2 47 a0 l.sw -96(r2),r8
2c60: a8 66 00 00 l.ori r3,r6,0x0
2c64: d7 e2 1f a4 l.sw -92(r2),r3
2c68: 9c a2 ff 98 l.addi r5,r2,-104
2c6c: 9c 82 ff a8 l.addi r4,r2,-88
2c70: 9c 62 ff b8 l.addi r3,r2,-72
2c74: a8 c5 00 00 l.ori r6,r5,0x0
2c78: a8 a4 00 00 l.ori r5,r4,0x0
2c7c: a8 83 00 00 l.ori r4,r3,0x0
2c80: a8 67 00 00 l.ori r3,r7,0x0
2c84: 07 ff fd c6 l.jal 239c <add_some_intvecs>
2c88: 15 00 00 00 l.nop 0x0
2c8c: 84 62 ff c8 l.lwz r3,-56(r2)
2c90: d4 0e 18 30 l.sw 48(r14),r3
2c94: 84 62 ff cc l.lwz r3,-52(r2)
2c98: d4 0e 18 34 l.sw 52(r14),r3
2c9c: 84 62 ff d0 l.lwz r3,-48(r2)
2ca0: d4 0e 18 38 l.sw 56(r14),r3
2ca4: 84 62 ff d4 l.lwz r3,-44(r2)
2ca8: d4 0e 18 3c l.sw 60(r14),r3
2cac: 18 60 00 00 l.movhi r3,0x0
2cb0: a8 63 60 50 l.ori r3,r3,0x6050
2cb4: 86 23 00 00 l.lwz r17,0(r3)
2cb8: 86 43 00 04 l.lwz r18,4(r3)
2cbc: 86 63 00 08 l.lwz r19,8(r3)
2cc0: 86 83 00 0c l.lwz r20,12(r3)
2cc4: 18 60 00 00 l.movhi r3,0x0
2cc8: a8 63 60 50 l.ori r3,r3,0x6050
2ccc: 86 a3 00 00 l.lwz r21,0(r3)
2cd0: 86 c3 00 04 l.lwz r22,4(r3)
2cd4: 86 e3 00 08 l.lwz r23,8(r3)
2cd8: 87 03 00 0c l.lwz r24,12(r3)
2cdc: 18 e0 00 00 l.movhi r7,0x0
2ce0: a8 e7 60 60 l.ori r7,r7,0x6060
2ce4: 84 67 00 00 l.lwz r3,0(r7)
2ce8: 84 87 00 04 l.lwz r4,4(r7)
2cec: 84 a7 00 08 l.lwz r5,8(r7)
2cf0: 84 c7 00 0c l.lwz r6,12(r7)
2cf4: a9 15 00 00 l.ori r8,r21,0x0
2cf8: a8 e3 00 00 l.ori r7,r3,0x0
2cfc: e1 88 38 00 l.add r12,r8,r7
2d00: a9 16 00 00 l.ori r8,r22,0x0
2d04: a8 e4 00 00 l.ori r7,r4,0x0
2d08: e1 68 38 00 l.add r11,r8,r7
2d0c: a9 17 00 00 l.ori r8,r23,0x0
2d10: a8 e5 00 00 l.ori r7,r5,0x0
2d14: e1 08 38 00 l.add r8,r8,r7
2d18: a8 f8 00 00 l.ori r7,r24,0x0
2d1c: a8 66 00 00 l.ori r3,r6,0x0
2d20: e0 e7 18 00 l.add r7,r7,r3
2d24: 9c 60 00 00 l.addi r3,r0,0
2d28: 9c 80 00 00 l.addi r4,r0,0
2d2c: 9c a0 00 00 l.addi r5,r0,0
2d30: 9c c0 00 00 l.addi r6,r0,0
2d34: a8 6c 00 00 l.ori r3,r12,0x0
2d38: a8 8b 00 00 l.ori r4,r11,0x0
2d3c: a8 a8 00 00 l.ori r5,r8,0x0
2d40: a8 c7 00 00 l.ori r6,r7,0x0
2d44: aa a3 00 00 l.ori r21,r3,0x0
2d48: aa c4 00 00 l.ori r22,r4,0x0
2d4c: aa e5 00 00 l.ori r23,r5,0x0
2d50: ab 06 00 00 l.ori r24,r6,0x0
2d54: 18 e0 00 00 l.movhi r7,0x0
2d58: a8 e7 60 60 l.ori r7,r7,0x6060
2d5c: 84 67 00 00 l.lwz r3,0(r7)
2d60: 84 87 00 04 l.lwz r4,4(r7)
2d64: 84 a7 00 08 l.lwz r5,8(r7)
2d68: 84 c7 00 0c l.lwz r6,12(r7)
2d6c: 9c e2 ff c8 l.addi r7,r2,-56
2d70: a9 11 00 00 l.ori r8,r17,0x0
2d74: d7 e2 47 b8 l.sw -72(r2),r8
2d78: a9 12 00 00 l.ori r8,r18,0x0
2d7c: d7 e2 47 bc l.sw -68(r2),r8
2d80: a9 13 00 00 l.ori r8,r19,0x0
2d84: d7 e2 47 c0 l.sw -64(r2),r8
2d88: a9 14 00 00 l.ori r8,r20,0x0
2d8c: d7 e2 47 c4 l.sw -60(r2),r8
2d90: a9 15 00 00 l.ori r8,r21,0x0
2d94: d7 e2 47 a8 l.sw -88(r2),r8
2d98: a9 16 00 00 l.ori r8,r22,0x0
2d9c: d7 e2 47 ac l.sw -84(r2),r8
2da0: a9 17 00 00 l.ori r8,r23,0x0
2da4: d7 e2 47 b0 l.sw -80(r2),r8
2da8: a9 18 00 00 l.ori r8,r24,0x0
2dac: d7 e2 47 b4 l.sw -76(r2),r8
2db0: a9 03 00 00 l.ori r8,r3,0x0
2db4: d7 e2 47 98 l.sw -104(r2),r8
2db8: a9 04 00 00 l.ori r8,r4,0x0
2dbc: d7 e2 47 9c l.sw -100(r2),r8
2dc0: a9 05 00 00 l.ori r8,r5,0x0
2dc4: d7 e2 47 a0 l.sw -96(r2),r8
2dc8: a8 66 00 00 l.ori r3,r6,0x0
2dcc: d7 e2 1f a4 l.sw -92(r2),r3
2dd0: 9c a2 ff 98 l.addi r5,r2,-104
2dd4: 9c 82 ff a8 l.addi r4,r2,-88
2dd8: 9c 62 ff b8 l.addi r3,r2,-72
2ddc: a8 c5 00 00 l.ori r6,r5,0x0
2de0: a8 a4 00 00 l.ori r5,r4,0x0
2de4: a8 83 00 00 l.ori r4,r3,0x0
2de8: a8 67 00 00 l.ori r3,r7,0x0
2dec: 07 ff fd 6c l.jal 239c <add_some_intvecs>
2df0: 15 00 00 00 l.nop 0x0
2df4: 84 62 ff c8 l.lwz r3,-56(r2)
2df8: d4 0e 18 30 l.sw 48(r14),r3
2dfc: 84 62 ff cc l.lwz r3,-52(r2)
2e00: d4 0e 18 34 l.sw 52(r14),r3
2e04: 84 62 ff d0 l.lwz r3,-48(r2)
2e08: d4 0e 18 38 l.sw 56(r14),r3
2e0c: 84 62 ff d4 l.lwz r3,-44(r2)
2e10: d4 0e 18 3c l.sw 60(r14),r3
2e14: 18 60 00 00 l.movhi r3,0x0
2e18: a8 63 60 50 l.ori r3,r3,0x6050
2e1c: 86 23 00 00 l.lwz r17,0(r3)
2e20: 86 43 00 04 l.lwz r18,4(r3)
2e24: 86 63 00 08 l.lwz r19,8(r3)
2e28: 86 83 00 0c l.lwz r20,12(r3)
2e2c: 18 60 00 00 l.movhi r3,0x0
2e30: a8 63 60 50 l.ori r3,r3,0x6050
2e34: 86 a3 00 00 l.lwz r21,0(r3)
2e38: 86 c3 00 04 l.lwz r22,4(r3)
2e3c: 86 e3 00 08 l.lwz r23,8(r3)
2e40: 87 03 00 0c l.lwz r24,12(r3)
2e44: 18 e0 00 00 l.movhi r7,0x0
2e48: a8 e7 60 60 l.ori r7,r7,0x6060
2e4c: 84 67 00 00 l.lwz r3,0(r7)
2e50: 84 87 00 04 l.lwz r4,4(r7)
2e54: 84 a7 00 08 l.lwz r5,8(r7)
2e58: 84 c7 00 0c l.lwz r6,12(r7)
2e5c: a9 15 00 00 l.ori r8,r21,0x0
2e60: a8 e3 00 00 l.ori r7,r3,0x0
2e64: e1 88 38 00 l.add r12,r8,r7
2e68: a9 16 00 00 l.ori r8,r22,0x0
2e6c: a8 e4 00 00 l.ori r7,r4,0x0
2e70: e1 68 38 00 l.add r11,r8,r7
2e74: a9 17 00 00 l.ori r8,r23,0x0
2e78: a8 e5 00 00 l.ori r7,r5,0x0
2e7c: e1 08 38 00 l.add r8,r8,r7
2e80: a8 f8 00 00 l.ori r7,r24,0x0
2e84: a8 66 00 00 l.ori r3,r6,0x0
2e88: e0 e7 18 00 l.add r7,r7,r3
2e8c: 9c 60 00 00 l.addi r3,r0,0
2e90: 9c 80 00 00 l.addi r4,r0,0
2e94: 9c a0 00 00 l.addi r5,r0,0
2e98: 9c c0 00 00 l.addi r6,r0,0
2e9c: a8 6c 00 00 l.ori r3,r12,0x0
2ea0: a8 8b 00 00 l.ori r4,r11,0x0
2ea4: a8 a8 00 00 l.ori r5,r8,0x0
2ea8: a8 c7 00 00 l.ori r6,r7,0x0
2eac: aa a3 00 00 l.ori r21,r3,0x0
2eb0: aa c4 00 00 l.ori r22,r4,0x0
2eb4: aa e5 00 00 l.ori r23,r5,0x0
2eb8: ab 06 00 00 l.ori r24,r6,0x0
2ebc: 18 e0 00 00 l.movhi r7,0x0
2ec0: a8 e7 60 60 l.ori r7,r7,0x6060
2ec4: 84 67 00 00 l.lwz r3,0(r7)
2ec8: 84 87 00 04 l.lwz r4,4(r7)
2ecc: 84 a7 00 08 l.lwz r5,8(r7)
2ed0: 84 c7 00 0c l.lwz r6,12(r7)
2ed4: 9c e2 ff c8 l.addi r7,r2,-56
2ed8: a9 11 00 00 l.ori r8,r17,0x0
2edc: d7 e2 47 b8 l.sw -72(r2),r8
2ee0: a9 12 00 00 l.ori r8,r18,0x0
2ee4: d7 e2 47 bc l.sw -68(r2),r8
2ee8: a9 13 00 00 l.ori r8,r19,0x0
2eec: d7 e2 47 c0 l.sw -64(r2),r8
2ef0: a9 14 00 00 l.ori r8,r20,0x0
2ef4: d7 e2 47 c4 l.sw -60(r2),r8
2ef8: a9 15 00 00 l.ori r8,r21,0x0
2efc: d7 e2 47 a8 l.sw -88(r2),r8
2f00: a9 16 00 00 l.ori r8,r22,0x0
2f04: d7 e2 47 ac l.sw -84(r2),r8
2f08: a9 17 00 00 l.ori r8,r23,0x0
2f0c: d7 e2 47 b0 l.sw -80(r2),r8
2f10: a9 18 00 00 l.ori r8,r24,0x0
2f14: d7 e2 47 b4 l.sw -76(r2),r8
2f18: a9 03 00 00 l.ori r8,r3,0x0
2f1c: d7 e2 47 98 l.sw -104(r2),r8
2f20: a9 04 00 00 l.ori r8,r4,0x0
2f24: d7 e2 47 9c l.sw -100(r2),r8
2f28: a9 05 00 00 l.ori r8,r5,0x0
2f2c: d7 e2 47 a0 l.sw -96(r2),r8
2f30: a8 66 00 00 l.ori r3,r6,0x0
2f34: d7 e2 1f a4 l.sw -92(r2),r3
2f38: 9c a2 ff 98 l.addi r5,r2,-104
2f3c: 9c 82 ff a8 l.addi r4,r2,-88
2f40: 9c 62 ff b8 l.addi r3,r2,-72
2f44: a8 c5 00 00 l.ori r6,r5,0x0
2f48: a8 a4 00 00 l.ori r5,r4,0x0
2f4c: a8 83 00 00 l.ori r4,r3,0x0
2f50: a8 67 00 00 l.ori r3,r7,0x0
2f54: 07 ff fd 12 l.jal 239c <add_some_intvecs>
2f58: 15 00 00 00 l.nop 0x0
2f5c: 18 60 00 00 l.movhi r3,0x0
2f60: a8 63 60 70 l.ori r3,r3,0x6070
2f64: 84 83 00 00 l.lwz r4,0(r3)
2f68: d4 0e 20 20 l.sw 32(r14),r4
2f6c: 84 83 00 04 l.lwz r4,4(r3)
2f70: d4 0e 20 24 l.sw 36(r14),r4
2f74: 84 83 00 08 l.lwz r4,8(r3)
2f78: d4 0e 20 28 l.sw 40(r14),r4
2f7c: 84 63 00 0c l.lwz r3,12(r3)
2f80: d4 0e 18 2c l.sw 44(r14),r3
2f84: 18 60 00 00 l.movhi r3,0x0
2f88: a8 63 60 80 l.ori r3,r3,0x6080
2f8c: 84 83 00 00 l.lwz r4,0(r3)
2f90: d4 0e 20 10 l.sw 16(r14),r4
2f94: 84 83 00 04 l.lwz r4,4(r3)
2f98: d4 0e 20 14 l.sw 20(r14),r4
2f9c: 84 83 00 08 l.lwz r4,8(r3)
2fa0: d4 0e 20 18 l.sw 24(r14),r4
2fa4: 84 63 00 0c l.lwz r3,12(r3)
2fa8: d4 0e 18 1c l.sw 28(r14),r3
2fac: 9c c2 ff 88 l.addi r6,r2,-120
2fb0: 84 6e 00 20 l.lwz r3,32(r14)
2fb4: d7 e2 1f 78 l.sw -136(r2),r3
2fb8: 84 6e 00 24 l.lwz r3,36(r14)
2fbc: d7 e2 1f 7c l.sw -132(r2),r3
2fc0: 84 6e 00 28 l.lwz r3,40(r14)
2fc4: d7 e2 1f 80 l.sw -128(r2),r3
2fc8: 84 6e 00 2c l.lwz r3,44(r14)
2fcc: d7 e2 1f 84 l.sw -124(r2),r3
2fd0: 84 6e 00 10 l.lwz r3,16(r14)
2fd4: d7 e2 1f 68 l.sw -152(r2),r3
2fd8: 84 6e 00 14 l.lwz r3,20(r14)
2fdc: d7 e2 1f 6c l.sw -148(r2),r3
2fe0: 84 6e 00 18 l.lwz r3,24(r14)
2fe4: d7 e2 1f 70 l.sw -144(r2),r3
2fe8: 84 6e 00 1c l.lwz r3,28(r14)
2fec: d7 e2 1f 74 l.sw -140(r2),r3
2ff0: 9c 82 ff 78 l.addi r4,r2,-136
2ff4: 9c 62 ff 68 l.addi r3,r2,-152
2ff8: d4 01 18 00 l.sw 0(r1),r3
2ffc: a8 a4 00 00 l.ori r5,r4,0x0
3000: 9c 80 00 02 l.addi r4,r0,2
3004: a8 66 00 00 l.ori r3,r6,0x0
3008: 07 ff fd d0 l.jal 2748 <add_various_floatvecs>
300c: 15 00 00 00 l.nop 0x0
3010: 84 62 ff 88 l.lwz r3,-120(r2)
3014: d4 0e 18 00 l.sw 0(r14),r3
3018: 84 62 ff 8c l.lwz r3,-116(r2)
301c: d4 0e 18 04 l.sw 4(r14),r3
3020: 84 62 ff 90 l.lwz r3,-112(r2)
3024: d4 0e 18 08 l.sw 8(r14),r3
3028: 84 62 ff 94 l.lwz r3,-108(r2)
302c: d4 0e 18 0c l.sw 12(r14),r3
3030: 9c 62 ff 68 l.addi r3,r2,-152
3034: 84 ce 00 48 l.lwz r6,72(r14)
3038: 84 ee 00 4c l.lwz r7,76(r14)
303c: 84 a2 ff d8 l.lwz r5,-40(r2)
3040: 8c 82 ff df l.lbz r4,-33(r2)
3044: 07 ff fe 6f l.jal 2a00 <add_singlevecs>
3048: 15 00 00 00 l.nop 0x0
304c: 84 62 ff 68 l.lwz r3,-152(r2)
3050: d4 0e 18 40 l.sw 64(r14),r3
3054: 84 62 ff 6c l.lwz r3,-148(r2)
3058: d4 0e 18 44 l.sw 68(r14),r3
305c: 9c 60 00 00 l.addi r3,r0,0
3060: a9 63 00 00 l.ori r11,r3,0x0
3064: a8 3a 00 00 l.ori r1,r26,0x0
3068: a8 22 00 00 l.ori r1,r2,0x0
306c: 84 41 ff f8 l.lwz r2,-8(r1)
3070: 85 21 ff fc l.lwz r9,-4(r1)
3074: 85 c1 ff e0 l.lwz r14,-32(r1)
3078: 86 41 ff e4 l.lwz r18,-28(r1)
307c: 86 81 ff e8 l.lwz r20,-24(r1)
3080: 86 c1 ff ec l.lwz r22,-20(r1)
3084: 87 01 ff f0 l.lwz r24,-16(r1)
3088: 87 41 ff f4 l.lwz r26,-12(r1)
308c: 44 00 48 00 l.jr r9
3090: 15 00 00 00 l.nop 0x0
Disassembly of section .fini:
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment