https://gcc.gnu.org/bugzilla/show_bug.cgi?id=15792
Andrew Pinski changed:
What|Removed |Added
Known to fail||
--- Comment #12 from Andrew Pinski ---
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=15792
Gabriel Ravier changed:
What|Removed |Added
CC||gabravier at gmail dot com
--- Comment
--- Comment #10 from rask at gcc dot gnu dot org 2007-11-10 00:15 ---
This was fixed in 4.3.0.
--
rask at gcc dot gnu dot org changed:
What|Removed |Added
Sta
--- Comment #9 from ian at airs dot com 2006-02-07 08:23 ---
I now have a reasonably simple reload patch which eliminates the unnecessary
move. For the test case in comment #4, I get this code with -O2
-momit-leaf-frame-pointer:
foo:
movl12(%esp), %eax
movl16(%e
--- Comment #8 from ian at airs dot com 2006-02-07 00:30 ---
Yes, I still get an unnecessary move in your test case which uses addition.
One reason this happens is because the addition can not be split until after
the reload pass is complete. That is because the add relies on the condi
--- Comment #7 from tony dot linthicum at amd dot com 2006-02-06 17:13
---
So do I, at least for the original code (i.e. test and test1). I'm curious,
though, if you've tried the example that I listed above (foo). I still get
subregs with that one, though I honestly don't recall at th
--- Comment #6 from ian at airs dot com 2006-02-02 18:18 ---
With the version of RTH's subreg lowering pass which I am working on, I get
identical code for both functions:
test1:
movl8(%esp), %eax
orl 4(%esp), %eax
jne .L7
ret
.p2align
--- Comment #5 from pinskia at gcc dot gnu dot org 2006-01-20 15:52 ---
(In reply to comment #4)
> I'm going to experiment with moving where the subreg lowering code occurs and
> moving up the splitting into subregs and see if I can get the desired
> results.
> I'm pretty new to GCC, s
--- Comment #4 from tony dot linthicum at amd dot com 2006-01-20 15:48
---
I've been looking at this a bit, and tried the patch. It does indeed fix the
problem in test1 above, but it does not appear to be the complete solution.
The load of 'x' in test1 is actually split fairly early,
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-01-18 04:45 ---
The problem here is that we don't split up the subregister early before
register allocation.
If we split it up before combine, we would be able to combine the or and get
the more optimial results.
A patch like
http:
10 matches
Mail list logo