blob: eb856269bc946df47e048967013f87c4b01434a1 [file] [log] [blame]
.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