URL
https://opencores.org/ocsvn/openrisc/openrisc/trunk
Subversion Repositories openrisc
Compare Revisions
- This comparison shows the changes necessary to convert path
/openrisc/trunk/gnu-old/binutils-2.18.50/gas/testsuite/gas/ppc
- from Rev 156 to Rev 816
- ↔ Reverse comparison
Rev 156 → Rev 816
/booke_xcoff64.d
0,0 → 1,125
#as: -a64 -mppc64 -mbooke64 |
#objdump: -dr -Mbooke64 |
#name: xcoff64 BookE tests |
|
.*: file format aix5?coff64-rs6000 |
|
Disassembly of section .text: |
|
0000000000000000 <.text>: |
0: 7c 22 3f 64 tlbre r1,r2,7 |
4: 7c be 1f a4 tlbwe r5,r30,3 |
8: 24 25 00 30 bce 1,4\*cr1\+gt,38 <.text\+0x38> |
c: 24 46 00 3d bcel 2,4\*cr1\+eq,48 <.text\+0x48> |
10: 24 67 00 5a bcea 3,4\*cr1\+so,58 <.text\+0x58> |
12: R_BA_16 .text |
14: 24 88 00 7b bcela 4,4\*cr2\+lt,78 <.text\+0x78> |
16: R_BA_16 .text |
18: 4c a9 00 22 bclre 5,4\*cr2\+gt |
1c: 4c aa 00 23 bclrel 5,4\*cr2\+eq |
20: 4d 0b 04 22 bcctre 8,4\*cr2\+so |
24: 4d 0c 04 23 bcctrel 8,4\*cr3\+lt |
28: 58 00 00 74 be 9c <.text\+0x9c> |
2c: 58 00 00 89 bel b4 <.text\+0xb4> |
30: 58 00 00 f2 bea f0 <.text\+0xf0> |
30: R_BA_26 .text |
34: 58 00 01 27 bela 124 <.text\+0x124> |
34: R_BA_26 .text |
38: e9 09 00 80 lbze r8,8\(r9\) |
3c: e9 8f 00 41 lbzue r12,4\(r15\) |
40: 7c 86 40 fe lbzuxe r4,r6,r8 |
44: 7c 65 38 be lbzxe r3,r5,r7 |
48: f8 a6 06 40 lde r5,400\(r6\) |
4c: f8 c7 07 11 ldue r6,452\(r7\) |
50: 7c e8 4e 3e ldxe r7,r8,r9 |
54: 7d 4b 66 7e lduxe r10,r11,r12 |
58: f9 81 02 06 lfde f12,128\(r1\) |
5c: f8 25 00 47 lfdue f1,16\(r5\) |
60: 7c a1 1c be lfdxe f5,r1,r3 |
64: 7c c2 24 fe lfduxe f6,r2,r4 |
68: f9 09 00 c4 lfse f8,48\(r9\) |
6c: f9 2a 01 15 lfsue f9,68\(r10\) |
70: 7d 44 44 7e lfsuxe f10,r4,r8 |
74: 7d 23 3c 3e lfsxe f9,r3,r7 |
78: e9 45 03 24 lhae r10,50\(r5\) |
7c: e8 23 00 55 lhaue r1,5\(r3\) |
80: 7c a1 1a fe lhauxe r5,r1,r3 |
84: 7f be fa be lhaxe r29,r30,r31 |
88: 7c 22 1e 3c lhbrxe r1,r2,r3 |
8c: e8 83 01 22 lhze r4,18\(r3\) |
90: e8 c9 01 43 lhzue r6,20\(r9\) |
94: 7c a7 4a 7e lhzuxe r5,r7,r9 |
98: 7d 27 2a 3e lhzxe r9,r7,r5 |
9c: 7d 4f a0 fc lwarxe r10,r15,r20 |
a0: 7c aa 94 3c lwbrxe r5,r10,r18 |
a4: eb 9d 00 46 lwze r28,4\(r29\) |
a8: e9 0a 02 87 lwzue r8,40\(r10\) |
ac: 7c 66 48 7e lwzuxe r3,r6,r9 |
b0: 7f dd e0 3e lwzxe r30,r29,r28 |
b4: 7c 06 3d fc dcbae r6,r7 |
b8: 7c 08 48 bc dcbfe r8,r9 |
bc: 7c 0a 5b bc dcbie r10,r11 |
c0: 7c 08 f0 7c dcbste r8,r30 |
c4: 7c c3 0a 3c dcbte 6,r3,r1 |
c8: 7c a4 11 fa dcbtste 5,r4,r2 |
cc: 7c 0f 77 fc dcbze r15,r14 |
d0: 7c 03 27 bc icbie r3,r4 |
d4: 7c a8 48 2c icbt 5,r8,r9 |
d8: 7c ca 78 3c icbte 6,r10,r15 |
dc: 7c a6 02 26 mfapidi r5,r6 |
e0: 7c 07 46 24 tlbivax r7,r8 |
e4: 7c 09 56 26 tlbivaxe r9,r10 |
e8: 7c 0b 67 24 tlbsx r11,r12 |
ec: 7c 0d 77 26 tlbsxe r13,r14 |
f0: 7c 22 1b 14 adde64 r1,r2,r3 |
f4: 7c 85 37 14 adde64o r4,r5,r6 |
f8: 7c e8 03 d4 addme64 r7,r8 |
fc: 7d 2a 07 d4 addme64o r9,r10 |
100: 7d 6c 03 94 addze64 r11,r12 |
104: 7d ae 07 94 addze64o r13,r14 |
108: 7e 80 04 40 mcrxr64 cr5 |
10c: 7d f0 8b 10 subfe64 r15,r16,r17 |
110: 7e 53 a7 10 subfe64o r18,r19,r20 |
114: 7e b6 03 d0 subfme64 r21,r22 |
118: 7e f8 07 d0 subfme64o r23,r24 |
11c: 7f 3a 03 90 subfze64 r25,r26 |
120: 7f 7c 07 90 subfze64o r27,r28 |
124: e8 22 03 28 stbe r1,50\(r2\) |
128: e8 64 02 89 stbue r3,40\(r4\) |
12c: 7c a6 39 fe stbuxe r5,r6,r7 |
130: 7d 09 51 be stbxe r8,r9,r10 |
134: 7d 6c 6b ff stdcxe. r11,r12,r13 |
138: f9 cf 00 78 stde r14,28\(r15\) |
13c: fa 11 00 59 stdue r16,20\(r17\) |
140: 7e 53 a7 3e stdxe r18,r19,r20 |
144: 7e b6 bf 7e stduxe r21,r22,r23 |
148: f8 38 00 3e stfde f1,12\(r24\) |
14c: f8 59 00 0f stfdue f2,0\(r25\) |
150: 7c 7a dd be stfdxe f3,r26,r27 |
154: 7c 9c ed fe stfduxe f4,r28,r29 |
158: 7c be ff be stfiwxe f5,r30,r31 |
15c: f8 de 00 6c stfse f6,24\(r30\) |
160: f8 fd 00 5d stfsue f7,20\(r29\) |
164: 7d 1c dd 3e stfsxe f8,r28,r27 |
168: 7d 3a cd 7e stfsuxe f9,r26,r25 |
16c: 7f 17 b7 3c sthbrxe r24,r23,r22 |
170: ea b4 01 ea sthe r21,30\(r20\) |
174: ea 72 02 8b sthue r19,40\(r18\) |
178: 7e 30 7b 7e sthuxe r17,r16,r15 |
17c: 7d cd 63 3e sthxe r14,r13,r12 |
180: 7d 6a 4d 3c stwbrxe r11,r10,r9 |
184: 7d 07 31 3d stwcxe. r8,r7,r6 |
188: e8 a4 03 2e stwe r5,50\(r4\) |
18c: e8 62 02 8f stwue r3,40\(r2\) |
190: 7c 22 19 7e stwuxe r1,r2,r3 |
194: 7c 85 31 3e stwxe r4,r5,r6 |
198: 4c 00 00 66 rfci |
19c: 7c 60 01 06 wrtee r3 |
1a0: 7c 00 81 46 wrteei 1 |
1a4: 7c 85 02 06 mfdcrx r4,r5 |
1a8: 7c aa 3a 86 mfdcr r5,234 |
1ac: 7c e6 03 06 mtdcrx r6,r7 |
1b0: 7d 10 6b 86 mtdcr 432,r8 |
1b4: 7c 00 04 ac msync |
1b8: 7c 09 55 ec dcba r9,r10 |
1bc: 7c 00 06 ac mbar |
/altivec_and_spe.s
0,0 → 1,4
.text |
dssall |
mtspefscr 8 |
rfid |
/textalign-xcoff-001.d
0,0 → 1,14
#objdump: -h |
#source: textalign-xcoff-001.s |
#as: |
|
.*: file format aixcoff-rs6000 |
|
Sections: |
Idx Name Size VMA LMA File off Algn |
0 \.text 00000004 0+0 0+0 000000a8 2\*\*2 |
CONTENTS, ALLOC, LOAD, CODE |
1 \.data 00000008 0+04 0+04 000000ac 2\*\*3 |
CONTENTS, ALLOC, LOAD, RELOC, DATA |
2 \.bss 00000000 0+0c 0+0c 00000000 2\*\*3 |
ALLOC |
/regnames.d
0,0 → 1,8
#as: -mregnames |
#objdump: -s -j .text |
#name: PowerPC symbolic regnames |
|
.* |
|
Contents of section \.text: |
0000 4fbdcb82 88850004 .* |
/textalign-xcoff-002.d
0,0 → 1,14
#objdump: -h |
#source: textalign-xcoff-001.s |
#as: -mppc64 -a64 |
|
.*: file format .*coff64-rs6000 |
|
Sections: |
Idx Name Size VMA LMA File off Algn |
0 \.text 00000004 0000000000000000 0000000000000000 000000f0 2\*\*2 |
CONTENTS, ALLOC, LOAD, CODE |
1 \.data 00000008 0000000000000004 0000000000000004 000000f4 2\*\*3 |
CONTENTS, ALLOC, LOAD, RELOC, DATA |
2 \.bss 00000000 000000000000000c 000000000000000c 00000000 2\*\*3 |
ALLOC |
/machine.d
0,0 → 1,9
#objdump: -s -j .text |
#name: PowerPC .machine test |
|
.* |
|
Contents of section \.text: |
0000 7c11eba6 7c100ba6 4c000066 00000200 .* |
0010 44000002 4c0000a4 7c000224 4e800020 .* |
0020 7c11eba6 .* |
/altivec.s
0,0 → 1,10
# PowerPC AltiVec tests |
#as: -m601 -maltivec |
.section ".text" |
start: |
dss 3 |
dssall |
dst 5,4,1 |
dstt 8,7,0 |
dstst 5,6,3 |
dststt 4,5,2 |
/align.s
0,0 → 1,6
.comm default_align_4,16 |
.comm align_1,32,1 |
.comm align_2,64,2 |
.comm align_4,128,3 |
.comm align_8,256,4 |
|
/test1xcoff32.s
0,0 → 1,82
|
|
|
|
|
|
|
|
|
|
|
|
.csect [RW] |
dsym0: .long 0xdeadbeef |
dsym1: |
|
.toc |
.L_tsym0: |
.tc ignored0[TC],dsym0 |
.L_tsym1: |
.tc ignored1[TC],dsym1 |
.L_tsym2: |
.tc ignored2[TC],usym0 |
.L_tsym3: |
.tc ignored3[TC],usym1 |
.L_tsym4: |
.tc ignored4[TC],esym0 |
.L_tsym5: |
.tc ignored5[TC],esym1 |
.L_tsym6: |
.tc ignored6[TC],.text |
|
.csect .crazy_table[RO] |
xdsym0: .long 0xbeefed |
xdsym1: |
.csect [PR] |
.lglobl reference_csect_relative_symbols |
reference_csect_relative_symbols: |
lwz 3,xdsym0(3) |
lwz 3,xdsym1(3) |
lwz 3,xusym0(3) |
lwz 3,xusym1(3) |
|
.lglobl dubious_references_to_default_RW_csect |
dubious_references_to_default_RW_csect: |
lwz 3,dsym0(3) |
lwz 3,dsym1(3) |
lwz 3,usym0(3) |
lwz 3,usym1(3) |
|
.lglobl reference_via_toc |
reference_via_toc: |
lwz 3,.L_tsym0(2) |
lwz 3,.L_tsym1(2) |
lwz 3,.L_tsym2(2) |
lwz 3,.L_tsym3(2) |
lwz 3,.L_tsym4(2) |
lwz 3,.L_tsym5(2) |
|
.lglobl subtract_symbols |
subtract_symbols: |
li 3,dsym1-dsym0 |
li 3,dsym0-dsym1 |
li 3,usym1-usym0 |
li 3,usym0-usym1 |
li 3,dsym0-usym0 |
li 3,usym0-dsym0 |
lwz 3,dsym1-dsym0(4) |
|
.lglobl load_addresses |
load_addresses: |
la 3,xdsym0(0) |
la 3,xusym0(0) |
|
la 3,.L_tsym6(2) |
|
.csect [RW] |
usym0: .long 0xcafebabe |
usym1: .long 0xbaad |
.csect .crazy_table[RO] |
xusym0: .long 0xbeefed |
xusym1: |
/test1elf32.s
0,0 → 1,58
|
|
|
|
|
|
|
|
|
|
|
|
.section ".data" |
dsym0: .long 0xdeadbeef |
dsym1: |
|
|
|
.section ".text" |
lwz 3,dsym0@l(3) |
lwz 3,dsym1@l(3) |
lwz 3,usym0@l(3) |
lwz 3,usym1@l(3) |
lwz 3,esym0@l(3) |
lwz 3,esym1@l(3) |
|
|
|
li 3,dsym1-dsym0 |
li 3,dsym0-dsym1 |
li 3,usym1-usym0 |
li 3,usym0-usym1 |
li 3,dsym0-usym0 |
li 3,usym0-dsym0 |
|
li 3,dsym0@l |
li 3,dsym0@h |
li 3,dsym0@ha |
|
|
li 3,usym0-usym1@l |
li 3,usym0-usym1@h |
li 3,usym0-usym1@ha |
|
|
lwz 3,dsym1-dsym0@l(4) |
|
lwz 3,.text@l(0) |
|
.section ".data" |
usym0: .long 0xcafebabe |
usym1: |
|
datpt: .long jk-.+10000000 |
dat0: .long jk-dat1 |
dat1: .long jk-dat1 |
dat2: .long jk-dat1 |
|
/booke_xcoff64.s
0,0 → 1,136
# Motorola PowerPC BookE tests |
#as: -a64 -mppc64 -mbooke64 |
.csect .text[PR] |
.csect main[DS] |
main: |
.csect .text[PR] |
.main: |
tlbre 1, 2, 7 |
tlbwe 5, 30, 3 |
bce 1, 5, branch_target_1 |
bcel 2, 6, branch_target_2 |
bcea 3, 7, branch_target_3 |
bcela 4, 8, branch_target_4 |
bclre 5, 9 |
bclrel 5, 10 |
bcctre 8, 11 |
bcctrel 8, 12 |
be branch_target_5 |
bel branch_target_6 |
bea branch_target_7 |
bela branch_target_8 |
|
branch_target_1: |
lbze 8, 8(9) |
lbzue 12, 4(15) |
lbzuxe 4, 6, 8 |
lbzxe 3, 5, 7 |
|
branch_target_2: |
lde 5, 400(6) |
ldue 6, 452(7) |
ldxe 7, 8, 9 |
lduxe 10, 11, 12 |
|
branch_target_3: |
lfde 12, 128(1) |
lfdue 1, 16(5) |
lfdxe 5, 1, 3 |
lfduxe 6, 2, 4 |
lfse 8, 48(9) |
lfsue 9, 68(10) |
lfsuxe 10, 4, 8 |
lfsxe 9, 3, 7 |
|
branch_target_4: |
lhae 10, 50(5) |
lhaue 1, 5(3) |
lhauxe 5, 1, 3 |
lhaxe 29, 30, 31 |
lhbrxe 1, 2, 3 |
lhze 4, 18(3) |
lhzue 6, 20(9) |
lhzuxe 5, 7, 9 |
lhzxe 9, 7, 5 |
|
branch_target_5: |
lwarxe 10, 15, 20 |
lwbrxe 5, 10, 18 |
lwze 28, 4(29) |
lwzue 8, 40(10) |
lwzuxe 3, 6, 9 |
lwzxe 30, 29, 28 |
|
branch_target_6: |
dcbae 6, 7 |
dcbfe 8, 9 |
dcbie 10, 11 |
dcbste 8, 30 |
dcbte 6, 3, 1 |
dcbtste 5, 4, 2 |
dcbze 15, 14 |
icbie 3, 4 |
icbt 5, 8, 9 |
icbte 6, 10, 15 |
mfapidi 5, 6 |
tlbivax 7, 8 |
tlbivaxe 9, 10 |
tlbsx 11, 12 |
tlbsxe 13, 14 |
|
branch_target_7: |
adde64 1, 2, 3 |
adde64o 4, 5, 6 |
addme64 7, 8 |
addme64o 9, 10 |
addze64 11, 12 |
addze64o 13, 14 |
mcrxr64 5 |
subfe64 15, 16, 17 |
subfe64o 18, 19, 20 |
subfme64 21, 22 |
subfme64o 23, 24 |
subfze64 25, 26 |
subfze64o 27, 28 |
|
branch_target_8: |
stbe 1, 50(2) |
stbue 3, 40(4) |
stbuxe 5, 6, 7 |
stbxe 8, 9, 10 |
stdcxe. 11, 12, 13 |
stde 14, 28(15) |
stdue 16, 20(17) |
stdxe 18, 19, 20 |
stduxe 21, 22, 23 |
stfde 1, 12(24) |
stfdue 2, 0(25) |
stfdxe 3, 26, 27 |
stfduxe 4, 28, 29 |
stfiwxe 5, 30, 31 |
stfse 6, 24(30) |
stfsue 7, 20(29) |
stfsxe 8, 28, 27 |
stfsuxe 9, 26, 25 |
sthbrxe 24, 23, 22 |
sthe 21, 30(20) |
sthue 19, 40(18) |
sthuxe 17, 16, 15 |
sthxe 14, 13, 12 |
stwbrxe 11, 10, 9 |
stwcxe. 8, 7, 6 |
stwe 5, 50(4) |
stwue 3, 40(2) |
stwuxe 1, 2, 3 |
stwxe 4, 5, 6 |
|
rfci |
wrtee 3 |
wrteei 1 |
mfdcrx 4, 5 |
mfdcr 5, 234 |
mtdcrx 6, 7 |
mtdcr 432, 8 |
msync |
dcba 9, 10 |
mbar 0 |
/astest64.d
0,0 → 1,75
#objdump: -Dr |
#name: PowerPC 64-bit test 1 |
|
.*: +file format elf64-powerpc |
|
Disassembly of section \.text: |
|
0000000000000000 <foo>: |
0: 60 00 00 00 nop |
4: 60 00 00 00 nop |
8: 60 00 00 00 nop |
|
000000000000000c <a>: |
c: 48 00 00 04 b 10 <apfour> |
|
0000000000000010 <apfour>: |
10: 48 00 00 08 b 18 <apfour\+0x8> |
14: 48 00 00 00 b 14 <apfour\+0x4> |
14: R_PPC64_REL24 x |
18: 48 00 00 04 b 1c <apfour\+0xc> |
18: R_PPC64_REL24 \.data\+0x4 |
1c: 48 00 00 00 b 1c <apfour\+0xc> |
1c: R_PPC64_REL24 z |
20: 48 00 00 14 b 34 <apfour\+0x24> |
20: R_PPC64_REL24 z\+0x14 |
24: 48 00 00 04 b 28 <apfour\+0x18> |
28: 48 00 00 00 b 28 <apfour\+0x18> |
28: R_PPC64_REL24 a |
2c: 4b ff ff e4 b 10 <apfour> |
30: 48 00 00 04 b 34 <apfour\+0x24> |
30: R_PPC64_REL24 a\+0x4 |
34: 4b ff ff e0 b 14 <apfour\+0x4> |
38: 00 00 00 38 \.long 0x38 |
38: R_PPC64_ADDR32 \.text\+0x38 |
3c: 00 00 00 44 \.long 0x44 |
3c: R_PPC64_ADDR32 \.text\+0x44 |
40: 00 00 00 00 \.long 0x0 |
40: R_PPC64_REL32 x |
44: 00 00 00 04 \.long 0x4 |
44: R_PPC64_REL32 x\+0x4 |
48: 00 00 00 00 \.long 0x0 |
48: R_PPC64_REL32 z |
4c: 00 00 00 04 \.long 0x4 |
4c: R_PPC64_REL32 \.data\+0x4 |
50: 00 00 00 00 \.long 0x0 |
50: R_PPC64_ADDR32 x |
54: 00 00 00 04 \.long 0x4 |
54: R_PPC64_ADDR32 \.data\+0x4 |
58: 00 00 00 00 \.long 0x0 |
58: R_PPC64_ADDR32 z |
5c: ff ff ff fc fnmsub f31,f31,f31,f31 |
5c: R_PPC64_ADDR32 x\+0xfffffffffffffffc |
60: 00 00 00 00 \.long 0x0 |
60: R_PPC64_ADDR32 \.data |
64: ff ff ff fc fnmsub f31,f31,f31,f31 |
64: R_PPC64_ADDR32 z\+0xfffffffffffffffc |
68: ff ff ff a4 \.long 0xffffffa4 |
6c: ff ff ff a4 \.long 0xffffffa4 |
70: 00 00 00 00 \.long 0x0 |
70: R_PPC64_ADDR32 a |
74: 00 00 00 10 \.long 0x10 |
74: R_PPC64_ADDR32 \.text\+0x10 |
78: 00 00 00 10 \.long 0x10 |
78: R_PPC64_ADDR32 \.text\+0x10 |
7c: ff ff ff fc fnmsub f31,f31,f31,f31 |
80: 00 00 00 12 \.long 0x12 |
80: R_PPC64_ADDR32 \.text\+0x12 |
84: 00 00 00 00 \.long 0x0 |
Disassembly of section \.data: |
|
0000000000000000 <x>: |
0: 00 00 00 00 \.long 0x0 |
|
0000000000000004 <y>: |
4: 00 00 00 00 \.long 0x0 |
/range64.l
0,0 → 1,6
.*: Assembler messages: |
.*:3: Error: operand out of domain \(-1 is not a multiple of 4\) |
.*:4: Error: operand out of domain \(2 is not a multiple of 4\) |
.*:5: Error: operand out of range.* |
.*:6: Error: operand out of range.* |
.*:7: Error: operand out of range.* |
/cell.d
0,0 → 1,31
#as: -mcell |
#objdump: -dr -Mcell |
#name: Cell tests |
|
|
.*: +file format elf(32)?(64)?-powerpc.* |
|
|
Disassembly of section \.text: |
|
0000000000000000 <.text>: |
0: 7c 01 14 0e lvlx v0,r1,r2 |
4: 7c 00 14 0e lvlx v0,0,r2 |
8: 7c 01 16 0e lvlxl v0,r1,r2 |
c: 7c 00 16 0e lvlxl v0,0,r2 |
10: 7c 01 14 4e lvrx v0,r1,r2 |
14: 7c 00 14 4e lvrx v0,0,r2 |
18: 7c 01 16 4e lvrxl v0,r1,r2 |
1c: 7c 00 16 4e lvrxl v0,0,r2 |
20: 7c 01 15 0e stvlx v0,r1,r2 |
24: 7c 00 15 0e stvlx v0,0,r2 |
28: 7c 01 17 0e stvlxl v0,r1,r2 |
2c: 7c 00 17 0e stvlxl v0,0,r2 |
30: 7c 01 15 4e stvrx v0,r1,r2 |
34: 7c 00 15 4e stvrx v0,0,r2 |
38: 7c 01 17 4e stvrxl v0,r1,r2 |
3c: 7c 00 17 4e stvrxl v0,0,r2 |
40: 7c 00 0c 28 ldbrx r0,0,r1 |
44: 7c 01 14 28 ldbrx r0,r1,r2 |
48: 7c 00 0d 28 stdbrx r0,0,r1 |
4c: 7c 01 15 28 stdbrx r0,r1,r2 |
/textalign-xcoff-001.s
0,0 → 1,11
.globl __start |
.globl .__start |
|
__start: |
.csect .data[DS] |
.long .__start |
|
.csect .text[pr] |
.__start: |
nop |
|
/regnames.s
0,0 → 1,3
.text |
cror 4*%cr7+gt,%cr7*4+gt,4*%cr6+gt |
lbz r4,4(r5) |
/power4.d
0,0 → 1,104
#objdump: -drx -Mpower4 |
#as: -mpower4 |
#name: Power4 instructions |
|
.*: +file format elf64-powerpc |
.* |
architecture: powerpc:common64, flags 0x0+11: |
HAS_RELOC, HAS_SYMS |
start address 0x0+ |
|
Sections: |
Idx Name +Size +VMA +LMA +File off +Algn |
+0 \.text +0+c4 +0+ +0+ +.* |
+CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE |
+1 \.data +0+10 +0+ +0+ +.* |
+CONTENTS, ALLOC, LOAD, DATA |
+2 \.bss +0+ +0+ +0+ +.* |
+ALLOC |
+3 \.toc +0+30 +0+ +0+ +.* |
+CONTENTS, ALLOC, LOAD, RELOC, DATA |
SYMBOL TABLE: |
0+ l +d +\.text 0+ (|\.text) |
0+ l +d +\.data 0+ (|\.data) |
0+ l +d +\.bss 0+ (|\.bss) |
0+ l +\.data 0+ dsym0 |
0+8 l +\.data 0+ dsym1 |
0+ l +d +\.toc 0+ (|\.toc) |
0+8 l +\.data 0+ usym0 |
0+10 l +\.data 0+ usym1 |
0+ +\*UND\* 0+ esym0 |
0+ +\*UND\* 0+ esym1 |
|
|
Disassembly of section \.text: |
|
0+ <\.text>: |
+0: e0 83 00 00 lq r4,0\(r3\) |
2: R_PPC64_ADDR16_LO_DS \.data |
+4: e0 83 00 00 lq r4,0\(r3\) |
6: R_PPC64_ADDR16_LO_DS \.data\+0x8 |
+8: e0 83 00 00 lq r4,0\(r3\) |
a: R_PPC64_ADDR16_LO_DS \.data\+0x8 |
+c: e0 83 00 10 lq r4,16\(r3\) |
e: R_PPC64_ADDR16_LO_DS \.data\+0x10 |
+10: e0 83 00 00 lq r4,0\(r3\) |
12: R_PPC64_ADDR16_LO_DS esym0 |
+14: e0 83 00 00 lq r4,0\(r3\) |
16: R_PPC64_ADDR16_LO_DS esym1 |
+18: e0 82 00 00 lq r4,0\(r2\) |
1a: R_PPC64_TOC16_DS \.toc |
+1c: e0 82 00 00 lq r4,0\(r2\) |
1e: R_PPC64_TOC16_DS \.toc\+0x8 |
+20: e0 82 00 10 lq r4,16\(r2\) |
22: R_PPC64_TOC16_DS \.toc\+0x10 |
+24: e0 82 00 10 lq r4,16\(r2\) |
26: R_PPC64_TOC16_DS \.toc\+0x18 |
+28: e0 82 00 20 lq r4,32\(r2\) |
2a: R_PPC64_TOC16_DS \.toc\+0x20 |
+2c: e0 82 00 20 lq r4,32\(r2\) |
2e: R_PPC64_TOC16_DS \.toc\+0x28 |
+30: e0 c2 00 20 lq r6,32\(r2\) |
32: R_PPC64_TOC16_LO_DS \.toc\+0x28 |
+34: e0 80 00 00 lq r4,0\(0\) |
36: R_PPC64_ADDR16_LO_DS \.text |
+38: e0 c3 00 00 lq r6,0\(r3\) |
3a: R_PPC64_GOT16_DS \.data |
+3c: e0 c3 00 00 lq r6,0\(r3\) |
3e: R_PPC64_GOT16_LO_DS \.data |
+40: e0 c3 00 00 lq r6,0\(r3\) |
42: R_PPC64_PLT16_LO_DS \.data |
+44: e0 c3 00 00 lq r6,0\(r3\) |
46: R_PPC64_SECTOFF_DS \.data\+0x8 |
+48: e0 c3 00 00 lq r6,0\(r3\) |
4a: R_PPC64_SECTOFF_LO_DS \.data\+0x8 |
+4c: e0 c4 00 10 lq r6,16\(r4\) |
+50: f8 c7 00 02 stq r6,0\(r7\) |
+54: f8 c7 00 12 stq r6,16\(r7\) |
+58: f8 c7 ff f2 stq r6,-16\(r7\) |
+5c: f8 c7 80 02 stq r6,-32768\(r7\) |
+60: f8 c7 7f f2 stq r6,32752\(r7\) |
+64: 00 00 02 00 attn |
+68: 7c 6f f1 20 mtcr r3 |
+6c: 7c 6f f1 20 mtcr r3 |
+70: 7c 68 11 20 mtcrf 129,r3 |
+74: 7c 70 11 20 mtocrf 1,r3 |
+78: 7c 70 21 20 mtocrf 2,r3 |
+7c: 7c 70 41 20 mtocrf 4,r3 |
+80: 7c 70 81 20 mtocrf 8,r3 |
+84: 7c 71 01 20 mtocrf 16,r3 |
+88: 7c 72 01 20 mtocrf 32,r3 |
+8c: 7c 74 01 20 mtocrf 64,r3 |
+90: 7c 78 01 20 mtocrf 128,r3 |
+94: 7c 60 00 26 mfcr r3 |
+98: 7c 70 10 26 mfocrf r3,1 |
+9c: 7c 70 20 26 mfocrf r3,2 |
+a0: 7c 70 40 26 mfocrf r3,4 |
+a4: 7c 70 80 26 mfocrf r3,8 |
+a8: 7c 71 00 26 mfocrf r3,16 |
+ac: 7c 72 00 26 mfocrf r3,32 |
+b0: 7c 74 00 26 mfocrf r3,64 |
+b4: 7c 78 00 26 mfocrf r3,128 |
+b8: 7c 01 17 ec dcbz r1,r2 |
+bc: 7c 23 27 ec dcbzl r3,r4 |
+c0: 7c 05 37 ec dcbz r5,r6 |
/ppc750ps.d
0,0 → 1,72
#as: -m750cl |
#objdump: -dr -Mppcps |
#name: PPC750CL paired single tests |
|
.*: +file format elf(32)?(64)?-powerpc.* |
|
Disassembly of section \.text: |
|
0+0000000 <start>: |
0: e0 03 d0 04 psq_l f0,4\(r3\),1,5 |
4: e4 22 30 08 psq_lu f1,8\(r2\),0,3 |
8: 10 45 25 4c psq_lux f2,r5,r4,1,2 |
c: 10 62 22 8c psq_lx f3,r2,r4,0,5 |
10: f0 62 30 08 psq_st f3,8\(r2\),0,3 |
14: f4 62 70 08 psq_stu f3,8\(r2\),0,7 |
18: 10 43 22 ce psq_stux f2,r3,r4,0,5 |
1c: 10 c7 46 0e psq_stx f6,r7,r8,1,4 |
20: 10 a0 3a 10 ps_abs f5,f7 |
24: 10 a0 3a 11 ps_abs. f5,f7 |
28: 10 22 18 2a ps_add f1,f2,f3 |
2c: 10 22 18 2b ps_add. f1,f2,f3 |
30: 11 82 20 40 ps_cmpo0 cr3,f2,f4 |
34: 11 82 20 c0 ps_cmpo1 cr3,f2,f4 |
38: 11 82 20 00 ps_cmpu0 cr3,f2,f4 |
3c: 11 82 20 80 ps_cmpu1 cr3,f2,f4 |
40: 10 44 30 24 ps_div f2,f4,f6 |
44: 10 44 30 25 ps_div. f2,f4,f6 |
48: 10 01 18 ba ps_madd f0,f1,f2,f3 |
4c: 10 01 18 bb ps_madd. f0,f1,f2,f3 |
50: 10 22 20 dc ps_madds0 f1,f2,f3,f4 |
54: 10 22 20 dd ps_madds0. f1,f2,f3,f4 |
58: 10 22 20 de ps_madds1 f1,f2,f3,f4 |
5c: 10 22 20 df ps_madds1. f1,f2,f3,f4 |
60: 10 44 34 20 ps_merge00 f2,f4,f6 |
64: 10 44 34 21 ps_merge00. f2,f4,f6 |
68: 10 44 34 60 ps_merge01 f2,f4,f6 |
6c: 10 44 34 61 ps_merge01. f2,f4,f6 |
70: 10 44 34 a0 ps_merge10 f2,f4,f6 |
74: 10 44 34 a1 ps_merge10. f2,f4,f6 |
78: 10 44 34 e0 ps_merge11 f2,f4,f6 |
7c: 10 44 34 e1 ps_merge11. f2,f4,f6 |
80: 10 60 28 90 ps_mr f3,f5 |
84: 10 60 28 91 ps_mr. f3,f5 |
88: 10 44 41 b8 ps_msub f2,f4,f6,f8 |
8c: 10 44 41 b9 ps_msub. f2,f4,f6,f8 |
90: 10 43 01 72 ps_mul f2,f3,f5 |
94: 10 43 01 73 ps_mul. f2,f3,f5 |
98: 10 64 01 d8 ps_muls0 f3,f4,f7 |
9c: 10 64 01 d9 ps_muls0. f3,f4,f7 |
a0: 10 64 01 da ps_muls1 f3,f4,f7 |
a4: 10 64 01 db ps_muls1. f3,f4,f7 |
a8: 10 20 29 10 ps_nabs f1,f5 |
ac: 10 20 29 11 ps_nabs. f1,f5 |
b0: 10 20 28 50 ps_neg f1,f5 |
b4: 10 20 28 51 ps_neg. f1,f5 |
b8: 10 23 39 7e ps_nmadd f1,f3,f5,f7 |
bc: 10 23 39 7f ps_nmadd. f1,f3,f5,f7 |
c0: 10 23 39 7c ps_nmsub f1,f3,f5,f7 |
c4: 10 23 39 7d ps_nmsub. f1,f3,f5,f7 |
c8: 11 20 18 30 ps_res f9,f3 |
cc: 11 20 18 31 ps_res. f9,f3 |
d0: 11 20 18 34 ps_rsqrte f9,f3 |
d4: 11 20 18 35 ps_rsqrte. f9,f3 |
d8: 10 22 20 ee ps_sel f1,f2,f3,f4 |
dc: 10 22 20 ef ps_sel. f1,f2,f3,f4 |
e0: 10 ab 10 28 ps_sub f5,f11,f2 |
e4: 10 ab 10 29 ps_sub. f5,f11,f2 |
e8: 10 45 52 54 ps_sum0 f2,f5,f9,f10 |
ec: 10 45 52 55 ps_sum0. f2,f5,f9,f10 |
f0: 10 45 52 56 ps_sum1 f2,f5,f9,f10 |
f4: 10 45 52 57 ps_sum1. f2,f5,f9,f10 |
f8: 10 03 2f ec dcbz_l r3,r5 |
/machine.s
0,0 → 1,15
.machine "403" |
.text |
mtpid 0 |
.machine push |
.machine "booke" |
mtpid 0 |
.machine Any |
rfci |
attn |
sc |
rfsvc |
tlbiel 0 |
blr |
.machine pop |
mtpid 0 |
/booke_xcoff.d
0,0 → 1,25
#as: -mppc32 -mbooke32 |
#objdump: -mpowerpc -dr -Mbooke32 |
#name: xcoff BookE tests |
|
.*: file format aixcoff-rs6000 |
|
Disassembly of section .text: |
|
(00000000)?00000000 <.text>: |
0: 7c 22 3f 64 tlbre r1,r2,7 |
4: 7c be 1f a4 tlbwe r5,r30,3 |
8: 7c a8 48 2c icbt 5,r8,r9 |
c: 7c a6 02 26 mfapidi r5,r6 |
10: 7c 07 46 24 tlbivax r7,r8 |
14: 7c 0b 67 24 tlbsx r11,r12 |
18: 4c 00 00 66 rfci |
1c: 7c 60 01 06 wrtee r3 |
20: 7c 00 81 46 wrteei 1 |
24: 7c 85 02 06 mfdcrx r4,r5 |
28: 7c aa 3a 86 mfdcr r5,234 |
2c: 7c e6 03 06 mtdcrx r6,r7 |
30: 7d 10 6b 86 mtdcr 432,r8 |
34: 7c 00 04 ac msync |
38: 7c 09 55 ec dcba r9,r10 |
3c: 7c 00 06 ac mbar |
/range64.s
0,0 → 1,7
.text |
ld 4,-32768(3) |
ld 5,-1(3) |
ld 6,2(3) |
ld 7,32767(3) |
ld 8,32768(3) |
ld 9,-32769(3) |
/astest2.d
0,0 → 1,87
#objdump: -Dr |
#name: PowerPC test 2 |
|
.*: +file format elf32-powerpc |
|
Disassembly of section \.text: |
|
0+0000000 <foo>: |
0: 60 00 00 00 nop |
4: 60 00 00 00 nop |
8: 60 00 00 00 nop |
c: 48 00 00 04 b 10 <foo\+0x10> |
10: 48 00 00 08 b 18 <foo\+0x18> |
14: 48 00 00 00 b 14 <foo\+0x14> |
14: R_PPC_REL24 x |
18: 48 00 00 04 b 1c <foo\+0x1c> |
18: R_PPC_REL24 \.data\+0x4 |
1c: 48 00 00 00 b 1c <foo\+0x1c> |
1c: R_PPC_REL24 z |
20: 48 00 00 14 b 34 <foo\+0x34> |
20: R_PPC_REL24 z\+0x14 |
24: 48 00 00 04 b 28 <foo\+0x28> |
28: 48 00 00 00 b 28 <foo\+0x28> |
28: R_PPC_REL24 a |
2c: 48 00 00 50 b 7c <apfour> |
30: 48 00 00 04 b 34 <foo\+0x34> |
30: R_PPC_REL24 a\+0x4 |
34: 48 00 00 4c b 80 <apfour\+0x4> |
38: 48 00 00 00 b 38 <foo\+0x38> |
38: R_PPC_LOCAL24PC a |
3c: 48 00 00 40 b 7c <apfour> |
40: 00 00 00 40 \.long 0x40 |
40: R_PPC_ADDR32 \.text\+0x40 |
44: 00 00 00 4c \.long 0x4c |
44: R_PPC_ADDR32 \.text\+0x4c |
48: 00 00 00 00 \.long 0x0 |
48: R_PPC_REL32 x |
4c: 00 00 00 04 \.long 0x4 |
4c: R_PPC_REL32 x\+0x4 |
50: 00 00 00 00 \.long 0x0 |
50: R_PPC_REL32 z |
54: 00 00 00 04 \.long 0x4 |
54: R_PPC_REL32 \.data\+0x4 |
58: 00 00 00 00 \.long 0x0 |
58: R_PPC_ADDR32 x |
5c: 00 00 00 04 \.long 0x4 |
5c: R_PPC_ADDR32 \.data\+0x4 |
60: 00 00 00 00 \.long 0x0 |
60: R_PPC_ADDR32 z |
64: ff ff ff fc fnmsub f31,f31,f31,f31 |
64: R_PPC_ADDR32 x\+0xf+ffffffc |
68: 00 00 00 00 \.long 0x0 |
68: R_PPC_ADDR32 \.data |
6c: ff ff ff fc fnmsub f31,f31,f31,f31 |
6c: R_PPC_ADDR32 z\+0xf+ffffffc |
70: 00 00 00 08 \.long 0x8 |
74: 00 00 00 08 \.long 0x8 |
|
0+0000078 <a>: |
78: 00 00 00 00 \.long 0x0 |
78: R_PPC_ADDR32 a |
|
0+000007c <apfour>: |
7c: 00 00 00 7c \.long 0x7c |
7c: R_PPC_ADDR32 \.text\+0x7c |
80: 00 00 00 7c \.long 0x7c |
80: R_PPC_ADDR32 \.text\+0x7c |
84: ff ff ff fc fnmsub f31,f31,f31,f31 |
88: 00 00 00 7e \.long 0x7e |
88: R_PPC_ADDR32 \.text\+0x7e |
8c: 00 00 00 00 \.long 0x0 |
90: 60 00 00 00 nop |
94: 40 a5 ff fc ble- cr1,90 <apfour\+0x14> |
98: 41 a9 ff f8 bgt- cr2,90 <apfour\+0x14> |
9c: 40 8d ff f4 ble\+ cr3,90 <apfour\+0x14> |
a0: 41 91 ff f0 bgt\+ cr4,90 <apfour\+0x14> |
a4: 40 95 00 10 ble- cr5,b4 <nop> |
a8: 41 99 00 0c bgt- cr6,b4 <nop> |
ac: 40 bd 00 08 ble\+ cr7,b4 <nop> |
b0: 41 a1 00 04 bgt\+ b4 <nop> |
Disassembly of section \.data: |
|
0+0000000 <x>: |
0: 00 00 00 00 \.long 0x0 |
|
0+0000004 <y>: |
4: 00 00 00 00 \.long 0x0 |
/altivec_xcoff64.d
0,0 → 1,15
#as: -a64 -mppc64 -maltivec |
#objdump: -dr |
#name: xcoff64 AltiVec tests |
|
.*: file format aix5?coff64-rs6000 |
|
Disassembly of section .text: |
|
0000000000000000 <.text>: |
0: 7c 60 06 6c dss 3 |
4: 7e 00 06 6c dssall |
8: 7c 25 22 ac dst r5,r4,1 |
c: 7e 08 3a ac dstt r8,r7,0 |
10: 7c 65 32 ec dstst r5,r6,3 |
14: 7e 44 2a ec dststt r4,r5,2 |
/e500mc.d
0,0 → 1,51
#as: -mppc -me500mc |
#objdump: -dr -Me500mc |
#name: Power E500MC tests |
|
.*: +file format elf(32)?(64)?-powerpc.* |
|
Disassembly of section \.text: |
|
0+0000000 <start>: |
0: 4c 00 00 4e rfdi |
4: 4c 00 00 cc rfgi |
8: 4c 1f f9 8c dnh 0,1023 |
c: 4f e0 01 8c dnh 31,0 |
10: 7c 09 57 be icbiep r9,r10 |
14: 7c 00 69 dc msgclr r13 |
18: 7c 00 71 9c msgsnd r14 |
1c: 7c 00 00 7c wait |
20: 7f 9c e3 78 mdors |
24: 7c 00 02 1c ehpriv |
28: 7c 18 cb c6 dsn r24,r25 |
2c: 7c 22 18 be lbepx r1,r2,r3 |
30: 7c 85 32 3e lhepx r4,r5,r6 |
34: 7c e8 48 3e lwepx r7,r8,r9 |
38: 7d 4b 60 3a ldepx r10,r11,r12 |
3c: 7d ae 7c be lfdepx r13,r14,r15 |
40: 7e 11 91 be stbepx r16,r17,r18 |
44: 7e 74 ab 3e sthepx r19,r20,r21 |
48: 7e d7 c1 3e stwepx r22,r23,r24 |
4c: 7f 3a d9 3a stdepx r25,r26,r27 |
50: 7f 9d f5 be stfdepx r28,r29,r30 |
54: 7c 01 14 06 lbdx r0,r1,r2 |
58: 7d 8d 74 46 lhdx r12,r13,r14 |
5c: 7c 64 2c 86 lwdx r3,r4,r5 |
60: 7f 5b e6 46 lfddx f26,r27,r28 |
64: 7d f0 8c c6 lddx r15,r16,r17 |
68: 7c c7 45 06 stbdx r6,r7,r8 |
6c: 7e 53 a5 46 sthdx r18,r19,r20 |
70: 7d 2a 5d 86 stwdx r9,r10,r11 |
74: 7f be ff 46 stfddx f29,r30,r31 |
78: 7e b6 bd c6 stddx r21,r22,r23 |
7c: 7c 20 0d ec dcbal r0,r1 |
80: 7c 26 3f ec dcbzl r6,r7 |
84: 7c 1f 00 7e dcbstep r31,r0 |
88: 7c 01 10 fe dcbfep r1,r2 |
8c: 7c 64 29 fe dcbtstep r3,r4,r5 |
90: 7c c7 42 7e dcbtep r6,r7,r8 |
94: 7c 0b 67 fe dcbzep r11,r12 |
98: 7c 00 06 26 tlbilx 0,0,r0 |
9c: 7c 20 06 26 tlbilx 1,0,r0 |
a0: 7c 62 1e 26 tlbilx 3,r2,r3 |
a4: 7c 64 2e 26 tlbilx 3,r4,r5 |
/aix.exp
0,0 → 1,66
# Copyright (C) 2001, 2002 Free Software Foundation, Inc. |
# Contributed by Red Hat |
|
# This program is free software; you can redistribute it and/or modify |
# it under the terms of the GNU General Public License as published by |
# the Free Software Foundation; either version 2 of the License, or |
# (at your option) any later version. |
# |
# This program is distributed in the hope that it will be useful, |
# but WITHOUT ANY WARRANTY; without even the implied warranty of |
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
# GNU General Public License for more details. |
# |
# You should have received a copy of the GNU General Public License |
# along with this program; if not, write to the Free Software |
# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA 02110-1301, USA. |
# |
|
# |
# Aix on PowerPC tests |
# |
proc do_align_test {} { |
set testname "align.s: Alignment of symbols part 1" |
set x0 0 |
set x1 0 |
set x2 0 |
set x3 0 |
set x4 0 |
|
set testname "align.s (part 2)" |
|
if [gas_test_old "align.s" "" "Alignment of symbols part 1"] { |
objdump_start_no_subdir "a.out" "-t" |
|
while 1 { |
expect { |
-re "AUX val 16 prmhsh 0 snhsh 0 typ 3 algn 2 clss 5 stb 0 snstb 0" { set x0 1 } |
-re "AUX val 32 prmhsh 0 snhsh 0 typ 3 algn 1 clss 5 stb 0 snstb 0" { set x1 1 } |
-re "AUX val 64 prmhsh 0 snhsh 0 typ 3 algn 2 clss 5 stb 0 snstb 0" { set x2 1 } |
-re "AUX val 128 prmhsh 0 snhsh 0 typ 3 algn 3 clss 5 stb 0 snstb 0" { set x3 1 } |
-re "AUX val 256 prmhsh 0 snhsh 0 typ 3 algn 4 clss 5 stb 0 snstb 0" { set x4 1 } |
-re "\[^\n\]*\n" { } |
timeout { perror "timeout\n"; break } |
eof { break } |
} |
} |
|
objdump_finish |
|
if [all_ones $x0 $x1 $x2 $x3 $x4] then { |
pass $testname |
} else { |
fail $testname |
} |
} |
} |
|
|
if [istarget powerpc-ibm-aix*] then { |
|
# Make sure that symbols are correctly aligned |
do_align_test |
|
run_dump_test "textalign-xcoff-001" |
run_dump_test "textalign-xcoff-002" |
} |
/astest64.s
0,0 → 1,50
.section ".data" |
.globl x |
.globl z |
x: .long 0 |
z = . + 4 |
four = z - x - 4 |
y: .long 0 |
|
.section ".text" |
foo: |
nop ; nop ; nop |
.globl a |
a: b .+4 |
b: b .+8 |
b x |
b y |
b z |
b z+20 |
b .+four |
b a |
b b |
b a+4 |
b b+4 |
.long . |
.long .+8 |
.long x-. |
.long x+4-. |
.long z-. |
.long y-. |
.long x |
.long y |
.long z |
.long x-four |
.long y-four |
.long z-four |
.long a-. |
.long b-. |
.long a |
.long b |
|
apfour = a + four |
.long apfour |
.long a-apfour |
.long apfour+2 |
.long apfour-b |
|
.type foo,@function |
.type a,@function |
.type b,@function |
.type apfour,@function |
/simpshft.d
0,0 → 1,27
#objdump: -s -j .text |
#as: -mppc64 |
#name: PowerPC test 3, simplified shifts |
|
.* |
|
Contents of section \.text: |
0000 78640fe0 7883f80e 78a545e4 78640020 xd..x...x.E.xd. |
0010 54640ffe 5083f800 54a5402e 5464043e Td..P...T.@.Td.> |
0020 78640004 786407e4 7864f806 7864ffe6 xd..xd..xd..xd.. |
0030 7864f842 7864ffe2 7864000c 7864080c xd.Bxd..xd..xd.. |
0040 78640fac 786407ec 78640000 78640800 xd..xd..xd..xd.. |
0050 7864f802 78640000 7864f802 78640800 xd..xd..xd..xd.. |
0060 78652010 786407e4 7864f806 78640000 xe .xd..xd..xd.. |
0070 7864f842 78640fe0 78640000 78640040 xd.Bxd..xd..xd.@ |
0080 786407e0 786407e4 786407a4 78640004 xd..xd..xd..xd.. |
0090 78640008 78640048 786407e8 78640fa8 xd..xd.Hxd..xd.. |
00a0 7864f80a 54640000 5464003e 5464f800 xd..Td..Td.>Td.. |
00b0 5464f83e 5464f87e 5464fffe 50640000 Td.>Td.~Td..Pd.. |
00c0 5064003e 50640ffe 5064f800 5064003e Pd.>Pd..Pd..Pd.> |
00d0 506407fe 5464003e 5464083e 5464f83e Pd..Td.>Td.>Td.> |
00e0 5464003e 5464f83e 5464083e 5c65203e Td.>Td.>Td.>\\e > |
00f0 5464003e 5464083c 5464f800 5464003e Td.>Td.<Td..Td.> |
0100 5464f87e 54640ffe 5464003e 5464007e Td.~Td..Td.>Td.~ |
0110 546407fe 5464003e 5464003c 54640000 Td..Td.>Td.<Td.. |
0120 5464003e 5464007e 546407fe 54640fbc Td.>Td.~Td..Td.. |
0130 5464f800 00000000 Td...... |
/astest2_64.d
0,0 → 1,75
#objdump: -Dr |
#name: PowerPC 64-bit test 2 |
|
.*: +file format elf64-powerpc |
|
Disassembly of section \.text: |
|
0000000000000000 <foo>: |
0: 60 00 00 00 nop |
4: 60 00 00 00 nop |
8: 60 00 00 00 nop |
c: 48 00 00 04 b 10 <foo\+0x10> |
10: 48 00 00 08 b 18 <foo\+0x18> |
14: 48 00 00 00 b 14 <foo\+0x14> |
14: R_PPC64_REL24 x |
18: 48 00 00 04 b 1c <foo\+0x1c> |
18: R_PPC64_REL24 \.data\+0x4 |
1c: 48 00 00 00 b 1c <foo\+0x1c> |
1c: R_PPC64_REL24 z |
20: 48 00 00 14 b 34 <foo\+0x34> |
20: R_PPC64_REL24 z\+0x14 |
24: 48 00 00 04 b 28 <foo\+0x28> |
28: 48 00 00 00 b 28 <foo\+0x28> |
28: R_PPC64_REL24 a |
2c: 48 00 00 48 b 74 <apfour> |
30: 48 00 00 04 b 34 <foo\+0x34> |
30: R_PPC64_REL24 a\+0x4 |
34: 48 00 00 44 b 78 <apfour\+0x4> |
38: 00 00 00 38 \.long 0x38 |
38: R_PPC64_ADDR32 \.text\+0x38 |
3c: 00 00 00 44 \.long 0x44 |
3c: R_PPC64_ADDR32 \.text\+0x44 |
40: 00 00 00 00 \.long 0x0 |
40: R_PPC64_REL32 x |
44: 00 00 00 04 \.long 0x4 |
44: R_PPC64_REL32 x\+0x4 |
48: 00 00 00 00 \.long 0x0 |
48: R_PPC64_REL32 z |
4c: 00 00 00 04 \.long 0x4 |
4c: R_PPC64_REL32 \.data\+0x4 |
50: 00 00 00 00 \.long 0x0 |
50: R_PPC64_ADDR32 x |
54: 00 00 00 04 \.long 0x4 |
54: R_PPC64_ADDR32 \.data\+0x4 |
58: 00 00 00 00 \.long 0x0 |
58: R_PPC64_ADDR32 z |
5c: ff ff ff fc fnmsub f31,f31,f31,f31 |
5c: R_PPC64_ADDR32 x\+0xfffffffffffffffc |
60: 00 00 00 00 \.long 0x0 |
60: R_PPC64_ADDR32 \.data |
64: ff ff ff fc fnmsub f31,f31,f31,f31 |
64: R_PPC64_ADDR32 z\+0xfffffffffffffffc |
68: 00 00 00 08 \.long 0x8 |
6c: 00 00 00 08 \.long 0x8 |
|
0000000000000070 <a>: |
70: 00 00 00 00 \.long 0x0 |
70: R_PPC64_ADDR32 a |
|
0000000000000074 <apfour>: |
74: 00 00 00 74 \.long 0x74 |
74: R_PPC64_ADDR32 \.text\+0x74 |
78: 00 00 00 74 \.long 0x74 |
78: R_PPC64_ADDR32 \.text\+0x74 |
7c: ff ff ff fc fnmsub f31,f31,f31,f31 |
80: 00 00 00 76 \.long 0x76 |
80: R_PPC64_ADDR32 \.text\+0x76 |
84: 00 00 00 00 \.long 0x0 |
Disassembly of section \.data: |
|
0000000000000000 <x>: |
0: 00 00 00 00 \.long 0x0 |
|
0000000000000004 <y>: |
4: 00 00 00 00 \.long 0x0 |
/cell.s
0,0 → 1,24
.section ".text" |
lvlx %r0, %r1, %r2 |
lvlx %r0, 0, %r2 |
lvlxl %r0, %r1, %r2 |
lvlxl %r0, 0, %r2 |
lvrx %r0, %r1, %r2 |
lvrx %r0, 0, %r2 |
lvrxl %r0, %r1, %r2 |
lvrxl %r0, 0, %r2 |
|
stvlx %r0, %r1, %r2 |
stvlx %r0, 0, %r2 |
stvlxl %r0, %r1, %r2 |
stvlxl %r0, 0, %r2 |
stvrx %r0, %r1, %r2 |
stvrx %r0, 0, %r2 |
stvrxl %r0, %r1, %r2 |
stvrxl %r0, 0, %r2 |
|
ldbrx %r0, 0, %r1 |
ldbrx %r0, %r1, %r2 |
|
stdbrx %r0, 0, %r1 |
stdbrx %r0, %r1, %r2 |
/power4.s
0,0 → 1,78
.section ".data" |
dsym0: .llong 0xdeadbeef |
dsym1: |
|
.section ".toc" |
.L_tsym0: |
.tc ignored0[TC],dsym0 |
.L_tsym1: |
.tc ignored1[TC],dsym1 |
.L_tsym2: |
.tc ignored2[TC],usym0 |
.L_tsym3: |
.tc ignored3[TC],usym1 |
.L_tsym4: |
.tc ignored4[TC],esym0 |
.L_tsym5: |
.tc ignored5[TC],esym1 |
|
.section ".text" |
lq 4,dsym0@l(3) |
lq 4,dsym1@l(3) |
lq 4,usym0@l(3) |
lq 4,usym1@l(3) |
lq 4,esym0@l(3) |
lq 4,esym1@l(3) |
lq 4,.L_tsym0@toc(2) |
lq 4,.L_tsym1@toc(2) |
lq 4,.L_tsym2@toc(2) |
lq 4,.L_tsym3@toc(2) |
lq 4,.L_tsym4@toc(2) |
lq 4,.L_tsym5@toc(2) |
lq 6,.L_tsym5@toc@l(2) |
lq 4,.text@l(0) |
lq 6,dsym0@got(3) |
lq 6,dsym0@got@l(3) |
lq 6,dsym0@plt@l(3) |
lq 6,dsym1@sectoff(3) |
lq 6,dsym1@sectoff@l(3) |
lq 6,usym1-dsym0@l(4) |
stq 6,0(7) |
stq 6,16(7) |
stq 6,-16(7) |
stq 6,-32768(7) |
stq 6,32752(7) |
|
attn |
|
mtcr 3 |
mtcrf 0xff,3 |
mtcrf 0x81,3 |
mtcrf 0x01,3 |
mtcrf 0x02,3 |
mtcrf 0x04,3 |
mtcrf 0x08,3 |
mtcrf 0x10,3 |
mtcrf 0x20,3 |
mtcrf 0x40,3 |
mtcrf 0x80,3 |
mfcr 3 |
# mfcr 3,0xff #Error, invalid mask |
# mfcr 3,0x81 #Error, invalid mask |
mfcr 3,0x01 |
mfcr 3,0x02 |
mfcr 3,0x04 |
mfcr 3,0x08 |
mfcr 3,0x10 |
mfcr 3,0x20 |
mfcr 3,0x40 |
mfcr 3,0x80 |
|
dcbz 1, 2 |
dcbzl 3, 4 |
dcbz 5, 6 |
|
.section ".data" |
usym0: .llong 0xcafebabe |
usym1: |
|
/booke.d
0,0 → 1,156
#as: -mbooke64 |
#objdump: -dr -Mbooke |
#name: BookE tests |
|
.*: +file format elf(32)?(64)?-powerpc.* |
|
Disassembly of section \.text: |
|
0+0000000 <start>: |
0: 24 25 00 30 bce 1,4\*cr1\+gt,30 <branch_target_1> |
4: 24 46 00 3d bcel 2,4\*cr1\+eq,40 <branch_target_2> |
8: 24 67 00 52 bcea 3,4\*cr1\+so,50 <branch_target_3> |
8: R_PPC(64)?_ADDR14 \.text\+0x50 |
c: 24 88 00 73 bcela 4,4\*cr2\+lt,70 <branch_target_4> |
c: R_PPC(64)?_ADDR14 \.text\+0x70 |
10: 4c a9 00 22 bclre 5,4\*cr2\+gt |
14: 4c aa 00 23 bclrel 5,4\*cr2\+eq |
18: 4d 0b 04 22 bcctre 8,4\*cr2\+so |
1c: 4d 0c 04 23 bcctrel 8,4\*cr3\+lt |
20: 58 00 00 74 be 94 <branch_target_5> |
24: 58 00 00 89 bel ac <branch_target_6> |
28: 58 00 00 f6 bea f4 <branch_target_7> |
28: R_PPC(64)?_ADDR24 \.text\+0xf4 |
2c: 58 00 01 2b bela 128 <branch_target_8> |
2c: R_PPC(64)?_ADDR24 \.text\+0x128 |
|
0+0000030 <branch_target_1>: |
30: e9 09 00 80 lbze r8,8\(r9\) |
34: e9 8f 00 41 lbzue r12,4\(r15\) |
38: 7c 86 40 fe lbzuxe r4,r6,r8 |
3c: 7c 65 38 be lbzxe r3,r5,r7 |
|
0+0000040 <branch_target_2>: |
40: f8 a6 06 40 lde r5,400\(r6\) |
44: f8 c7 07 11 ldue r6,452\(r7\) |
48: 7c e8 4e 3e ldxe r7,r8,r9 |
4c: 7d 4b 66 7e lduxe r10,r11,r12 |
|
0+0000050 <branch_target_3>: |
50: f9 81 02 06 lfde f12,128\(r1\) |
54: f8 25 00 47 lfdue f1,16\(r5\) |
58: 7c a1 1c be lfdxe f5,r1,r3 |
5c: 7c c2 24 fe lfduxe f6,r2,r4 |
60: f9 09 00 c4 lfse f8,48\(r9\) |
64: f9 2a 01 15 lfsue f9,68\(r10\) |
68: 7d 44 44 7e lfsuxe f10,r4,r8 |
6c: 7d 23 3c 3e lfsxe f9,r3,r7 |
|
0+0000070 <branch_target_4>: |
70: e9 45 03 24 lhae r10,50\(r5\) |
74: e8 23 00 55 lhaue r1,5\(r3\) |
78: 7c a1 1a fe lhauxe r5,r1,r3 |
7c: 7f be fa be lhaxe r29,r30,r31 |
80: 7c 22 1e 3c lhbrxe r1,r2,r3 |
84: e8 83 01 22 lhze r4,18\(r3\) |
88: e8 c9 01 43 lhzue r6,20\(r9\) |
8c: 7c a7 4a 7e lhzuxe r5,r7,r9 |
90: 7d 27 2a 3e lhzxe r9,r7,r5 |
|
0+0000094 <branch_target_5>: |
94: 7d 4f a0 fc lwarxe r10,r15,r20 |
98: 7c aa 94 3c lwbrxe r5,r10,r18 |
9c: eb 9d 00 46 lwze r28,4\(r29\) |
a0: e9 0a 02 87 lwzue r8,40\(r10\) |
a4: 7c 66 48 7e lwzuxe r3,r6,r9 |
a8: 7f dd e0 3e lwzxe r30,r29,r28 |
|
0+00000ac <branch_target_6>: |
ac: 7c 06 3d fc dcbae r6,r7 |
b0: 7c 08 48 bc dcbfe r8,r9 |
b4: 7c 0a 5b bc dcbie r10,r11 |
b8: 7c 08 f0 7c dcbste r8,r30 |
bc: 7c c3 0a 3c dcbte 6,r3,r1 |
c0: 7c a4 11 fa dcbtste 5,r4,r2 |
c4: 7c 0f 77 fc dcbze r15,r14 |
c8: 7c 03 27 bc icbie r3,r4 |
cc: 7c a8 48 2c icbt 5,r8,r9 |
d0: 7c ca 78 3c icbte 6,r10,r15 |
d4: 7c a6 02 26 mfapidi r5,r6 |
d8: 7c 07 46 24 tlbivax r7,r8 |
dc: 7c 09 56 26 tlbivaxe r9,r10 |
e0: 7c 0b 67 24 tlbsx r11,r12 |
e4: 7c 0d 77 26 tlbsxe r13,r14 |
e8: 7c 00 07 a4 tlbwe |
ec: 7c 00 07 a4 tlbwe |
f0: 7c 21 0f a4 tlbwe r1,r1,1 |
|
0+00000f4 <branch_target_7>: |
f4: 7c 22 1b 14 adde64 r1,r2,r3 |
f8: 7c 85 37 14 adde64o r4,r5,r6 |
fc: 7c e8 03 d4 addme64 r7,r8 |
100: 7d 2a 07 d4 addme64o r9,r10 |
104: 7d 6c 03 94 addze64 r11,r12 |
108: 7d ae 07 94 addze64o r13,r14 |
10c: 7e 80 04 40 mcrxr64 cr5 |
110: 7d f0 8b 10 subfe64 r15,r16,r17 |
114: 7e 53 a7 10 subfe64o r18,r19,r20 |
118: 7e b6 03 d0 subfme64 r21,r22 |
11c: 7e f8 07 d0 subfme64o r23,r24 |
120: 7f 3a 03 90 subfze64 r25,r26 |
124: 7f 7c 07 90 subfze64o r27,r28 |
|
0+0000128 <branch_target_8>: |
128: e8 22 03 28 stbe r1,50\(r2\) |
12c: e8 64 02 89 stbue r3,40\(r4\) |
130: 7c a6 39 fe stbuxe r5,r6,r7 |
134: 7d 09 51 be stbxe r8,r9,r10 |
138: 7d 6c 6b ff stdcxe\. r11,r12,r13 |
13c: f9 cf 00 78 stde r14,28\(r15\) |
140: fa 11 00 59 stdue r16,20\(r17\) |
144: 7e 53 a7 3e stdxe r18,r19,r20 |
148: 7e b6 bf 7e stduxe r21,r22,r23 |
14c: f8 38 00 3e stfde f1,12\(r24\) |
150: f8 59 00 0f stfdue f2,0\(r25\) |
154: 7c 7a dd be stfdxe f3,r26,r27 |
158: 7c 9c ed fe stfduxe f4,r28,r29 |
15c: 7c be ff be stfiwxe f5,r30,r31 |
160: f8 de 00 6c stfse f6,24\(r30\) |
164: f8 fd 00 5d stfsue f7,20\(r29\) |
168: 7d 1c dd 3e stfsxe f8,r28,r27 |
16c: 7d 3a cd 7e stfsuxe f9,r26,r25 |
170: 7f 17 b7 3c sthbrxe r24,r23,r22 |
174: ea b4 01 ea sthe r21,30\(r20\) |
178: ea 72 02 8b sthue r19,40\(r18\) |
17c: 7e 30 7b 7e sthuxe r17,r16,r15 |
180: 7d cd 63 3e sthxe r14,r13,r12 |
184: 7d 6a 4d 3c stwbrxe r11,r10,r9 |
188: 7d 07 31 3d stwcxe\. r8,r7,r6 |
18c: e8 a4 03 2e stwe r5,50\(r4\) |
190: e8 62 02 8f stwue r3,40\(r2\) |
194: 7c 22 19 7e stwuxe r1,r2,r3 |
198: 7c 85 31 3e stwxe r4,r5,r6 |
19c: 4c 00 00 66 rfci |
1a0: 7c 60 01 06 wrtee r3 |
1a4: 7c 00 81 46 wrteei 1 |
1a8: 7c 85 02 06 mfdcrx r4,r5 |
1ac: 7c aa 3a 86 mfdcr r5,234 |
1b0: 7c e6 03 06 mtdcrx r6,r7 |
1b4: 7d 10 6b 86 mtdcr 432,r8 |
1b8: 7c 00 04 ac msync |
1bc: 7c 09 55 ec dcba r9,r10 |
1c0: 7c 00 06 ac mbar |
1c4: 7c 00 06 ac mbar |
1c8: 7c 20 06 ac mbar 1 |
1cc: 7d 8d 77 24 tlbsx r12,r13,r14 |
1d0: 7d 8d 77 25 tlbsx\. r12,r13,r14 |
1d4: 7d 8d 77 26 tlbsxe r12,r13,r14 |
1d8: 7d 8d 77 27 tlbsxe\. r12,r13,r14 |
1dc: 7c 12 42 a6 mfsprg r0,2 |
1e0: 7c 12 42 a6 mfsprg r0,2 |
1e4: 7c 12 43 a6 mtsprg 2,r0 |
1e8: 7c 12 43 a6 mtsprg 2,r0 |
1ec: 7c 07 42 a6 mfsprg r0,7 |
1f0: 7c 07 42 a6 mfsprg r0,7 |
1f4: 7c 17 43 a6 mtsprg 7,r0 |
1f8: 7c 17 43 a6 mtsprg 7,r0 |
/ppc750ps.s
0,0 → 1,66
# PowerPC 750 paired single precision tests |
.section ".text" |
start: |
psq_l 0, 4(3), 1, 5 |
psq_lu 1, 8(2), 0, 3 |
psq_lux 2, 5, 4, 1, 2 |
psq_lx 3, 2, 4, 0, 5 |
psq_st 3, 8(2), 0, 3 |
psq_stu 3, 8(2), 0, 7 |
psq_stux 2, 3, 4, 0, 5 |
psq_stx 6, 7, 8, 1, 4 |
ps_abs 5,7 |
ps_abs. 5,7 |
ps_add 1,2,3 |
ps_add. 1,2,3 |
ps_cmpo0 3,2,4 |
ps_cmpo1 3,2,4 |
ps_cmpu0 3,2,4 |
ps_cmpu1 3,2,4 |
ps_div 2,4,6 |
ps_div. 2,4,6 |
ps_madd 0,1,2,3 |
ps_madd. 0,1,2,3 |
ps_madds0 1,2,3,4 |
ps_madds0. 1,2,3,4 |
ps_madds1 1,2,3,4 |
ps_madds1. 1,2,3,4 |
ps_merge00 2,4,6 |
ps_merge00. 2,4,6 |
ps_merge01 2,4,6 |
ps_merge01. 2,4,6 |
ps_merge10 2,4,6 |
ps_merge10. 2,4,6 |
ps_merge11 2,4,6 |
ps_merge11. 2,4,6 |
ps_mr 3,5 |
ps_mr. 3,5 |
ps_msub 2,4,6,8 |
ps_msub. 2,4,6,8 |
ps_mul 2,3,5 |
ps_mul. 2,3,5 |
ps_muls0 3,4,7 |
ps_muls0. 3,4,7 |
ps_muls1 3,4,7 |
ps_muls1. 3,4,7 |
ps_nabs 1,5 |
ps_nabs. 1,5 |
ps_neg 1,5 |
ps_neg. 1,5 |
ps_nmadd 1,3,5,7 |
ps_nmadd. 1,3,5,7 |
ps_nmsub 1,3,5,7 |
ps_nmsub. 1,3,5,7 |
ps_res 9,3 |
ps_res. 9,3 |
ps_rsqrte 9,3 |
ps_rsqrte. 9,3 |
ps_sel 1,2,3,4 |
ps_sel. 1,2,3,4 |
ps_sub 5,11,2 |
ps_sub. 5,11,2 |
ps_sum0 2,5,9,10 |
ps_sum0. 2,5,9,10 |
ps_sum1 2,5,9,10 |
ps_sum1. 2,5,9,10 |
dcbz_l 3,5 |
/test1elf64.d
0,0 → 1,151
#objdump: -Drx |
#name: PowerPC Test 1, 64 bit elf |
|
.*: +file format elf64-powerpc |
.* |
architecture: powerpc:common64, flags 0x00000011: |
HAS_RELOC, HAS_SYMS |
start address 0x0000000000000000 |
|
Sections: |
Idx Name Size VMA LMA File off Algn |
0 \.text 00000090 0000000000000000 0000000000000000 .* |
CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE |
1 \.data 00000030 0000000000000000 0000000000000000 .* |
CONTENTS, ALLOC, LOAD, RELOC, DATA |
2 \.bss 00000000 0000000000000000 0000000000000000 .* |
ALLOC |
3 \.toc 00000030 0000000000000000 0000000000000000 .* |
CONTENTS, ALLOC, LOAD, RELOC, DATA |
SYMBOL TABLE: |
0000000000000000 l d \.text 0000000000000000 (|\.text) |
0000000000000000 l d \.data 0000000000000000 (|\.data) |
0000000000000000 l d \.bss 0000000000000000 (|\.bss) |
0000000000000000 l \.data 0000000000000000 dsym0 |
0000000000000008 l \.data 0000000000000000 dsym1 |
0000000000000000 l d \.toc 0000000000000000 (|\.toc) |
0000000000000008 l \.data 0000000000000000 usym0 |
0000000000000010 l \.data 0000000000000000 usym1 |
0000000000000010 l \.data 0000000000000000 datpt |
0000000000000014 l \.data 0000000000000000 dat0 |
0000000000000018 l \.data 0000000000000000 dat1 |
000000000000001c l \.data 0000000000000000 dat2 |
0000000000000020 l \.data 0000000000000000 dat3 |
0000000000000028 l \.data 0000000000000000 dat4 |
0000000000000000 \*UND\* 0000000000000000 esym0 |
0000000000000000 \*UND\* 0000000000000000 esym1 |
0000000000000000 \*UND\* 0000000000000000 jk |
|
|
Disassembly of section \.text: |
|
0000000000000000 <\.text>: |
0: e8 63 00 00 ld r3,0\(r3\) |
2: R_PPC64_ADDR16_LO_DS \.data |
4: e8 63 00 08 ld r3,8\(r3\) |
6: R_PPC64_ADDR16_LO_DS \.data\+0x8 |
8: e8 63 00 08 ld r3,8\(r3\) |
a: R_PPC64_ADDR16_LO_DS \.data\+0x8 |
c: e8 63 00 10 ld r3,16\(r3\) |
e: R_PPC64_ADDR16_LO_DS \.data\+0x10 |
10: e8 63 00 00 ld r3,0\(r3\) |
12: R_PPC64_ADDR16_LO_DS esym0 |
14: e8 63 00 00 ld r3,0\(r3\) |
16: R_PPC64_ADDR16_LO_DS esym1 |
18: e8 62 00 00 ld r3,0\(r2\) |
1a: R_PPC64_TOC16_DS \.toc |
1c: e8 62 00 08 ld r3,8\(r2\) |
1e: R_PPC64_TOC16_DS \.toc\+0x8 |
20: e8 62 00 10 ld r3,16\(r2\) |
22: R_PPC64_TOC16_DS \.toc\+0x10 |
24: e8 62 00 18 ld r3,24\(r2\) |
26: R_PPC64_TOC16_DS \.toc\+0x18 |
28: e8 62 00 20 ld r3,32\(r2\) |
2a: R_PPC64_TOC16_DS \.toc\+0x20 |
2c: e8 62 00 28 ld r3,40\(r2\) |
2e: R_PPC64_TOC16_DS \.toc\+0x28 |
30: 3c 80 00 28 lis r4,40 |
32: R_PPC64_TOC16_HA \.toc\+0x28 |
34: e8 62 00 28 ld r3,40\(r2\) |
36: R_PPC64_TOC16_LO_DS \.toc\+0x28 |
38: 38 60 00 08 li r3,8 |
3c: 38 60 ff f8 li r3,-8 |
40: 38 60 00 08 li r3,8 |
44: 38 60 ff f8 li r3,-8 |
48: 38 60 ff f8 li r3,-8 |
4c: 38 60 00 08 li r3,8 |
50: 38 60 00 00 li r3,0 |
52: R_PPC64_ADDR16_LO \.data |
54: 38 60 00 00 li r3,0 |
56: R_PPC64_ADDR16_HI \.data |
58: 38 60 00 00 li r3,0 |
5a: R_PPC64_ADDR16_HA \.data |
5c: 38 60 00 00 li r3,0 |
5e: R_PPC64_ADDR16_HIGHER \.data |
60: 38 60 00 00 li r3,0 |
62: R_PPC64_ADDR16_HIGHERA \.data |
64: 38 60 00 00 li r3,0 |
66: R_PPC64_ADDR16_HIGHEST \.data |
68: 38 60 00 00 li r3,0 |
6a: R_PPC64_ADDR16_HIGHESTA \.data |
6c: 38 60 ff f8 li r3,-8 |
70: 38 60 ff ff li r3,-1 |
74: 38 60 00 00 li r3,0 |
78: 38 60 ff ff li r3,-1 |
7c: 38 60 00 00 li r3,0 |
80: 38 60 ff ff li r3,-1 |
84: 38 60 00 00 li r3,0 |
88: e8 64 00 08 ld r3,8\(r4\) |
8c: e8 60 00 00 ld r3,0\(0\) |
8e: R_PPC64_ADDR16_LO_DS \.text |
Disassembly of section \.data: |
|
0000000000000000 <dsym0>: |
0: 00 00 00 00 \.long 0x0 |
4: de ad be ef stfdu f21,-16657\(r13\) |
|
0000000000000008 <dsym1>: |
8: 00 00 00 00 \.long 0x0 |
c: ca fe ba be lfd f23,-17730\(r30\) |
|
0000000000000010 <datpt>: |
10: 00 98 96 80 \.long 0x989680 |
10: R_PPC64_REL32 jk\+0x989680 |
|
0000000000000014 <dat0>: |
14: ff ff ff fc fnmsub f31,f31,f31,f31 |
14: R_PPC64_REL32 jk\+0xfffffffffffffffc |
|
0000000000000018 <dat1>: |
18: 00 00 00 00 \.long 0x0 |
18: R_PPC64_REL32 jk |
|
000000000000001c <dat2>: |
1c: 00 00 00 04 \.long 0x4 |
1c: R_PPC64_REL32 jk\+0x4 |
|
0000000000000020 <dat3>: |
20: 00 00 00 00 \.long 0x0 |
20: R_PPC64_REL64 jk\+0x8 |
24: 00 00 00 08 \.long 0x8 |
|
0000000000000028 <dat4>: |
28: 00 00 00 00 \.long 0x0 |
28: R_PPC64_REL64 jk\+0x10 |
2c: 00 00 00 10 \.long 0x10 |
Disassembly of section \.toc: |
|
0000000000000000 <\.toc>: |
\.\.\. |
0: R_PPC64_ADDR64 \.data |
8: R_PPC64_ADDR64 \.data\+0x8 |
c: 00 00 00 08 \.long 0x8 |
10: 00 00 00 00 \.long 0x0 |
10: R_PPC64_ADDR64 \.data\+0x8 |
14: 00 00 00 08 \.long 0x8 |
18: 00 00 00 00 \.long 0x0 |
18: R_PPC64_ADDR64 \.data\+0x10 |
1c: 00 00 00 10 \.long 0x10 |
\.\.\. |
20: R_PPC64_ADDR64 esym0 |
28: R_PPC64_ADDR64 esym1 |
/booke_xcoff.s
0,0 → 1,24
# Motorola PowerPC BookE tests |
#as: -mbooke32 |
.csect .text[PR] |
.csect main[DS] |
main: |
.csect .text[PR] |
.main: |
|
tlbre 1, 2, 7 |
tlbwe 5, 30, 3 |
icbt 5, 8, 9 |
mfapidi 5, 6 |
tlbivax 7, 8 |
tlbsx 11, 12 |
rfci |
wrtee 3 |
wrteei 1 |
mfdcrx 4, 5 |
mfdcr 5, 234 |
mtdcrx 6, 7 |
mtdcr 432, 8 |
msync |
dcba 9, 10 |
mbar 0 |
/astest.d
0,0 → 1,78
#objdump: -Dr |
#name: PowerPC test 1 |
|
.*: +file format elf32-powerpc |
|
Disassembly of section \.text: |
|
0+0000000 <foo>: |
0: 60 00 00 00 nop |
4: 60 00 00 00 nop |
8: 60 00 00 00 nop |
|
0+000000c <a>: |
c: 48 00 00 04 b 10 <apfour> |
|
0+0000010 <apfour>: |
10: 48 00 00 08 b 18 <apfour\+0x8> |
14: 48 00 00 00 b 14 <apfour\+0x4> |
14: R_PPC_REL24 x |
18: 48 00 00 04 b 1c <apfour\+0xc> |
18: R_PPC_REL24 \.data\+0x4 |
1c: 48 00 00 00 b 1c <apfour\+0xc> |
1c: R_PPC_REL24 z |
20: 48 00 00 14 b 34 <apfour\+0x24> |
20: R_PPC_REL24 z\+0x14 |
24: 48 00 00 04 b 28 <apfour\+0x18> |
28: 48 00 00 00 b 28 <apfour\+0x18> |
28: R_PPC_REL24 a |
2c: 4b ff ff e4 b 10 <apfour> |
30: 48 00 00 04 b 34 <apfour\+0x24> |
30: R_PPC_REL24 a\+0x4 |
34: 4b ff ff e0 b 14 <apfour\+0x4> |
38: 48 00 00 00 b 38 <apfour\+0x28> |
38: R_PPC_LOCAL24PC a |
3c: 4b ff ff d4 b 10 <apfour> |
40: 00 00 00 40 \.long 0x40 |
40: R_PPC_ADDR32 \.text\+0x40 |
44: 00 00 00 4c \.long 0x4c |
44: R_PPC_ADDR32 \.text\+0x4c |
48: 00 00 00 00 \.long 0x0 |
48: R_PPC_REL32 x |
4c: 00 00 00 04 \.long 0x4 |
4c: R_PPC_REL32 x\+0x4 |
50: 00 00 00 00 \.long 0x0 |
50: R_PPC_REL32 z |
54: 00 00 00 04 \.long 0x4 |
54: R_PPC_REL32 \.data\+0x4 |
58: 00 00 00 00 \.long 0x0 |
58: R_PPC_ADDR32 x |
5c: 00 00 00 04 \.long 0x4 |
5c: R_PPC_ADDR32 \.data\+0x4 |
60: 00 00 00 00 \.long 0x0 |
60: R_PPC_ADDR32 z |
64: ff ff ff fc fnmsub f31,f31,f31,f31 |
64: R_PPC_ADDR32 x\+0xf+ffffffc |
68: 00 00 00 00 \.long 0x0 |
68: R_PPC_ADDR32 \.data |
6c: ff ff ff fc fnmsub f31,f31,f31,f31 |
6c: R_PPC_ADDR32 z\+0xf+ffffffc |
70: ff ff ff 9c \.long 0xffffff9c |
74: ff ff ff 9c \.long 0xffffff9c |
78: 00 00 00 00 \.long 0x0 |
78: R_PPC_ADDR32 a |
7c: 00 00 00 10 \.long 0x10 |
7c: R_PPC_ADDR32 \.text\+0x10 |
80: 00 00 00 10 \.long 0x10 |
80: R_PPC_ADDR32 \.text\+0x10 |
84: ff ff ff fc fnmsub f31,f31,f31,f31 |
88: 00 00 00 12 \.long 0x12 |
88: R_PPC_ADDR32 \.text\+0x12 |
8c: 00 00 00 00 \.long 0x0 |
Disassembly of section \.data: |
|
0+0000000 <x>: |
0: 00 00 00 00 \.long 0x0 |
|
0+0000004 <y>: |
4: 00 00 00 00 \.long 0x0 |
/astest2.s
0,0 → 1,66
four = 4 |
.section ".text" |
foo: |
nop ; nop ; nop |
.globl a |
b .+4 |
b .+8 |
b x |
b y |
b z |
b z+20 |
b .+four |
b a |
b b |
b a+4 |
b b+4 |
b a@local |
b b@local |
.long . |
.long .+8 |
.long x-. |
.long x+4-. |
.long z-. |
.long y-. |
.long x |
.long y |
.long z |
.long x-four |
.long y-four |
.long z-four |
.long a-. |
.long b-. |
a: .long a |
b: .long b |
|
apfour = a + four |
.long apfour |
.long a-apfour |
.long apfour+2 |
.long apfour-b |
|
.section ".data" |
.globl x |
.globl z |
x: .long 0 |
z = . + 4 |
y: .long 0 |
|
.type foo,@function |
.type a,@function |
.type b,@function |
.type apfour,@function |
|
.section ".text" |
.L1: |
nop |
ble- 1,.L1 |
bgt- 2,.L1 |
ble+ 3,.L1 |
bgt+ 4,.L1 |
ble- 5,.L2 |
bgt- 6,.L2 |
ble+ 7,.L2 |
bgt+ 0,.L2 |
.L2: |
nop: |
/range.l
0,0 → 1,3
.*: Assembler messages: |
.*:6: Error: operand out of range.* |
.*:7: Error: operand out of range.* |
/reloc.d
0,0 → 1,12
#readelf: -r --wide |
#name: reloc |
|
Relocation section '\.rela\.data' at .* contains 2 entries: |
Offset Info Type Sym\. Value Symbol's Name \+ Addend |
0+08 .* R_PPC_ADDR32 .* y \+ f+fc |
0+0c .* R_PPC_ADDR32 .* y \+ 0 |
|
Relocation section '\.rela\.data\.other' at .* contains 2 entries: |
Offset Info Type Sym\. Value Symbol's Name \+ Addend |
0+00 .* R_PPC_ADDR32 .* x \+ 0 |
0+04 .* R_PPC_ADDR32 .* x \+ f+fc |
/altivec_xcoff64.s
0,0 → 1,13
# PowerPC xcoff64 AltiVec tests |
#as: -a64 -mppc64 -maltivec |
.csect .text[PR] |
.csect main[DS] |
main: |
.csect .text[PR] |
.main: |
dss 3 |
dssall |
dst 5,4,1 |
dstt 8,7,0 |
dstst 5,6,3 |
dststt 4,5,2 |
/e500mc.s
0,0 → 1,45
# Power E500MC tests |
.section ".text" |
start: |
rfdi |
rfgi |
dnh 0, 1023 |
dnh 31, 0 |
icbiep 9, 10 |
msgclr 13 |
msgsnd 14 |
wait |
mdors |
ehpriv |
dsn 24, 25 |
lbepx 1, 2, 3 |
lhepx 4, 5, 6 |
lwepx 7, 8, 9 |
ldepx 10, 11, 12 |
lfdepx 13, 14, 15 |
stbepx 16, 17, 18 |
sthepx 19, 20, 21 |
stwepx 22, 23, 24 |
stdepx 25, 26, 27 |
stfdepx 28, 29, 30 |
lbdx 0, 1, 2 |
lhdx 12, 13, 14 |
lwdx 3, 4, 5 |
lfddx 26, 27, 28 |
lddx 15, 16, 17 |
stbdx 6, 7, 8 |
sthdx 18, 19, 20 |
stwdx 9, 10, 11 |
stfddx 29, 30, 31 |
stddx 21, 22, 23 |
dcbal 0, 1 |
dcbzl 6, 7 |
dcbstep 31, 0 |
dcbfep 1, 2 |
dcbtstep 3, 4, 5 |
dcbtep 6, 7, 8 |
dcbzep 11, 12 |
tlbilxlpid |
tlbilxpid |
tlbilxva 2, 3 |
tlbilx 3, 4, 5 |
/e500.d
0,0 → 1,51
#as: -mppc -me500 |
#objdump: -dr -Me500 |
#name: e500 tests |
|
.*: +file format elf(32)?(64)?-powerpc.* |
|
Disassembly of section \.text: |
|
0+0000000 <start>: |
0: 7c 43 25 de isel r2,r3,r4,23 |
4: 7c 85 33 0c dcblc 4,r5,r6 |
8: 7c e8 49 4c dcbtls 7,r8,r9 |
c: 7d 4b 61 0c dcbtstls 10,r11,r12 |
10: 7d ae 7b cc icbtls 13,r14,r15 |
14: 7e 11 91 cc icblc 16,r17,r18 |
18: 7c 89 33 9c mtpmr 201,r4 |
1c: 7c ab 32 9c mfpmr r5,203 |
20: 7c 00 04 0c bblels |
24: 7c 00 04 4c bbelr |
28: 7d 00 83 a6 mtspefscr r8 |
2c: 7d 20 82 a6 mfspefscr r9 |
30: 10 a0 22 cf efscfd r5,r4 |
34: 10 a4 02 e4 efdabs r5,r4 |
38: 10 a4 02 e5 efdnabs r5,r4 |
3c: 10 a4 02 e6 efdneg r5,r4 |
40: 10 a4 1a e0 efdadd r5,r4,r3 |
44: 10 a4 1a e1 efdsub r5,r4,r3 |
48: 10 a4 1a e8 efdmul r5,r4,r3 |
4c: 10 a4 1a e9 efddiv r5,r4,r3 |
50: 12 84 1a ec efdcmpgt cr5,r4,r3 |
54: 12 84 1a ed efdcmplt cr5,r4,r3 |
58: 12 84 1a ee efdcmpeq cr5,r4,r3 |
5c: 12 84 1a fc efdtstgt cr5,r4,r3 |
60: 12 84 1a fc efdtstgt cr5,r4,r3 |
64: 12 84 1a fd efdtstlt cr5,r4,r3 |
68: 12 84 1a fe efdtsteq cr5,r4,r3 |
6c: 10 a0 22 f1 efdcfsi r5,r4 |
70: 10 a0 22 e3 efdcfsid r5,r4 |
74: 10 a0 22 f0 efdcfui r5,r4 |
78: 10 a0 22 e2 efdcfuid r5,r4 |
7c: 10 a0 22 f3 efdcfsf r5,r4 |
80: 10 a0 22 f2 efdcfuf r5,r4 |
84: 10 a0 22 f5 efdctsi r5,r4 |
88: 10 a0 22 eb efdctsidz r5,r4 |
8c: 10 a0 22 fa efdctsiz r5,r4 |
90: 10 a0 22 f4 efdctui r5,r4 |
94: 10 a0 22 ea efdctuidz r5,r4 |
98: 10 a0 22 f8 efdctuiz r5,r4 |
9c: 10 a0 22 f7 efdctsf r5,r4 |
a0: 10 a0 22 f6 efdctuf r5,r4 |
a4: 10 a0 22 ef efdcfs r5,r4 |
/range.s
0,0 → 1,7
.text |
lbz 4,-32768(3) |
lbz 5,-1(3) |
lbz 6,2(3) |
lbz 7,32767(3) |
lbz 8,32768(3) |
lbz 9,-32769(3) |
/altivec_xcoff.d
0,0 → 1,15
#as: -mppc -maltivec |
#objdump: -mpowerpc -dr |
#name: xcoff AltiVec tests |
|
.*: file format aixcoff-rs6000 |
|
Disassembly of section .text: |
|
(00000000)?00000000 <.text>: |
0: 7c 60 06 6c dss 3 |
4: 7e 00 06 6c dssall |
8: 7c 25 22 ac dst r5,r4,1 |
c: 7e 08 3a ac dstt r8,r7,0 |
10: 7c 65 32 ec dstst r5,r6,3 |
14: 7e 44 2a ec dststt r4,r5,2 |
/simpshft.s
0,0 → 1,110
# These are all the examples from section F.4 of |
# "PowerPC Microprocessor Family: The Programming Environments". |
# 64-bit examples |
extrdi %r4,%r3,1,0 |
insrdi %r3,%r4,1,0 |
sldi %r5,%r5,8 |
clrldi %r4,%r3,32 |
# 32-bit examples |
extrwi %r4,%r3,1,0 |
insrwi %r3,%r4,1,0 |
slwi %r5,%r5,8 |
clrlwi %r4,%r3,16 |
|
|
# These test the remaining corner cases for 64-bit operations. |
extldi %r4,%r3,1,0 |
extldi %r4,%r3,64,0 |
extldi %r4,%r3,1,63 |
extldi %r4,%r3,64,63 # bit weird, that one. |
|
extrdi %r4,%r3,63,0 |
extrdi %r4,%r3,1,62 |
|
insrdi %r4,%r3,64,0 |
insrdi %r4,%r3,63,0 |
insrdi %r4,%r3,1,62 |
insrdi %r4,%r3,1,63 |
|
rotldi %r4,%r3,0 |
rotldi %r4,%r3,1 |
rotldi %r4,%r3,63 |
|
rotrdi %r4,%r3,0 |
rotrdi %r4,%r3,1 |
rotrdi %r4,%r3,63 |
|
rotld %r5,%r3,%r4 |
|
sldi %r4,%r3,0 |
sldi %r4,%r3,63 |
|
srdi %r4,%r3,0 |
srdi %r4,%r3,1 |
srdi %r4,%r3,63 |
|
clrldi %r4,%r3,0 |
clrldi %r4,%r3,1 |
clrldi %r4,%r3,63 |
|
clrrdi %r4,%r3,0 |
clrrdi %r4,%r3,1 |
clrrdi %r4,%r3,63 |
|
clrlsldi %r4,%r3,0,0 |
clrlsldi %r4,%r3,1,0 |
clrlsldi %r4,%r3,63,0 |
clrlsldi %r4,%r3,63,1 |
clrlsldi %r4,%r3,63,63 |
|
# These test the remaining corner cases for 32-bit operations. |
extlwi %r4,%r3,1,0 |
extlwi %r4,%r3,32,0 |
extlwi %r4,%r3,1,31 |
extlwi %r4,%r3,32,31 # bit weird, that one. |
|
extrwi %r4,%r3,31,0 |
extrwi %r4,%r3,1,30 |
|
inslwi %r4,%r3,1,0 |
inslwi %r4,%r3,32,0 |
inslwi %r4,%r3,1,31 |
|
insrwi %r4,%r3,1,0 |
insrwi %r4,%r3,32,0 |
insrwi %r4,%r3,1,31 |
|
rotlwi %r4,%r3,0 |
rotlwi %r4,%r3,1 |
rotlwi %r4,%r3,31 |
|
rotrwi %r4,%r3,0 |
rotrwi %r4,%r3,1 |
rotrwi %r4,%r3,31 |
|
rotlw %r5,%r3,%r4 |
|
slwi %r4,%r3,0 |
slwi %r4,%r3,1 |
slwi %r4,%r3,31 |
|
srwi %r4,%r3,0 |
srwi %r4,%r3,1 |
srwi %r4,%r3,31 |
|
clrlwi %r4,%r3,0 |
clrlwi %r4,%r3,1 |
clrlwi %r4,%r3,31 |
|
clrrwi %r4,%r3,0 |
clrrwi %r4,%r3,1 |
clrrwi %r4,%r3,31 |
|
clrlslwi %r4,%r3,0,0 |
clrlslwi %r4,%r3,1,0 |
clrlslwi %r4,%r3,31,0 |
clrlslwi %r4,%r3,31,1 |
clrlslwi %r4,%r3,31,31 |
|
# Force alignment so that we pass the test on AIX |
.p2align 3,0 |
/astest2_64.s
0,0 → 1,50
four = 4 |
.section ".text" |
foo: |
nop ; nop ; nop |
.globl a |
b .+4 |
b .+8 |
b x |
b y |
b z |
b z+20 |
b .+four |
b a |
b b |
b a+4 |
b b+4 |
.long . |
.long .+8 |
.long x-. |
.long x+4-. |
.long z-. |
.long y-. |
.long x |
.long y |
.long z |
.long x-four |
.long y-four |
.long z-four |
.long a-. |
.long b-. |
a: .long a |
b: .long b |
|
apfour = a + four |
.long apfour |
.long a-apfour |
.long apfour+2 |
.long apfour-b |
|
.section ".data" |
.globl x |
.globl z |
x: .long 0 |
z = . + 4 |
y: .long 0 |
|
.type foo,@function |
.type a,@function |
.type b,@function |
.type apfour,@function |
/booke.s
0,0 → 1,150
# Motorola PowerPC BookE tests |
#as: -mbooke32 |
.section ".text" |
start: |
bce 1, 5, branch_target_1 |
bcel 2, 6, branch_target_2 |
bcea 3, 7, branch_target_3 |
bcela 4, 8, branch_target_4 |
bclre 5, 9 |
bclrel 5, 10 |
bcctre 8, 11 |
bcctrel 8, 12 |
be branch_target_5 |
bel branch_target_6 |
bea branch_target_7 |
bela branch_target_8 |
|
branch_target_1: |
lbze 8, 8(9) |
lbzue 12, 4(15) |
lbzuxe 4, 6, 8 |
lbzxe 3, 5, 7 |
|
branch_target_2: |
lde 5, 400(6) |
ldue 6, 452(7) |
ldxe 7, 8, 9 |
lduxe 10, 11, 12 |
|
branch_target_3: |
lfde 12, 128(1) |
lfdue 1, 16(5) |
lfdxe 5, 1, 3 |
lfduxe 6, 2, 4 |
lfse 8, 48(9) |
lfsue 9, 68(10) |
lfsuxe 10, 4, 8 |
lfsxe 9, 3, 7 |
|
branch_target_4: |
lhae 10, 50(5) |
lhaue 1, 5(3) |
lhauxe 5, 1, 3 |
lhaxe 29, 30, 31 |
lhbrxe 1, 2, 3 |
lhze 4, 18(3) |
lhzue 6, 20(9) |
lhzuxe 5, 7, 9 |
lhzxe 9, 7, 5 |
|
branch_target_5: |
lwarxe 10, 15, 20 |
lwbrxe 5, 10, 18 |
lwze 28, 4(29) |
lwzue 8, 40(10) |
lwzuxe 3, 6, 9 |
lwzxe 30, 29, 28 |
|
branch_target_6: |
dcbae 6, 7 |
dcbfe 8, 9 |
dcbie 10, 11 |
dcbste 8, 30 |
dcbte 6, 3, 1 |
dcbtste 5, 4, 2 |
dcbze 15, 14 |
icbie 3, 4 |
icbt 5, 8, 9 |
icbte 6, 10, 15 |
mfapidi 5, 6 |
tlbivax 7, 8 |
tlbivaxe 9, 10 |
tlbsx 11, 12 |
tlbsxe 13, 14 |
tlbwe |
tlbwe 0,0,0 |
tlbwe 1,1,1 |
|
branch_target_7: |
adde64 1, 2, 3 |
adde64o 4, 5, 6 |
addme64 7, 8 |
addme64o 9, 10 |
addze64 11, 12 |
addze64o 13, 14 |
mcrxr64 5 |
subfe64 15, 16, 17 |
subfe64o 18, 19, 20 |
subfme64 21, 22 |
subfme64o 23, 24 |
subfze64 25, 26 |
subfze64o 27, 28 |
|
branch_target_8: |
stbe 1, 50(2) |
stbue 3, 40(4) |
stbuxe 5, 6, 7 |
stbxe 8, 9, 10 |
stdcxe. 11, 12, 13 |
stde 14, 28(15) |
stdue 16, 20(17) |
stdxe 18, 19, 20 |
stduxe 21, 22, 23 |
stfde 1, 12(24) |
stfdue 2, 0(25) |
stfdxe 3, 26, 27 |
stfduxe 4, 28, 29 |
stfiwxe 5, 30, 31 |
stfse 6, 24(30) |
stfsue 7, 20(29) |
stfsxe 8, 28, 27 |
stfsuxe 9, 26, 25 |
sthbrxe 24, 23, 22 |
sthe 21, 30(20) |
sthue 19, 40(18) |
sthuxe 17, 16, 15 |
sthxe 14, 13, 12 |
stwbrxe 11, 10, 9 |
stwcxe. 8, 7, 6 |
stwe 5, 50(4) |
stwue 3, 40(2) |
stwuxe 1, 2, 3 |
stwxe 4, 5, 6 |
|
rfci |
wrtee 3 |
wrteei 1 |
mfdcrx 4, 5 |
mfdcr 5, 234 |
mtdcrx 6, 7 |
mtdcr 432, 8 |
msync |
dcba 9, 10 |
mbar |
mbar 0 |
mbar 1 |
|
tlbsx 12, 13, 14 |
tlbsx. 12, 13, 14 |
tlbsxe 12, 13, 14 |
tlbsxe. 12, 13, 14 |
|
mfsprg 0, 2 |
mfsprg2 0 |
mtsprg 2, 0 |
mtsprg2 0 |
mfsprg 0, 7 |
mfsprg7 0 |
mtsprg 7, 0 |
mtsprg7 0 |
/altivec_and_spe.d
0,0 → 1,12
#as: -maltivec -mspe -mppc64 |
#objdump: -d -Mppc64 |
#name: Check that ISA extensions can be specified before CPU selection |
|
.*: +file format elf.*-powerpc.* |
|
Disassembly of section \.text: |
|
0+00 <.*>: |
0: 7e 00 06 6c dssall |
4: 7d 00 83 a6 mtspr 512,r8 |
8: 4c 00 00 24 rfid |
/test1elf64.s
0,0 → 1,95
|
|
|
|
|
|
|
|
|
|
|
|
.section ".data" |
dsym0: .llong 0xdeadbeef |
dsym1: |
|
|
.section ".toc" |
.L_tsym0: |
.tc ignored0[TC],dsym0 |
.L_tsym1: |
.tc ignored1[TC],dsym1 |
.L_tsym2: |
.tc ignored2[TC],usym0 |
.L_tsym3: |
.tc ignored3[TC],usym1 |
.L_tsym4: |
.tc ignored4[TC],esym0 |
.L_tsym5: |
.tc ignored5[TC],esym1 |
|
|
.section ".text" |
ld 3,dsym0@l(3) |
ld 3,dsym1@l(3) |
ld 3,usym0@l(3) |
ld 3,usym1@l(3) |
ld 3,esym0@l(3) |
ld 3,esym1@l(3) |
|
|
ld 3,.L_tsym0@toc(2) |
ld 3,.L_tsym1@toc(2) |
ld 3,.L_tsym2@toc(2) |
ld 3,.L_tsym3@toc(2) |
ld 3,.L_tsym4@toc(2) |
ld 3,.L_tsym5@toc(2) |
|
lis 4,.L_tsym5@toc@ha |
ld 3,.L_tsym5@toc@l(2) |
|
|
li 3,dsym1-dsym0 |
li 3,dsym0-dsym1 |
li 3,usym1-usym0 |
li 3,usym0-usym1 |
li 3,dsym0-usym0 |
li 3,usym0-dsym0 |
|
li 3,dsym0@l |
li 3,dsym0@h |
li 3,dsym0@ha |
|
li 3,dsym0@higher |
li 3,dsym0@highera |
li 3,dsym0@highest |
li 3,dsym0@highesta |
|
|
li 3,usym0-usym1@l |
li 3,usym0-usym1@h |
li 3,usym0-usym1@ha |
|
li 3,usym0-usym1@higher |
li 3,usym0-usym1@highera |
li 3,usym0-usym1@highest |
li 3,usym0-usym1@highesta |
|
|
ld 3,dsym1-dsym0@l(4) |
|
ld 3,.text@l(0) |
|
.section ".data" |
usym0: .llong 0xcafebabe |
usym1: |
|
datpt: .long jk-.+10000000 |
dat0: .long jk-dat1 |
dat1: .long jk-dat1 |
dat2: .long jk-dat1 |
|
dat3: .llong jk-dat1 |
dat4: .llong jk-dat1 |
|
/generate.sh
0,0 → 1,6
#! /bin/sh |
|
m4 -DELF32 test1elf.asm >test1elf32.s |
m4 -DELF64 test1elf.asm >test1elf64.s |
m4 -DXCOFF32 test1xcoff.asm >test1xcoff32.s |
#m4 -DXCOFF64 test1xcoff.asm >test1xcoff64.s |
generate.sh
Property changes :
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: astest.s
===================================================================
--- astest.s (nonexistent)
+++ astest.s (revision 816)
@@ -0,0 +1,52 @@
+ .section ".data"
+ .globl x
+ .globl z
+x: .long 0
+z = . + 4
+four = z - x - 4
+y: .long 0
+
+ .section ".text"
+foo:
+ nop ; nop ; nop
+ .globl a
+a: b .+4
+b: b .+8
+ b x
+ b y
+ b z
+ b z+20
+ b .+four
+ b a
+ b b
+ b a+4
+ b b+4
+ b a@local
+ b b@local
+ .long .
+ .long .+8
+ .long x-.
+ .long x+4-.
+ .long z-.
+ .long y-.
+ .long x
+ .long y
+ .long z
+ .long x-four
+ .long y-four
+ .long z-four
+ .long a-.
+ .long b-.
+ .long a
+ .long b
+
+apfour = a + four
+ .long apfour
+ .long a-apfour
+ .long apfour+2
+ .long apfour-b
+
+ .type foo,@function
+ .type a,@function
+ .type b,@function
+ .type apfour,@function
Index: reloc.s
===================================================================
--- reloc.s (nonexistent)
+++ reloc.s (revision 816)
@@ -0,0 +1,13 @@
+ .reloc x+8, R_PPC_ADDR32, y-4
+
+ .data
+x:
+ .long 0,0,0,0
+
+ .section .data.other,"aw",@progbits
+y:
+ .long 0,0,0,0
+
+ .reloc 0, R_PPC_ADDR32, x
+ .reloc y+4, R_PPC_ADDR32, x-4
+ .reloc x+12, R_PPC_ADDR32, y
Index: test1xcoff.asm
===================================================================
--- test1xcoff.asm (nonexistent)
+++ test1xcoff.asm (revision 816)
@@ -0,0 +1,82 @@
+dnl divert(-1)
+ifdef(`XCOFF64',
+` define(`WORD',`.llong')
+ define(`LDW',`ld')')
+ifdef(`XCOFF32',
+` define(`WORD',`.long')
+ define(`LDW',`lwz')')
+dnl divert(0) dnl
+
+define(`nl',`
+') nl nl nl nl nl nl
+
+ .csect [RW]
+dsym0: WORD 0xdeadbeef
+dsym1:
+
+ .toc
+.L_tsym0:
+ .tc ignored0[TC],dsym0
+.L_tsym1:
+ .tc ignored1[TC],dsym1
+.L_tsym2:
+ .tc ignored2[TC],usym0
+.L_tsym3:
+ .tc ignored3[TC],usym1
+.L_tsym4:
+ .tc ignored4[TC],esym0
+.L_tsym5:
+ .tc ignored5[TC],esym1
+.L_tsym6:
+ .tc ignored6[TC],.text
+
+ .csect .crazy_table[RO]
+xdsym0: WORD 0xbeefed
+xdsym1:
+ .csect [PR]
+ .lglobl reference_csect_relative_symbols
+reference_csect_relative_symbols:
+ LDW 3,xdsym0(3)
+ LDW 3,xdsym1(3)
+ LDW 3,xusym0(3)
+ LDW 3,xusym1(3)
+
+ .lglobl dubious_references_to_default_RW_csect
+dubious_references_to_default_RW_csect:
+ LDW 3,dsym0(3)
+ LDW 3,dsym1(3)
+ LDW 3,usym0(3)
+ LDW 3,usym1(3)
+
+ .lglobl reference_via_toc
+reference_via_toc:
+ LDW 3,.L_tsym0(2)
+ LDW 3,.L_tsym1(2)
+ LDW 3,.L_tsym2(2)
+ LDW 3,.L_tsym3(2)
+ LDW 3,.L_tsym4(2)
+ LDW 3,.L_tsym5(2)
+
+ .lglobl subtract_symbols
+subtract_symbols:
+ li 3,dsym1-dsym0
+ li 3,dsym0-dsym1
+ li 3,usym1-usym0
+ li 3,usym0-usym1
+ li 3,dsym0-usym0
+ li 3,usym0-dsym0
+ LDW 3,dsym1-dsym0(4)
+
+ .lglobl load_addresses
+load_addresses:
+ la 3,xdsym0(0)
+ la 3,xusym0(0)
+
+ la 3,.L_tsym6(2)
+
+ .csect [RW]
+usym0: WORD 0xcafebabe
+usym1: WORD 0xbaad
+ .csect .crazy_table[RO]
+xusym0: WORD 0xbeefed
+xusym1:
Index: test1elf.asm
===================================================================
--- test1elf.asm (nonexistent)
+++ test1elf.asm (revision 816)
@@ -0,0 +1,95 @@
+dnl divert(-1)
+ifdef(`ELF64',
+` define(`WORD',`.llong')
+ define(`LDW',`ld')')
+ifdef(`ELF32',
+` define(`WORD',`.long')
+ define(`LDW',`lwz')')
+dnl divert(0) dnl
+
+define(`nl',`
+') nl nl nl nl nl nl
+
+ .section ".data"
+dsym0: WORD 0xdeadbeef
+dsym1:
+
+ifdef(`ELF64',`
+ .section ".toc"
+.L_tsym0:
+ .tc ignored0[TC],dsym0
+.L_tsym1:
+ .tc ignored1[TC],dsym1
+.L_tsym2:
+ .tc ignored2[TC],usym0
+.L_tsym3:
+ .tc ignored3[TC],usym1
+.L_tsym4:
+ .tc ignored4[TC],esym0
+.L_tsym5:
+ .tc ignored5[TC],esym1
+')
+
+ .section ".text"
+ LDW 3,dsym0@l(3)
+ LDW 3,dsym1@l(3)
+ LDW 3,usym0@l(3)
+ LDW 3,usym1@l(3)
+ LDW 3,esym0@l(3)
+ LDW 3,esym1@l(3)
+
+ifdef(`ELF64',`
+ LDW 3,.L_tsym0@toc(2)
+ LDW 3,.L_tsym1@toc(2)
+ LDW 3,.L_tsym2@toc(2)
+ LDW 3,.L_tsym3@toc(2)
+ LDW 3,.L_tsym4@toc(2)
+ LDW 3,.L_tsym5@toc(2)
+
+ lis 4,.L_tsym5@toc@ha
+ LDW 3,.L_tsym5@toc@l(2)
+')
+
+ li 3,dsym1-dsym0
+ li 3,dsym0-dsym1
+ li 3,usym1-usym0
+ li 3,usym0-usym1
+ li 3,dsym0-usym0
+ li 3,usym0-dsym0
+
+ li 3,dsym0@l
+ li 3,dsym0@h
+ li 3,dsym0@ha
+ifdef(`ELF64',`
+ li 3,dsym0@higher
+ li 3,dsym0@highera
+ li 3,dsym0@highest
+ li 3,dsym0@highesta
+')
+
+ li 3,usym0-usym1@l
+ li 3,usym0-usym1@h
+ li 3,usym0-usym1@ha
+ifdef(`ELF64',`
+ li 3,usym0-usym1@higher
+ li 3,usym0-usym1@highera
+ li 3,usym0-usym1@highest
+ li 3,usym0-usym1@highesta
+')
+
+ LDW 3,dsym1-dsym0@l(4)
+
+ LDW 3,.text@l(0)
+
+ .section ".data"
+usym0: WORD 0xcafebabe
+usym1:
+
+datpt: .long jk-.+10000000
+dat0: .long jk-dat1
+dat1: .long jk-dat1
+dat2: .long jk-dat1
+ifdef(`ELF64',`
+dat3: .llong jk-dat1
+dat4: .llong jk-dat1
+')
Index: altivec.d
===================================================================
--- altivec.d (nonexistent)
+++ altivec.d (revision 816)
@@ -0,0 +1,15 @@
+#as: -a32 -m601 -maltivec
+#objdump: -dr
+#name: AltiVec tests
+
+.*: +file format elf32-powerpc.*
+
+Disassembly of section \.text:
+
+00000000 :
+ 0: 7c 60 06 6c dss 3
+ 4: 7e 00 06 6c dssall
+ 8: 7c 25 22 ac dst r5,r4,1
+ c: 7e 08 3a ac dstt r8,r7,0
+ 10: 7c 65 32 ec dstst r5,r6,3
+ 14: 7e 44 2a ec dststt r4,r5,2
Index: e500.s
===================================================================
--- e500.s (nonexistent)
+++ e500.s (revision 816)
@@ -0,0 +1,47 @@
+# Motorola PowerPC e500 tests
+ .section ".text"
+start:
+ isel 2, 3, 4, 23
+ dcblc 4, 5, 6
+ dcbtls 7, 8, 9
+ dcbtstls 10, 11, 12
+ icbtls 13, 14, 15
+ icblc 16, 17, 18
+ mtpmr 201, 4
+ mfpmr 5, 203
+ bblels
+ bbelr
+ mtspefscr 8
+ mfspefscr 9
+
+ # Double-precision opcodes.
+ efscfd 5,4
+ efdabs 5,4
+ efdnabs 5,4
+ efdneg 5,4
+ efdadd 5,4,3
+ efdsub 5,4,3
+ efdmul 5,4,3
+ efddiv 5,4,3
+ efdcmpgt 5,4,3
+ efdcmplt 5,4,3
+ efdcmpeq 5,4,3
+ efdtstgt 5,4,3
+ efdtstgt 5,4,3
+ efdtstlt 5,4,3
+ efdtsteq 5,4,3
+ efdcfsi 5,4
+ efdcfsid 5,4
+ efdcfui 5,4
+ efdcfuid 5,4
+ efdcfsf 5,4
+ efdcfuf 5,4
+ efdctsi 5,4
+ efdctsidz 5,4
+ efdctsiz 5,4
+ efdctui 5,4
+ efdctuidz 5,4
+ efdctuiz 5,4
+ efdctsf 5,4
+ efdctuf 5,4
+ efdcfs 5,4
Index: altivec_xcoff.s
===================================================================
--- altivec_xcoff.s (nonexistent)
+++ altivec_xcoff.s (revision 816)
@@ -0,0 +1,15 @@
+# PowerPC xcoff AltiVec tests
+#as: -mppc -maltivec
+ .csect .text[PR]
+ .csect main[DS]
+main:
+ .csect .text[PR]
+.main:
+ dss 3
+ dssall
+ dst 5,4,1
+ dstt 8,7,0
+ dstst 5,6,3
+ dststt 4,5,2
+
+
Index: ppc.exp
===================================================================
--- ppc.exp (nonexistent)
+++ ppc.exp (revision 816)
@@ -0,0 +1,49 @@
+#
+# Some PowerPC tests
+#
+
+# These tests are currently ELF specific, only because nobody has
+# converted them to look for XCOFF relocations.
+
+if { [istarget powerpc64*-*-*] || [istarget *-*-elf64*]} then {
+# FIXME: Pass -x to objdump as well as -Dr for astest64 and astest2_64.
+ run_dump_test "astest64"
+ run_dump_test "astest2_64"
+ run_dump_test "test1elf64"
+ run_dump_test "power4"
+ run_dump_test "cell"
+ run_list_test "range64" "-a64"
+} elseif { [istarget powerpc*-*aix*] } then {
+ run_dump_test "test1xcoff32"
+} elseif { [istarget powerpc*-*-*bsd*] \
+ || [istarget powerpc*-*-elf*] \
+ || [istarget powerpc*-*-eabi*] \
+ || [istarget powerpc*-*-sysv4*] \
+ || [istarget powerpc*-*-linux*] \
+ || [istarget powerpc*-*-solaris*] \
+ || [istarget powerpc*-*-rtems*] } then {
+ run_dump_test "astest"
+ run_dump_test "astest2"
+ run_dump_test "test1elf32"
+}
+
+if { [istarget powerpc*-*-*] } then {
+ run_dump_test "simpshft"
+ run_dump_test "machine"
+ run_dump_test "regnames"
+
+ if { [istarget powerpc-*-*aix*] } then {
+ run_dump_test "altivec_xcoff"
+ run_dump_test "altivec_xcoff64"
+ run_dump_test "booke_xcoff"
+ run_dump_test "booke_xcoff64"
+ } else {
+ run_dump_test "altivec"
+ run_dump_test "altivec_and_spe"
+ run_dump_test "booke"
+ run_dump_test "e500"
+ run_list_test "range" "-a32"
+ run_dump_test "ppc750ps"
+ run_dump_test "e500mc"
+ }
+}
Index: test1xcoff32.d
===================================================================
--- test1xcoff32.d (nonexistent)
+++ test1xcoff32.d (revision 816)
@@ -0,0 +1,139 @@
+#objdump: -Drx
+#as:
+#name: PowerPC Test 1, 32 bit XCOFF
+
+.*: +file format aixcoff-rs6000
+.*
+architecture: rs6000:6000, flags 0x00000031:
+HAS_RELOC, HAS_SYMS, HAS_LOCALS
+start address 0x0+0000
+
+Sections:
+Idx Name +Size +VMA +LMA +File off +Algn
+ 0 \.text +00000068 0+0000 0+0000 000000a8 2\*\*2
+ +CONTENTS, ALLOC, LOAD, RELOC, CODE
+ 1 \.data +00000028 0+0068 0+0068 00000110 2\*\*3
+ +CONTENTS, ALLOC, LOAD, RELOC, DATA
+ 2 \.bss +00000000 0+0090 0+0090 00000000 2\*\*3
+ +ALLOC
+SYMBOL TABLE:
+\[ 0\]\(sec -2\)\(fl 0x00\)\(ty 0\)\(scl 103\) \(nx 1\) 0x00000000 fake
+File
+\[ 2\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000000 \.crazy_table
+AUX val 8 prmhsh 0 snhsh 0 typ 1 algn 2 clss 1 stb 0 snstb 0
+\[ 4\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000008
+AUX val 96 prmhsh 0 snhsh 0 typ 1 algn 2 clss 0 stb 0 snstb 0
+\[ 6\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000008 reference_csect_relative_symbols
+AUX indx 4 prmhsh 0 snhsh 0 typ 2 algn 0 clss 0 stb 0 snstb 0
+\[ 8\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000018 dubious_references_to_default_RW_csect
+AUX indx 4 prmhsh 0 snhsh 0 typ 2 algn 0 clss 0 stb 0 snstb 0
+\[ 10\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000028 reference_via_toc
+AUX indx 4 prmhsh 0 snhsh 0 typ 2 algn 0 clss 0 stb 0 snstb 0
+\[ 12\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000040 subtract_symbols
+AUX indx 4 prmhsh 0 snhsh 0 typ 2 algn 0 clss 0 stb 0 snstb 0
+\[ 14\]\(sec 1\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x0000005c load_addresses
+AUX indx 4 prmhsh 0 snhsh 0 typ 2 algn 0 clss 0 stb 0 snstb 0
+\[ 16\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000068
+AUX val 12 prmhsh 0 snhsh 0 typ 1 algn 2 clss 5 stb 0 snstb 0
+\[ 18\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000074 TOC
+AUX val 0 prmhsh 0 snhsh 0 typ 1 algn 2 clss 15 stb 0 snstb 0
+\[ 20\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000074 ignored0
+AUX val 4 prmhsh 0 snhsh 0 typ 1 algn 2 clss 3 stb 0 snstb 0
+\[ 22\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000078 ignored1
+AUX val 4 prmhsh 0 snhsh 0 typ 1 algn 2 clss 3 stb 0 snstb 0
+\[ 24\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x0000007c ignored2
+AUX val 4 prmhsh 0 snhsh 0 typ 1 algn 2 clss 3 stb 0 snstb 0
+\[ 26\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000080 ignored3
+AUX val 4 prmhsh 0 snhsh 0 typ 1 algn 2 clss 3 stb 0 snstb 0
+\[ 28\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000084 ignored4
+AUX val 4 prmhsh 0 snhsh 0 typ 1 algn 2 clss 3 stb 0 snstb 0
+\[ 30\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x00000088 ignored5
+AUX val 4 prmhsh 0 snhsh 0 typ 1 algn 2 clss 3 stb 0 snstb 0
+\[ 32\]\(sec 2\)\(fl 0x00\)\(ty 0\)\(scl 107\) \(nx 1\) 0x0000008c ignored6
+AUX val 4 prmhsh 0 snhsh 0 typ 1 algn 2 clss 3 stb 0 snstb 0
+\[ 34\]\(sec 0\)\(fl 0x00\)\(ty 0\)\(scl 2\) \(nx 1\) 0x00000000 esym0
+AUX val 0 prmhsh 0 snhsh 0 typ 0 algn 0 clss 0 stb 0 snstb 0
+\[ 36\]\(sec 0\)\(fl 0x00\)\(ty 0\)\(scl 2\) \(nx 1\) 0x00000000 esym1
+AUX val 0 prmhsh 0 snhsh 0 typ 0 algn 0 clss 0 stb 0 snstb 0
+
+
+Disassembly of section \.text:
+
+0+0000 <\.crazy_table>:
+ 0: 00 be ef ed \.long 0xbeefed
+ 4: 00 be ef ed \.long 0xbeefed
+
+0+0008 :
+ 8: 80 63 00 00 l r3,0\(r3\)
+ c: 80 63 00 04 l r3,4\(r3\)
+ 10: 80 63 00 04 l r3,4\(r3\)
+ 14: 80 63 00 00 l r3,0\(r3\)
+
+0+0018 :
+ 18: 80 63 00 00 l r3,0\(r3\)
+ 1c: 80 63 00 04 l r3,4\(r3\)
+ 20: 80 63 00 04 l r3,4\(r3\)
+ 24: 80 63 00 08 l r3,8\(r3\)
+
+0+0028 :
+ 28: 80 62 00 00 l r3,0\(r2\)
+ 2a: R_TOC ignored0\+0xf+ff8c
+ 2c: 80 62 00 04 l r3,4\(r2\)
+ 2e: R_TOC ignored1\+0xf+ff88
+ 30: 80 62 00 08 l r3,8\(r2\)
+ 32: R_TOC ignored2\+0xf+ff84
+ 34: 80 62 00 0c l r3,12\(r2\)
+ 36: R_TOC ignored3\+0xf+ff80
+ 38: 80 62 00 10 l r3,16\(r2\)
+ 3a: R_TOC ignored4\+0xf+ff7c
+ 3c: 80 62 00 14 l r3,20\(r2\)
+ 3e: R_TOC ignored5\+0xf+ff78
+
+0+0040 :
+ 40: 38 60 00 04 lil r3,4
+ 44: 38 60 ff fc lil r3,-4
+ 48: 38 60 00 04 lil r3,4
+ 4c: 38 60 ff fc lil r3,-4
+ 50: 38 60 ff fc lil r3,-4
+ 54: 38 60 00 04 lil r3,4
+ 58: 80 64 00 04 l r3,4\(r4\)
+
+0+005c :
+ 5c: 38 60 00 00 lil r3,0
+ 60: 38 60 00 04 lil r3,4
+ 64: 38 62 00 18 cal r3,24\(r2\)
+ 66: R_TOC ignored6\+0xf+ff74
+Disassembly of section \.data:
+
+0+0068 :
+ 68: de ad be ef stfdu f21,-16657\(r13\)
+ 6c: ca fe ba be lfd f23,-17730\(r30\)
+ 70: 00 00 ba ad \.long 0xbaad
+
+0+0074 :
+ 74: 00 00 00 68 \.long 0x68
+ 74: R_POS \.data\+0xf+ff98
+
+0+0078 :
+ 78: 00 00 00 6c \.long 0x6c
+ 78: R_POS \.data\+0xf+ff98
+
+0+007c :
+ 7c: 00 00 00 6c \.long 0x6c
+ 7c: R_POS \.data\+0xf+ff98
+
+0+0080 :
+ 80: 00 00 00 70 \.long 0x70
+ 80: R_POS \.data\+0xf+ff98
+
+0+0084 :
+ 84: 00 00 00 00 \.long 0x0
+ 84: R_POS esym0
+
+0+0088 :
+ 88: 00 00 00 00 \.long 0x0
+ 88: R_POS esym1
+
+0+008c :
+ 8c: 00 00 00 00 \.long 0x0
+ 8c: R_POS \.crazy_table
Index: test1elf32.d
===================================================================
--- test1elf32.d (nonexistent)
+++ test1elf32.d (revision 816)
@@ -0,0 +1,90 @@
+#objdump: -Drx
+#name: PowerPC Test 1, 32 bit elf
+
+.*: +file format elf32-powerpc
+.*
+architecture: powerpc:common, flags 0x00000011:
+HAS_RELOC, HAS_SYMS
+start address 0x00000000
+
+Sections:
+Idx Name +Size +VMA +LMA +File off +Algn
+ 0 \.text +00000050 0+0000 0+0000 .*
+ +CONTENTS, ALLOC, LOAD, RELOC, READONLY, CODE
+ 1 \.data +00000018 0+0000 0+0000 .*
+ +CONTENTS, ALLOC, LOAD, RELOC, DATA
+ 2 \.bss +00000000 0+0000 0+0000 .*
+ +ALLOC
+SYMBOL TABLE:
+0+0000 l d \.text 0+0000 (|\.text)
+0+0000 l d \.data 0+0000 (|\.data)
+0+0000 l d \.bss 0+0000 (|\.bss)
+0+0000 l \.data 0+0000 dsym0
+0+0004 l \.data 0+0000 dsym1
+0+0004 l \.data 0+0000 usym0
+0+0008 l \.data 0+0000 usym1
+0+0008 l \.data 0+0000 datpt
+0+000c l \.data 0+0000 dat0
+0+0010 l \.data 0+0000 dat1
+0+0014 l \.data 0+0000 dat2
+0+0000 \*UND\* 0+0000 esym0
+0+0000 \*UND\* 0+0000 esym1
+0+0000 \*UND\* 0+0000 jk
+
+
+Disassembly of section \.text:
+
+0+0000 <\.text>:
+ 0: 80 63 00 00 lwz r3,0\(r3\)
+ 2: R_PPC_ADDR16_LO \.data
+ 4: 80 63 00 04 lwz r3,4\(r3\)
+ 6: R_PPC_ADDR16_LO \.data\+0x4
+ 8: 80 63 00 04 lwz r3,4\(r3\)
+ a: R_PPC_ADDR16_LO \.data\+0x4
+ c: 80 63 00 08 lwz r3,8\(r3\)
+ e: R_PPC_ADDR16_LO \.data\+0x8
+ 10: 80 63 00 00 lwz r3,0\(r3\)
+ 12: R_PPC_ADDR16_LO esym0
+ 14: 80 63 00 00 lwz r3,0\(r3\)
+ 16: R_PPC_ADDR16_LO esym1
+ 18: 38 60 00 04 li r3,4
+ 1c: 38 60 ff fc li r3,-4
+ 20: 38 60 00 04 li r3,4
+ 24: 38 60 ff fc li r3,-4
+ 28: 38 60 ff fc li r3,-4
+ 2c: 38 60 00 04 li r3,4
+ 30: 38 60 00 00 li r3,0
+ 32: R_PPC_ADDR16_LO \.data
+ 34: 38 60 00 00 li r3,0
+ 36: R_PPC_ADDR16_HI \.data
+ 38: 38 60 00 00 li r3,0
+ 3a: R_PPC_ADDR16_HA \.data
+ 3c: 38 60 ff fc li r3,-4
+ 40: 38 60 ff ff li r3,-1
+ 44: 38 60 00 00 li r3,0
+ 48: 80 64 00 04 lwz r3,4\(r4\)
+ 4c: 80 60 00 00 lwz r3,0\(0\)
+ 4e: R_PPC_ADDR16_LO \.text
+Disassembly of section \.data:
+
+0+0000 :
+ 0: de ad be ef stfdu f21,-16657\(r13\)
+
+0+0004 :
+ 4: ca fe ba be lfd f23,-17730\(r30\)
+
+0+0008 :
+ 8: 00 98 96 80 \.long 0x989680
+ 8: R_PPC_REL32 jk\+0x989680
+
+0+000c :
+ c: ff ff ff fc fnmsub f31,f31,f31,f31
+ c: R_PPC_REL32 jk\+0xf+fffc
+
+0+0010 :
+ 10: 00 00 00 00 \.long 0x0
+ 10: R_PPC_REL32 jk
+
+0+0014 :
+ 14: 00 00 00 04 \.long 0x4
+ 14: R_PPC_REL32 jk\+0x4