This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/13313] [3.4 Regression] Wrong code generated
- From: "pinskia at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 9 Dec 2003 08:34:37 -0000
- Subject: [Bug target/13313] [3.4 Regression] Wrong code generated
- References: <20031205121014.13313.mike@ml-solutions.co.uk>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From pinskia at gcc dot gnu dot org 2003-12-09 08:34 -------
Eric, I think what combiner is doing is fine, I had looked really hard to understand what was going
on (note on h8300, word mode is QI).
The problem looks more like a target problem:
(insn 19 16 20 0 (set (reg:SI r0 [ tmp ])
(zero_extend:SI (reg:QI r1 [orig:0+3 ] [0]))) 102 {*zero_extendqisi2_h8300} (insn_list 9 (nil))
(nil))
Say that register r0:r1 = zero_extend:SI (r1:QI) which is right for this case but the target's machine
description cannot hanndle this at all for some reason (I think it is because the writter never
thought this would come up).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13313