This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Re: GCC-3.4.0 on FRV architecture BUG report
- From: "zhanrk" <zhanrk-gcc at 163 dot com>
- To: "jie zhang" <zhangjie at magima dot com dot cn>
- Cc: gcc at gcc dot gnu dot org
- Date: Mon, 17 May 2004 09:35:44 +0800 (CST)
- Subject: Re: Re: GCC-3.4.0 on FRV architecture BUG report
> zhanrk-gcc wrote:
> > /*
> > * BUG ?!
> > * It should be "call 03a00470 <puts>"
> > */
> > 3a01b08: fe 3f ff 00 call 3a01708 <readline+0x188>
>
> I don't know FRV target. You may first see assembly output to find out
> what instruction it is there. If it is "call puts", the bug is in as or
> ld, not in gcc.
>
> Jie
>
hehe, It is sure to be a compiler bug. Here is the disassembly output of stdio.o before linking:
stdio.o: file format elf32-frv
Disassembly of section .text:
00000000 <flush_input>:
0: 82 40 1f f0 addi sp,-16,sp
4: 85 48 10 00 sti fp,@(sp,0)
8: 84 88 10 00 ori sp,0,fp
c: 88 0d 01 c5 movsg lr,gr5
10: 8b 48 20 08 sti gr5,@(fp,8)
14: 88 41 00 00 addi gr16,0,gr4
18: 88 08 41 00 ld @(gr4,gr0),gr4
1c: 80 54 40 00 subicc gr4,0,gr0,icc0
20: a0 18 00 05 beq icc0,0x0,34 <flush_input+0x34>
24: 88 41 00 00 addi gr16,0,gr4
28: 88 08 41 00 ld @(gr4,gr0),gr4
2c: 88 c8 40 04 ldi @(gr4,4),gr4
30: 82 30 40 00 calll @(gr4,gr0)
34: 8a c8 20 08 ldi @(fp,8),gr5
38: 84 08 21 00 ld @(fp,gr0),fp
3c: 82 40 10 10 addi sp,16,sp
40: 80 30 50 00 jmpl @(gr5,gr0)
...
...
00000110 <puts>:
110: 82 40 1f e8 addi sp,-24,sp
114: 85 48 10 08 sti fp,@(sp,8)
118: 84 40 10 08 addi sp,8,fp
11c: 88 0d 01 c5 movsg lr,gr5
120: 8b 48 20 08 sti gr5,@(fp,8)
124: 91 48 2f fc sti gr8,@(fp,-4)
128: 88 41 00 00 addi gr16,0,gr4
12c: 88 08 41 00 ld @(gr4,gr0),gr4
130: 80 54 40 00 subicc gr4,0,gr0,icc0
134: a0 18 00 09 beq icc0,0x0,158 <puts+0x48>
138: 88 c8 2f fc ldi @(fp,-4),gr4
13c: 80 54 40 00 subicc gr4,0,gr0,icc0
140: a0 18 00 06 beq icc0,0x0,158 <puts+0x48>
144: 88 41 00 00 addi gr16,0,gr4
148: 88 08 41 00 ld @(gr4,gr0),gr4
14c: 88 c8 40 10 ldi @(gr4,16),gr4
150: 90 c8 2f fc ldi @(fp,-4),gr8
154: 82 30 40 00 calll @(gr4,gr0)
158: 8a c8 20 08 ldi @(fp,8),gr5
15c: 84 08 21 00 ld @(fp,gr0),fp
160: 82 40 10 18 addi sp,24,sp
164: 80 30 50 00 jmpl @(gr5,gr0)
......
00000220 <printf>:
220: 82 40 1f c8 addi sp,-56,sp
224: 85 48 10 10 sti fp,@(sp,16)
228: 84 40 10 10 addi sp,16,fp
22c: 88 0d 01 c5 movsg lr,gr5
230: 8b 48 20 08 sti gr5,@(fp,8)
234: 91 4c 20 10 stdi gr8,@(fp,16)
238: 95 4c 20 18 stdi gr10,@(fp,24)
23c: 99 4c 20 20 stdi gr12,@(fp,32)
240: 91 48 2f fc sti gr8,@(fp,-4)
244: 90 f8 00 00 sethi hi(0x0),gr8
248: 90 f4 00 00 setlo lo(0x0),gr8
24c: 92 fc 00 00 setlos lo(0x0),gr9
250: 94 fc 02 00 setlos 0x200,gr10
254: 80 3c 00 00 call 254 <printf+0x34>
258: 88 40 20 28 addi fp,40,gr4
25c: 88 40 4f ec addi gr4,-20,gr4
260: 89 48 2f f8 sti gr4,@(fp,-8)
264: 90 f8 00 00 sethi hi(0x0),gr8
268: 90 f4 00 00 setlo lo(0x0),gr8
26c: 92 c8 2f fc ldi @(fp,-4),gr9
270: 94 c8 2f f8 ldi @(fp,-8),gr10
274: 80 3c 00 00 call 274 <printf+0x54>
278: 88 88 80 00 ori gr8,0,gr4
27c: 89 44 2f f6 sthi gr4,@(fp,-10)
280: 90 f8 00 00 sethi hi(0x0),gr8
284: 90 f4 00 00 setlo lo(0x0),gr8
/*
* BUG ?!
* It should be "call 00000110 <puts>"
*/
288: fe 3f ff 5e call 0 <flush_input>
28c: 8a c8 20 08 ldi @(fp,8),gr5
290: 84 08 21 00 ld @(fp,gr0),fp
294: 82 40 10 38 addi sp,56,sp
298: 80 30 50 00 jmpl @(gr5,gr0)
29c: 00 00 00 00 add.p gr0,gr0,gr0
========================================================
真情回馈 超值优惠 VIP邮箱买一送四 买三送十二! http://vip.163.com
中国最大的免费邮箱在等你 25兆空间4兆附件! http://mail.163.com
点击网易泡泡惊喜无限 全免费手机短信任你发! http://popo.163.com