public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload)
@ 2004-06-16 21:51 fjahanian at apple dot com
2004-06-16 22:01 ` [Bug rtl-optimization/16028] " pinskia at gcc dot gnu dot org
` (15 more replies)
0 siblings, 16 replies; 17+ messages in thread
From: fjahanian at apple dot com @ 2004-06-16 21:51 UTC (permalink / raw)
To: gcc-bugs
Following test case when compiled with -O3 shows a bug in reload, used by GRA.
Test case:
typedef short __attribute__ ((vector_size (16))) vecint;
vecint i = { 150, 100, 150, 200, 0, 0, 0, 0 };vecint j = { 10, 13, 20, 30, 1, 1, 1, 1 };
vecint k;
union {
vecint v;
short i[8];
} res;
void
verify (int a1, int b1)
{
if (a1 != b1)
abort ();}
int
main ()
{ k = i + j;
res.v = k;
verify (res.i[0], 160);
k = i & j; /* bad code gen for this statement causes the abort. */
res.v = k;
verify (res.i[0], 2);
k = i * j;
res.v = k;
verify (res.i[0], 1500);
exit (0);
}
Assembly code for powerpc darwin shows the bug:
lhz r16,78(r1) ! Only half-word is loaded
...
lhz r20,94(r1) ! Only half-word is loaded
...
and r28,r16,r20 ! expects full 32bit values in r16 and r20 here
and r29,r17,r21
...
Followin is the relevant RTL generated after LRA and before GRA.
From: b.c.25.lreg
(insn:HI 11 18 29 0 (set (subreg:SI (reg:V8HI 118 [ i.0 ]) 0)
(mem:SI (lo_sum:SI (reg/f:SI 125)
(symbol_ref:SI ("!D__i") [flags 0x2] <var_decl 0x41700480 i>)) [0 i+0 S4 A128])) 303
{movsi_low} (insn_list 8 (insn_list 18 (nil)))
(nil))
...
(insn:HI 13 301 24 0 (set (subreg:SI (reg:V8HI 118 [ i.0 ]) 4)
(mem:SI (plus:SI (reg/f:SI 124)
(const_int 4 [0x4])) [0 i+4 S4 A32])) 309 {*movsi_internal1} (insn_list 9 (insn_list 11 (nil)))
(nil))
...
(insn:HI 30 307 33 0 (set (reg:TI 136 [ i.0 ])
(subreg:TI (reg:V8HI 118 [ i.0 ]) 0)) 331 {*movti_string} (insn_list 17 (nil))
(nil))
...
(insn:HI 40 38 41 0 (set (reg:HI 145)
(subreg:HI (reg:V8HI 118 [ i.0 ]) 2)) 311 {*movhi_internal} (insn_list 17 (nil))
(nil))
...
(insn:HI 54 52 55 0 (set (reg:HI 157)
(subreg:HI (reg:V8HI 118 [ i.0 ]) 6)) 311 {*movhi_internal} (insn_list 17 (nil))
(nil))
...
(insn:HI 68 66 69 0 (set (reg:HI 169)
(subreg:HI (reg:V8HI 118 [ i.0 ]) 10)) 311 {*movhi_internal} (insn_list 17 (nil))
(nil))
...
(insn:HI 82 80 83 0 (set (reg:HI 181 [ i.0 ])
(subreg:HI (reg:V8HI 118 [ i.0 ]) 14)) 311 {*movhi_internal} (insn_list 17 (nil))
(nil))
...
(insn:HI 121 152 122 2 (parallel [
(set (subreg:SI (reg:V8HI 121 [ T.6 ]) 0)
(and:SI (subreg:SI (reg:V8HI 118 [ i.0 ]) 0)
(subreg:SI (reg:V8HI 119 [ j.1 ]) 0)))
(clobber (scratch:CC))
]) 81 {andsi3} (nil)
(expr_list:REG_UNUSED (scratch:CC)
(nil)))
===========================================================
During reload (which implements greg) after call to emit_reload_insns,
this is how the rtl tree looks like:
(insn:HI 11 18 29 0 (set (subreg:SI (reg:V8HI 16 r16 [orig:118 i.0 ] [118]) 0)
(mem:SI (lo_sum:SI (reg/f:SI 9 r9 [125])
(symbol_ref:SI ("!D__i") [flags 0x2] <var_decl 0x41714480 i>)) [0 i+0 S4 A128])) 303
{movsi_low} (insn_list 8 (ins\
n_list 18 (nil)))
(nil))
...
r16 is set to a 16bit value here.
(insn 340 39 341 0 (set (reg:HI 16 r16)
(reg:HI 145)) -1 (nil)
(nil))
...
(insn:HI 82 80 83 0 (set (reg:HI 13 r13 [orig:181 i.0 ] [181])
(subreg:HI (reg:V8HI 16 r16 [orig:118 i.0 ] [118]) 14)) 311 {*movhi_internal} (insn_list 17 (nil))
(nil))
...
(insn:HI 121 152 122 2 (parallel [
(set (subreg:SI (reg:V8HI 28 r28 [orig:121 T.6 ] [121]) 0)
(and:SI (subreg:SI (reg:V8HI 16 r16 [orig:118 i.0 ] [118]) 0)
(subreg:SI (reg:V8HI 20 r20 [orig:119 j.1 ] [119]) 0)))
(clobber (scratch:CC))
]) 81 {andsi3} (nil)
(expr_list:REG_UNUSED (scratch:CC)
(nil)))
==============================================
Later on insn 340 in above is changed to a load:
(insn 340 39 341 0 (set (reg:HI 16 r16)
(mem:HI (plus:SI (reg/f:SI 1 r1)
(const_int 78 [0x4e])) [0 S2 A8])) 311 {*movhi_internal} (nil)
(nil))
....
Note that r16 expects the full 32-bit value. It only gets the 16bit value now.
(insn:HI 121 152 122 2 (parallel [
(set (subreg:SI (reg:V8HI 28 r28 [orig:121 T.6 ] [121]) 0)
(and:SI (subreg:SI (reg:V8HI 16 r16 [orig:118 i.0 ] [118]) 0)
(subreg:SI (reg:V8HI 20 r20 [orig:119 j.1 ] [119]) 0)))
(clobber (scratch:CC))
]) 81 {andsi3} (nil)
(expr_list:REG_UNUSED (scratch:CC)
(nil)))
===============================================
Problem seems to originate in routine find_equiv_reg which decides that reg:HI r16 holds
the same value as reg:HI 145. But reg:SI r16 is referenced in and and:SI instruction later on.
--
Summary: Bad code gen for vector code with -O3 (caused by
GRA/reload)
Product: gcc
Version: 3.5.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: fjahanian at apple dot com
CC: gcc-bugs at gcc dot gnu dot org
GCC build triplet: powerpc-apple-darwin7.2.0
GCC host triplet: powerpc-apple-darwin7.2.0
GCC target triplet: powerpc-apple-darwin7.2.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
@ 2004-06-16 22:01 ` pinskia at gcc dot gnu dot org
2004-06-16 22:33 ` ebotcazou at gcc dot gnu dot org
` (14 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-06-16 22:01 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-06-16 22:01 -------
Confirmed, related to bug 15289, in fact I would not doubt that this is a dup of that bug.
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Component|c |rtl-optimization
Ever Confirmed| |1
GCC build triplet|powerpc-apple-darwin7.2.0 |
GCC host triplet|powerpc-apple-darwin7.2.0 |
Keywords| |wrong-code
Last reconfirmed|0000-00-00 00:00:00 |2004-06-16 22:01:35
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
2004-06-16 22:01 ` [Bug rtl-optimization/16028] " pinskia at gcc dot gnu dot org
@ 2004-06-16 22:33 ` ebotcazou at gcc dot gnu dot org
2004-06-16 22:42 ` ebotcazou at gcc dot gnu dot org
` (13 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-06-16 22:33 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2004-06-16 22:33 -------
Is the call to find_equiv_reg you're talking about located in the inheritance
code from choose_reload_regs? If so, that could be the same inheritance problem
I saw on i586: http://gcc.gnu.org/ml/gcc-patches/2004-04/msg01779.html
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
2004-06-16 22:01 ` [Bug rtl-optimization/16028] " pinskia at gcc dot gnu dot org
2004-06-16 22:33 ` ebotcazou at gcc dot gnu dot org
@ 2004-06-16 22:42 ` ebotcazou at gcc dot gnu dot org
2004-06-16 22:46 ` fjahanian at apple dot com
` (12 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-06-16 22:42 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2004-06-16 22:41 -------
As a side note, "GRA" doesn't sound much GCC-ish. I think "greg" or "global"
would be more easily understood.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (2 preceding siblings ...)
2004-06-16 22:42 ` ebotcazou at gcc dot gnu dot org
@ 2004-06-16 22:46 ` fjahanian at apple dot com
2004-06-16 22:53 ` fjahanian at apple dot com
` (11 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: fjahanian at apple dot com @ 2004-06-16 22:46 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From fjahanian at apple dot com 2004-06-16 22:46 -------
Yes, senarios are similar. I will try the patch you mentioned and see how it goes.
P.S. will remeber to use greg.
- Thanks
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (3 preceding siblings ...)
2004-06-16 22:46 ` fjahanian at apple dot com
@ 2004-06-16 22:53 ` fjahanian at apple dot com
2004-06-17 7:46 ` ebotcazou at gcc dot gnu dot org
` (10 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: fjahanian at apple dot com @ 2004-06-16 22:53 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From fjahanian at apple dot com 2004-06-16 22:53 -------
Yup. This patch fixes my failure as well.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (4 preceding siblings ...)
2004-06-16 22:53 ` fjahanian at apple dot com
@ 2004-06-17 7:46 ` ebotcazou at gcc dot gnu dot org
2004-06-17 16:39 ` fjahanian at apple dot com
` (9 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-06-17 7:46 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2004-06-17 07:46 -------
> Yes, senarios are similar. I will try the patch you mentioned and see how it
> goes.
Thanks for the confirmation. Hopefully with now two incarnations of the
problem, we'll able to come up with a solution.
Unfortunately, as pointed out by Joern
http://gcc.gnu.org/ml/gcc-patches/2004-06/msg00061.html
my patch is wrong because it effectively disables inheritance (sorry for not
giving the link earlier, I didn't remember it wasn't reachable from the original
message).
As you can see, how reload inheritance is supposed to work is a little unclear.
Its failure mode may be problematic or not. I think a correct patch could be:
Index: reload1.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/reload1.c,v
retrieving revision 1.436
diff -u -p -r1.436 reload1.c
--- reload1.c 20 May 2004 11:45:20 -0000 1.436
+++ reload1.c 17 Jun 2004 07:34:57 -0000
@@ -5654,10 +5654,9 @@ choose_reload_regs (struct insn_chain *c
i);
}
- if ((regs_used
- && ! free_for_value_p (regno, rld[r].mode,
- rld[r].opnum, rld[r].when_needed,
- rld[r].in, rld[r].out, r, 1))
+ if (! free_for_value_p (regno, rld[r].mode,
+ rld[r].opnum, rld[r].when_needed,
+ rld[r].in, rld[r].out, r, 1)
|| bad_for_class)
equiv = 0;
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (5 preceding siblings ...)
2004-06-17 7:46 ` ebotcazou at gcc dot gnu dot org
@ 2004-06-17 16:39 ` fjahanian at apple dot com
2004-06-18 18:18 ` fjahanian at apple dot com
` (8 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: fjahanian at apple dot com @ 2004-06-17 16:39 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From fjahanian at apple dot com 2004-06-17 16:39 -------
I looked at the follow-up thread and used the modified patch, very similar to yours.
FYI, this patch passed bootstrap and dejagnu tests on ppc-darwin. How ever, We are all still
concerned with performance implications of this change. I plan to run SPEC with this patch
on a G5 machine and see if it shows any regressions.
RCS file: /cvs/gcc/gcc/gcc/reload1.c,v
retrieving revision 1.346.2.33.2.1
diff -c -p -r1.346.2.33.2.1 reload1.c
*** reload1.c 7 Jun 2004 17:05:08 -0000 1.346.2.33.2.1
--- reload1.c 17 Jun 2004 16:35:02 -0000
*************** choose_reload_regs (struct insn_chain *c
*** 5654,5664 ****
i);
}
! if ((regs_used
! && ! free_for_value_p (regno, rld[r].mode,
! rld[r].opnum, rld[r].when_needed,
! rld[r].in, rld[r].out, r, 1))
! || bad_for_class)
equiv = 0;
}
--- 5654,5665 ----
i);
}
! if (bad_for_class
! || ! free_for_value_p (regno, rld[r].mode,
! rld[r].opnum, rld[r].when_needed,
! rld[r].in, rld[r].out, r, 1))
equiv = 0;
}
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (6 preceding siblings ...)
2004-06-17 16:39 ` fjahanian at apple dot com
@ 2004-06-18 18:18 ` fjahanian at apple dot com
2004-06-18 20:57 ` ebotcazou at gcc dot gnu dot org
` (7 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: fjahanian at apple dot com @ 2004-06-18 18:18 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From fjahanian at apple dot com 2004-06-18 18:18 -------
Ran SPEC benchmark on a 2 GHz G5 (apple-ppc-darwin). It showed *no* performance
degradation. Eric, are you planning on submitting this patch for approval?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by GRA/reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (7 preceding siblings ...)
2004-06-18 18:18 ` fjahanian at apple dot com
@ 2004-06-18 20:57 ` ebotcazou at gcc dot gnu dot org
2004-06-23 7:25 ` [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by reload) ebotcazou at gcc dot gnu dot org
` (6 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-06-18 20:57 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2004-06-18 20:57 -------
> Ran SPEC benchmark on a 2 GHz G5 (apple-ppc-darwin). It showed *no* performance
> degradation
That's good news.
> Eric, are you planning on submitting this patch for approval?
Joern was not very fond of it. But I suppose it could be good enough. I'll try
to submit it tomorrow.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (8 preceding siblings ...)
2004-06-18 20:57 ` ebotcazou at gcc dot gnu dot org
@ 2004-06-23 7:25 ` ebotcazou at gcc dot gnu dot org
2004-06-23 14:38 ` giovannibajo at libero dot it
` (5 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-06-23 7:25 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2004-06-23 07:10 -------
Patch submitted: http://gcc.gnu.org/ml/gcc-patches/2004-06/msg01647.html
--
What |Removed |Added
----------------------------------------------------------------------------
CC|ebotcazou at gcc dot gnu dot|
|org |
AssignedTo|unassigned at gcc dot gnu |ebotcazou at gcc dot gnu dot
|dot org |org
Status|NEW |ASSIGNED
Summary|Bad code gen for vector code|Bad code gen for vector code
|with -O3 (caused by |with -O3 (caused by reload)
|GRA/reload) |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (9 preceding siblings ...)
2004-06-23 7:25 ` [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by reload) ebotcazou at gcc dot gnu dot org
@ 2004-06-23 14:38 ` giovannibajo at libero dot it
2004-06-23 14:47 ` ebotcazou at gcc dot gnu dot org
` (4 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: giovannibajo at libero dot it @ 2004-06-23 14:38 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From giovannibajo at libero dot it 2004-06-23 14:26 -------
Eric, which versions of GCC are affected by this problem? Is this a regression?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (10 preceding siblings ...)
2004-06-23 14:38 ` giovannibajo at libero dot it
@ 2004-06-23 14:47 ` ebotcazou at gcc dot gnu dot org
2004-09-30 21:44 ` ebotcazou at gcc dot gnu dot org
` (3 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-06-23 14:47 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2004-06-23 14:43 -------
> Eric, which versions of GCC are affected by this problem?
Hard to say precisely. I have an Ada testcase for the 3.4 branch, Fariborz's is
for mainline AFAICS.
> Is this a regression?
Ada bugs are not really considered in determining regressions so, if Fariborz
only sees it on mainline, let's target it to 3.5.0.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (11 preceding siblings ...)
2004-06-23 14:47 ` ebotcazou at gcc dot gnu dot org
@ 2004-09-30 21:44 ` ebotcazou at gcc dot gnu dot org
2004-11-22 8:49 ` [Bug rtl-optimization/16028] [4.0 Regression] Wrong code at " ebotcazou at gcc dot gnu dot org
` (2 subsequent siblings)
15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-09-30 21:44 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2004-09-30 21:44 -------
I think the best fix is http://gcc.gnu.org/ml/gcc-patches/2004-08/msg00661.html
but it has been stuck in the review process for a while.
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |ebotcazou at gcc dot gnu dot
| |org
AssignedTo|ebotcazou at gcc dot gnu dot|unassigned at gcc dot gnu
|org |dot org
Status|ASSIGNED |NEW
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] [4.0 Regression] Wrong code at -O3 (caused by reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (12 preceding siblings ...)
2004-09-30 21:44 ` ebotcazou at gcc dot gnu dot org
@ 2004-11-22 8:49 ` ebotcazou at gcc dot gnu dot org
2004-12-02 12:07 ` nathan at gcc dot gnu dot org
2004-12-05 5:38 ` pinskia at gcc dot gnu dot org
15 siblings, 0 replies; 17+ messages in thread
From: ebotcazou at gcc dot gnu dot org @ 2004-11-22 8:49 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From ebotcazou at gcc dot gnu dot org 2004-11-22 08:48 -------
It is the cause of the following regressions on UltraSPARC 32-bit:
FAIL: gcc.c-torture/execute/simd-2.c execution, -O3 -fomit-frame-pointer
FAIL: gcc.c-torture/execute/simd-2.c execution, -O3 -g
The failure looks very similar to the one in the vector code on PowerPC.
--
What |Removed |Added
----------------------------------------------------------------------------
GCC target triplet|powerpc-apple-darwin7.2.0 |
Summary|Bad code gen for vector code|[4.0 Regression] Wrong code
|with -O3 (caused by reload) |at -O3 (caused by reload)
Target Milestone|--- |4.0.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] [4.0 Regression] Wrong code at -O3 (caused by reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (13 preceding siblings ...)
2004-11-22 8:49 ` [Bug rtl-optimization/16028] [4.0 Regression] Wrong code at " ebotcazou at gcc dot gnu dot org
@ 2004-12-02 12:07 ` nathan at gcc dot gnu dot org
2004-12-05 5:38 ` pinskia at gcc dot gnu dot org
15 siblings, 0 replies; 17+ messages in thread
From: nathan at gcc dot gnu dot org @ 2004-12-02 12:07 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From nathan at gcc dot gnu dot org 2004-12-02 12:06 -------
This appears fixed. I wonder if
2004-11-02 Nathan Sidwell <nathan@codesourcery.com>
PR rtl-optimization/17104
* config/rs6000/rs6000.c (rs6000_emit_move): Don't wrap small
loads in zero_extend.
fixed it. (I met a similar sounding problem on another port, where the
equivalent of the above did the trick).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
* [Bug rtl-optimization/16028] [4.0 Regression] Wrong code at -O3 (caused by reload)
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
` (14 preceding siblings ...)
2004-12-02 12:07 ` nathan at gcc dot gnu dot org
@ 2004-12-05 5:38 ` pinskia at gcc dot gnu dot org
15 siblings, 0 replies; 17+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2004-12-05 5:38 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2004-12-05 05:38 -------
Actually I think this was fixed by PR 15289 so closing as a dup of that bug.
*** This bug has been marked as a duplicate of 15289 ***
--
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |DUPLICATE
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16028
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2004-12-05 5:38 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-06-16 21:51 [Bug c/16028] New: Bad code gen for vector code with -O3 (caused by GRA/reload) fjahanian at apple dot com
2004-06-16 22:01 ` [Bug rtl-optimization/16028] " pinskia at gcc dot gnu dot org
2004-06-16 22:33 ` ebotcazou at gcc dot gnu dot org
2004-06-16 22:42 ` ebotcazou at gcc dot gnu dot org
2004-06-16 22:46 ` fjahanian at apple dot com
2004-06-16 22:53 ` fjahanian at apple dot com
2004-06-17 7:46 ` ebotcazou at gcc dot gnu dot org
2004-06-17 16:39 ` fjahanian at apple dot com
2004-06-18 18:18 ` fjahanian at apple dot com
2004-06-18 20:57 ` ebotcazou at gcc dot gnu dot org
2004-06-23 7:25 ` [Bug rtl-optimization/16028] Bad code gen for vector code with -O3 (caused by reload) ebotcazou at gcc dot gnu dot org
2004-06-23 14:38 ` giovannibajo at libero dot it
2004-06-23 14:47 ` ebotcazou at gcc dot gnu dot org
2004-09-30 21:44 ` ebotcazou at gcc dot gnu dot org
2004-11-22 8:49 ` [Bug rtl-optimization/16028] [4.0 Regression] Wrong code at " ebotcazou at gcc dot gnu dot org
2004-12-02 12:07 ` nathan at gcc dot gnu dot org
2004-12-05 5:38 ` pinskia at gcc dot gnu dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).