https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42722
Andrew Pinski changed:
What|Removed |Added
Severity|major |enhancement
Keywords|
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42722
--- Comment #16 from Peter A. Bigot 2011-02-21 09:50:00
UTC ---
I've now taken over the msp430 back end and created the attached patch and test
case. This is relative to the gcc trunk as of a couple weeks ago; still
present in all releases up to
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42722
--- Comment #15 from Peter A. Bigot 2011-02-21 09:48:23
UTC ---
Created attachment 23421
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23421
Fixes problem
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42722
--- Comment #14 from Peter A. Bigot 2011-02-21 09:46:30
UTC ---
Created attachment 23420
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23420
Generated code after patch applied
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42722
--- Comment #13 from Peter A. Bigot 2011-02-21 09:45:52
UTC ---
Created attachment 23419
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23419
Generated code before patch applied
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42722
--- Comment #12 from Peter A. Bigot 2011-02-21 09:45:15
UTC ---
Created attachment 23418
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=23418
Test case (requires msp430 back end)
Sorry, I don't speak dejagnu well enough yet to put target te
--- Comment #11 from shcherbakov at daad-alumni dot de 2010-02-10 12:44
---
Ok, m32c uses "memcpy" for all block moves (4 ints is a DImode, not BLKmode).
Additionally, it supports pre-decrement addressing mode, that enables a
mutually exclusive case to the one showing the bug.
To reprod
--- Comment #10 from mikpe at it dot uu dot se 2010-02-09 08:58 ---
(In reply to comment #9)
> Finally, the m32c port defines both PUSH_ARGS and HAVE_POST_INCREMENT, so it
> can be possible to reproduce the bug on this port.
> cat pr42722.c
struct test {
int a, b, c, d;
};
void func
--- Comment #9 from shcherbakov at daad-alumni dot de 2010-01-30 22:48
---
In general 'black box' case - yes. However, here there are 2 factors:
1) It is clear from the sources that 2 similar situations (pre-decrement and
post-increment) are handled in a different way, an additional che
--- Comment #8 from mikpe at it dot uu dot se 2010-01-30 21:57 ---
(In reply to comment #7)
> (In reply to comment #6)
> > Doesn't work, an ARM gcc built with that modification ICEs while trying to
> > compile __muldi3() in libgcc2.c.
> You don't need libgcc to reproduce the problem. If
--- Comment #7 from shcherbakov at daad-alumni dot de 2010-01-30 21:30
---
(In reply to comment #6)
> Doesn't work, an ARM gcc built with that modification ICEs while trying to
> compile __muldi3() in libgcc2.c.
You don't need libgcc to reproduce the problem. If gcc build has gone to th
--- Comment #6 from mikpe at it dot uu dot se 2010-01-30 21:24 ---
(In reply to comment #5)
> ARM uses ACCUMULATE_OUTGOING_ARGS instead of PUSH_ARGS. To reproduce the
> problem on ARM, you need to comment out "#define ACCUMULATE_OUTGOING_ARGS 1"
> and add "#define PUSH_ARGS 1" in "gcc/co
--- Comment #5 from shcherbakov at daad-alumni dot de 2010-01-30 20:08
---
Oops, missed a semicolon in the first line of "test case" (compile it with
g++).
ARM uses ACCUMULATE_OUTGOING_ARGS instead of PUSH_ARGS. To reproduce the
problem on ARM, you need to comment out "#define ACCUMULAT
--- Comment #4 from mikpe at it dot uu dot se 2010-01-30 19:54 ---
(In reply to comment #2)
> However, as shown in the patch, the discovered problem is general to GCC4
> (will
> cause problems on all targets having USE_LOAD_PRE_DECREMENT)
The "test case" is syntactically invalid and do
--- Comment #3 from rguenth at gcc dot gnu dot org 2010-01-30 16:01 ---
Patches should be sent to gcc-patc...@gcc.gu.org with a ChangeLog entry and
a note how you tested the patch.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42722
--- Comment #2 from shcherbakov at daad-alumni dot de 2010-01-30 15:37
---
(In reply to comment #1)
> What is msp430-gcc?
>
msp430-gcc is a port of GCC on TI MSP430 platform, that revealed the bug.
However, as shown in the patch, the discovered problem is general to GCC4 (will
cause p
--- Comment #1 from steven at gcc dot gnu dot org 2010-01-30 15:33 ---
What is msp430-gcc?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42722
17 matches
Mail list logo