| .file "foo.c" | |
| .abiversion 2 | |
| .section ".toc","aw" | |
| .section ".text" | |
| .section ".toc","aw" | |
| .LC0: | |
| .quad stderr | |
| .LC3: | |
| .quad kExportedString | |
| .LC6: | |
| .quad exported_function | |
| .section ".text" | |
| .align 2 | |
| .p2align 4,,15 | |
| .globl exported_function | |
| .type exported_function, @function | |
| exported_function: | |
| 0: addis 2,12,.TOC.-0b@ha | |
| addi 2,2,.TOC.-0b@l | |
| .localentry exported_function,.-exported_function | |
| mflr 0 | |
| std 19,-104(1) | |
| std 20,-96(1) | |
| std 21,-88(1) | |
| std 22,-80(1) | |
| addis 21,2,.LC1@toc@ha | |
| addis 22,2,.LC2@toc@ha | |
| std 23,-72(1) | |
| std 24,-64(1) | |
| addis 23,2,.LC4@toc@ha | |
| addis 24,2,function@toc@ha | |
| std 25,-56(1) | |
| std 26,-48(1) | |
| addis 25,2,.LC5@toc@ha | |
| addis 26,2,.LC7@toc@ha | |
| std 27,-40(1) | |
| std 28,-32(1) | |
| addis 28,2,.LC8@toc@ha | |
| addi 21,21,.LC1@toc@l | |
| std 29,-24(1) | |
| std 30,-16(1) | |
| addis 29,2,.LANCHOR0@toc@ha | |
| addi 22,22,.LC2@toc@l | |
| std 31,-8(1) | |
| std 0,16(1) | |
| addi 29,29,.LANCHOR0@toc@l | |
| addi 23,23,.LC4@toc@l | |
| stdu 1,-208(1) | |
| addis 31,2,.LC0@toc@ha # gpr load fusion, type long | |
| ld 31,.LC0@toc@l(31) | |
| addis 19,2,.LC3@toc@ha # gpr load fusion, type long | |
| ld 19,.LC3@toc@l(19) | |
| addis 30,29,0x5 | |
| addi 24,24,function@toc@l | |
| addis 20,2,.LC6@toc@ha # gpr load fusion, type long | |
| ld 20,.LC6@toc@l(20) | |
| addi 25,25,.LC5@toc@l | |
| addi 26,26,.LC7@toc@l | |
| addi 27,29,5 | |
| addi 28,28,.LC8@toc@l | |
| addi 30,30,-29404 | |
| .p2align 4,,15 | |
| .L2: | |
| ld 3,0(31) | |
| mr 5,21 | |
| mr 6,29 | |
| li 4,1 | |
| bl __fprintf_chk | |
| nop | |
| ld 3,0(31) | |
| mr 5,22 | |
| mr 6,19 | |
| li 4,1 | |
| bl __fprintf_chk | |
| nop | |
| ld 3,0(31) | |
| mr 5,23 | |
| mr 6,24 | |
| li 4,1 | |
| bl __fprintf_chk | |
| nop | |
| ld 3,0(31) | |
| mr 5,25 | |
| mr 6,20 | |
| li 4,1 | |
| bl __fprintf_chk | |
| nop | |
| ld 3,0(31) | |
| mr 5,26 | |
| mr 6,27 | |
| li 4,1 | |
| bl __fprintf_chk | |
| nop | |
| ld 3,0(31) | |
| li 4,1 | |
| mr 5,28 | |
| mr 6,30 | |
| bl __fprintf_chk | |
| nop | |
| b .L2 | |
| .long 0 | |
| .byte 0,0,0,1,128,13,0,0 | |
| .size exported_function,.-exported_function | |
| .section ".toc","aw" | |
| .set .LC11,.LC0 | |
| .set .LC12,.LC3 | |
| .set .LC13,.LC6 | |
| .section ".text" | |
| .align 2 | |
| .p2align 4,,15 | |
| .type function, @function | |
| function: | |
| 0: addis 2,12,.TOC.-0b@ha | |
| addi 2,2,.TOC.-0b@l | |
| .localentry function,.-function | |
| mflr 0 | |
| std 31,-8(1) | |
| addis 31,2,.LC11@toc@ha # gpr load fusion, type long | |
| ld 31,.LC11@toc@l(31) | |
| addis 5,2,.LC1@toc@ha | |
| std 30,-16(1) | |
| addis 30,2,.LANCHOR0@toc@ha | |
| addi 5,5,.LC1@toc@l | |
| addi 30,30,.LANCHOR0@toc@l | |
| li 4,1 | |
| mr 6,30 | |
| std 0,16(1) | |
| stdu 1,-112(1) | |
| ld 3,0(31) | |
| bl __fprintf_chk | |
| nop | |
| addis 6,2,.LC12@toc@ha # gpr load fusion, type long | |
| ld 6,.LC12@toc@l(6) | |
| ld 3,0(31) | |
| addis 5,2,.LC2@toc@ha | |
| li 4,1 | |
| addi 5,5,.LC2@toc@l | |
| bl __fprintf_chk | |
| nop | |
| ld 3,0(31) | |
| addis 5,2,.LC4@toc@ha | |
| addis 6,2,function@toc@ha | |
| addi 5,5,.LC4@toc@l | |
| addi 6,6,function@toc@l | |
| li 4,1 | |
| bl __fprintf_chk | |
| nop | |
| addis 6,2,.LC13@toc@ha # gpr load fusion, type long | |
| ld 6,.LC13@toc@l(6) | |
| ld 3,0(31) | |
| addis 5,2,.LC5@toc@ha | |
| li 4,1 | |
| addi 5,5,.LC5@toc@l | |
| bl __fprintf_chk | |
| nop | |
| ld 3,0(31) | |
| addis 5,2,.LC7@toc@ha | |
| addi 6,30,5 | |
| addi 5,5,.LC7@toc@l | |
| li 4,1 | |
| bl __fprintf_chk | |
| nop | |
| ld 3,0(31) | |
| addis 6,30,0x5 | |
| addis 5,2,.LC8@toc@ha | |
| li 4,1 | |
| addi 5,5,.LC8@toc@l | |
| addi 6,6,-29404 | |
| bl __fprintf_chk | |
| nop | |
| bl exported_function | |
| nop | |
| addi 1,1,112 | |
| ld 0,16(1) | |
| ld 30,-16(1) | |
| ld 31,-8(1) | |
| mtlr 0 | |
| blr | |
| .long 0 | |
| .byte 0,0,0,1,128,2,0,0 | |
| .size function,.-function | |
| .globl kExportedString | |
| .section .rodata | |
| .align 4 | |
| .set .LANCHOR0,. + 0 | |
| .type kString, @object | |
| .size kString, 12 | |
| kString: | |
| .string "hello world" | |
| .zero 4 | |
| .type kGiantArray, @object | |
| .size kGiantArray, 400000 | |
| kGiantArray: | |
| .long 1 | |
| .long 0 | |
| .zero 399992 | |
| .type kExportedString, @object | |
| .size kExportedString, 26 | |
| kExportedString: | |
| .string "hello world, more visibly" | |
| .section .rodata.str1.8,"aMS",@progbits,1 | |
| .align 3 | |
| .LC1: | |
| .string "kString is %p\n" | |
| .zero 1 | |
| .LC2: | |
| .string "kExportedString is %p\n" | |
| .zero 1 | |
| .LC4: | |
| .string "function is %p\n" | |
| .LC5: | |
| .string "exported_function is %p\n" | |
| .zero 7 | |
| .LC7: | |
| .string "&kString[5] is %p\n" | |
| .zero 5 | |
| .LC8: | |
| .string "&kGiantArray[0x12345] is %p\n" | |
| .section ".bss" | |
| .align 2 | |
| .type bss, @object | |
| .size bss, 20 | |
| bss: | |
| .zero 20 | |
| .ident "GCC: (Ubuntu 4.9.2-10ubuntu13) 4.9.2" | |
| .section .note.GNU-stack,"",@progbits |