public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug middle-end/50061] New: [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS
@ 2011-08-12 18:02 ro at gcc dot gnu.org
2011-08-12 20:34 ` [Bug middle-end/50061] " rsandifo at gcc dot gnu.org
` (4 more replies)
0 siblings, 5 replies; 6+ messages in thread
From: ro at gcc dot gnu.org @ 2011-08-12 18:02 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50061
Bug #: 50061
Summary: [4.7 regression] emit_library_call_value_1 change
broke SF->TI conversion on MIPS
Classification: Unclassified
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: ro@gcc.gnu.org
CC: rdsandiford@googlemail.com
Host: mips-sgi-irix6.5
Target: mips-sgi-irix6.5
Build: mips-sgi-irix6.5
Julian,
your patch
2011-08-01 Julian Brown <julian@codesourcery.com>
* calls.c (emit_library_call_value_1): Support padding for libcall
arguments and return values.
* config/arm/arm.c (arm_pad_arg_upward): Pad half-float values
downwards in big-endian mode.
introduced several testsuite regressions on IRIX 6.5. Initially, I suspected
that my fp-bit move to toplevel gcc had been the culprit, but a reghunt
identified
your patch. I've used the following testcase, derived from
gcc.dg/torture/fp-int-convert-timode.c. It aborts with your patch:
extern void abort (void);
extern void exit (int);
typedef int TItype __attribute__ ((mode (TI)));
int
main (void)
{
static volatile TItype ivin, ivout;
static volatile float fv1, fv2;
ivin = (TItype)1;
fv1 = (TItype)1;
fv2 = ivin;
ivout = fv2;
if (ivin != ((TItype)1)
|| ivout != ivin
|| ivout != (TItype)1
|| fv1 != (TItype)1
|| fv2 != (TItype)1
|| fv1 != fv2)
abort ();
exit (0);
}
Comparing gcc -O3 -save-temps output before and after the patch, I find that
it introduced a wrong shift of one __fixsfti arg:
ld $25,%call16(__fixsfti)($28)
+ dmfc1 $2,$f12
+ nop
+ dsll $2,$2,32
+ dmtc1 $2,$f12
jalr $25
Please fix.
Rainer
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/50061] [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS
2011-08-12 18:02 [Bug middle-end/50061] New: [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS ro at gcc dot gnu.org
@ 2011-08-12 20:34 ` rsandifo at gcc dot gnu.org
2011-08-14 9:58 ` rguenth at gcc dot gnu.org
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2011-08-12 20:34 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50061
rsandifo@gcc.gnu.org <rsandifo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
URL| |http://gcc.gnu.org/ml/gcc-p
| |atches/2011-08/msg00735.htm
| |l
Last reconfirmed| |2011-08-12
CC|rdsandiford at googlemail |rsandifo at gcc dot gnu.org
|dot com |
AssignedTo|unassigned at gcc dot |rsandifo at gcc dot gnu.org
|gnu.org |
Ever Confirmed|0 |1
--- Comment #1 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> 2011-08-12 20:26:35 UTC ---
Note that I posted a patch for this last weekend:
http://gcc.gnu.org/ml/gcc-patches/2011-08/msg00735.html
However, Julian's on holiday at the moment, and I'm not set up
to test big-endian ARM myself. Probably best to apply the patch
to your local tree (or revert Julian's in your local tree)
until he gets back.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/50061] [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS
2011-08-12 18:02 [Bug middle-end/50061] New: [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS ro at gcc dot gnu.org
2011-08-12 20:34 ` [Bug middle-end/50061] " rsandifo at gcc dot gnu.org
@ 2011-08-14 9:58 ` rguenth at gcc dot gnu.org
2011-08-17 14:16 ` ro at CeBiTec dot Uni-Bielefeld.DE
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: rguenth at gcc dot gnu.org @ 2011-08-14 9:58 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50061
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |wrong-code
Target Milestone|--- |4.7.0
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/50061] [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS
2011-08-12 18:02 [Bug middle-end/50061] New: [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS ro at gcc dot gnu.org
2011-08-12 20:34 ` [Bug middle-end/50061] " rsandifo at gcc dot gnu.org
2011-08-14 9:58 ` rguenth at gcc dot gnu.org
@ 2011-08-17 14:16 ` ro at CeBiTec dot Uni-Bielefeld.DE
2011-09-22 13:39 ` rsandifo at gcc dot gnu.org
2011-10-02 17:50 ` rsandifo at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2011-08-17 14:16 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50061
--- Comment #2 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> 2011-08-17 13:52:58 UTC ---
> --- Comment #1 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> 2011-08-12 20:26:35 UTC ---
> Note that I posted a patch for this last weekend:
>
> http://gcc.gnu.org/ml/gcc-patches/2011-08/msg00735.html
I somehow missed that.
> However, Julian's on holiday at the moment, and I'm not set up
> to test big-endian ARM myself. Probably best to apply the patch
> to your local tree (or revert Julian's in your local tree)
> until he gets back.
I've applied your patch locally and IRIX 6.5 results are now as before.
Thanks.
Rainer
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/50061] [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS
2011-08-12 18:02 [Bug middle-end/50061] New: [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS ro at gcc dot gnu.org
` (2 preceding siblings ...)
2011-08-17 14:16 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2011-09-22 13:39 ` rsandifo at gcc dot gnu.org
2011-10-02 17:50 ` rsandifo at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2011-09-22 13:39 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50061
--- Comment #3 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> 2011-09-22 12:26:48 UTC ---
Author: rsandifo
Date: Thu Sep 22 12:26:41 2011
New Revision: 179085
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=179085
Log:
gcc/
PR middle-end/50113
PR middle-end/50061
* calls.c (emit_library_call_value_1): Use BLOCK_REG_PADDING to
get the locate.where_pad value for register-only arguments.
* config/arm/arm.c (arm_pad_arg_upward): Remove HFmode handling.
(arm_pad_reg_upward): Handle null types.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/calls.c
trunk/gcc/config/arm/arm.c
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug middle-end/50061] [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS
2011-08-12 18:02 [Bug middle-end/50061] New: [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS ro at gcc dot gnu.org
` (3 preceding siblings ...)
2011-09-22 13:39 ` rsandifo at gcc dot gnu.org
@ 2011-10-02 17:50 ` rsandifo at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: rsandifo at gcc dot gnu.org @ 2011-10-02 17:50 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50061
rsandifo@gcc.gnu.org <rsandifo at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #4 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> 2011-10-02 17:49:10 UTC ---
Patch applied to trunk.
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2011-10-02 17:50 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-08-12 18:02 [Bug middle-end/50061] New: [4.7 regression] emit_library_call_value_1 change broke SF->TI conversion on MIPS ro at gcc dot gnu.org
2011-08-12 20:34 ` [Bug middle-end/50061] " rsandifo at gcc dot gnu.org
2011-08-14 9:58 ` rguenth at gcc dot gnu.org
2011-08-17 14:16 ` ro at CeBiTec dot Uni-Bielefeld.DE
2011-09-22 13:39 ` rsandifo at gcc dot gnu.org
2011-10-02 17:50 ` rsandifo at gcc dot gnu.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).