--- Comment #23 from matz at gcc dot gnu dot org 2007-09-28 13:32 ---
Subject: Bug 33552
Author: matz
Date: Fri Sep 28 13:31:50 2007
New Revision: 128864
URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=128864
Log:
PR rtl-optimization/33552
* function.c
--- Comment #24 from matz at gcc dot gnu dot org 2007-09-28 13:33 ---
Subject: Bug 33552
Author: matz
Date: Fri Sep 28 13:33:09 2007
New Revision: 128865
URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=128865
Log:
PR rtl-optimization/33552
*
--- Comment #22 from bonzini at gnu dot org 2007-09-28 10:04 ---
I don't think so, as you don't know which input will match the output (i.e.
whether the two inputs will be swapped) if you have a % constraint in the asm.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33552
--- Comment #25 from matz at gcc dot gnu dot org 2007-09-28 14:45 ---
Fixed now.
--
matz at gcc dot gnu dot org changed:
What|Removed |Added
Status|NEW
--- Comment #16 from bonzini at gnu dot org 2007-09-27 06:28 ---
I will implement something along the lines that Jakub discussed. In the
meanwhile, could anybody figure a self-contained execution testcase based on
comment #14?
Thanks!
--
bonzini at gnu dot org changed:
--- Comment #17 from belyshev at depni dot sinp dot msu dot ru 2007-09-27
08:01 ---
(In reply to comment #16)
something like this (for gcc.target/i386):
/* { dg-do run } */
/* { dg-require-effective-target lp64 } */
/* { dg-options -O2} */
unsigned long a [100];
int main (void)
{
--- Comment #18 from jakub at gcc dot gnu dot org 2007-09-27 08:12 ---
Sure, no problem.
/* PR rtl-optimization/33552 */
/* { dg-do run } */
/* { dg-options -O2 } */
extern void abort (void);
void
__attribute__((noinline))
foo (unsigned long *wp, unsigned long *up, long un, unsigned
--- Comment #19 from matz at gcc dot gnu dot org 2007-09-27 14:52 ---
Have a patch on http://gcc.gnu.org/ml/gcc-patches/2007-09/msg01968.html .
Fixes also the reload failure on x86 -O2 -fPIC on this testcase (which hits
glibc):
/* { dg-do compile } */
/* { dg-options -O2 -fPIC } */
--- Comment #20 from bonzini at gnu dot org 2007-09-27 15:01 ---
Thanks.
--
bonzini at gnu dot org changed:
What|Removed |Added
AssignedTo|bonzini at gnu dot org
--- Comment #21 from ubizjak at gmail dot com 2007-09-27 19:59 ---
(In reply to comment #19)
Have a patch on http://gcc.gnu.org/ml/gcc-patches/2007-09/msg01968.html .
Fixes also the reload failure on x86 -O2 -fPIC on this testcase (which hits
glibc):
Do we need a solution for %.
--- Comment #14 from jakub at gcc dot gnu dot org 2007-09-26 21:19 ---
This isn't related to commutative constraints, can be reproduced with:
void
mul_basecase (unsigned long *wp, unsigned long *up, long un,
unsigned long *vp, long vn)
{
long j;
unsigned long prod_low,
--- Comment #15 from jakub at gcc dot gnu dot org 2007-09-26 21:24 ---
The restriction at least not to allow MEM_Ps was posted in:
http://gcc.gnu.org/ml/gcc-patches/2007-07/msg01329.html
but never applied to the trunk. But I believe it should instead check just
for REG_P, instead of
--- Comment #12 from ubizjak at gmail dot com 2007-09-25 18:57 ---
(In reply to comment #1)
marking %0 early-clobbered fixes the problem.
Please look at comment #7.
Confirmed as a 4.3 regression, something is wrong in match_asm_constraints_1.
--
ubizjak at gmail dot com
--- Comment #13 from ubizjak at gmail dot com 2007-09-25 19:29 ---
(In reply to comment #12)
marking %0 early-clobbered fixes the problem.
Please look at comment #7.
I think I need some sleep. I was thinking of comment #11.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33552
14 matches
Mail list logo