public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/44075] New: __builtin_eh_return miscompiled
@ 2010-05-11 9:47 amodra at gmail dot com
2010-05-12 11:40 ` [Bug target/44075] " amodra at gmail dot com
` (6 more replies)
0 siblings, 7 replies; 8+ messages in thread
From: amodra at gmail dot com @ 2010-05-11 9:47 UTC (permalink / raw)
To: gcc-bugs
At any optimisation level other than -O0, it seems that __builtin_eh_return
loses its handler arg. For -m32 -O2 -S the following:
long offset;
void *handler;
void foo (void)
{
__builtin_eh_return (offset, handler);
}
compiles to:
foo:
stwu 1,-32(1)
lis 9,offset@ha
mflr 0
stw 0,36(1)
stw 3,16(1)
stw 4,20(1)
stw 5,24(1)
stw 6,28(1)
lwz 10,offset@l(9)
lwz 0,36(1)
lwz 3,16(1)
lwz 4,20(1)
lwz 5,24(1)
mtlr 0
lwz 6,28(1)
addi 1,1,32
add 1,1,10
blr
--
Summary: __builtin_eh_return miscompiled
Product: gcc
Version: 4.4.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: amodra at gmail dot com
GCC target triplet: powerpc*-*-linux
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/44075] __builtin_eh_return miscompiled
2010-05-11 9:47 [Bug target/44075] New: __builtin_eh_return miscompiled amodra at gmail dot com
@ 2010-05-12 11:40 ` amodra at gmail dot com
2010-05-14 0:35 ` amodra at gcc dot gnu dot org
` (5 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: amodra at gmail dot com @ 2010-05-12 11:40 UTC (permalink / raw)
To: gcc-bugs
--
amodra at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |amodra at gmail dot com
|dot org |
Status|UNCONFIRMED |ASSIGNED
Ever Confirmed|0 |1
Last reconfirmed|0000-00-00 00:00:00 |2010-05-12 11:40:16
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/44075] __builtin_eh_return miscompiled
2010-05-11 9:47 [Bug target/44075] New: __builtin_eh_return miscompiled amodra at gmail dot com
2010-05-12 11:40 ` [Bug target/44075] " amodra at gmail dot com
@ 2010-05-14 0:35 ` amodra at gcc dot gnu dot org
2010-05-17 13:41 ` bergner at gcc dot gnu dot org
` (4 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: amodra at gcc dot gnu dot org @ 2010-05-14 0:35 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from amodra at gcc dot gnu dot org 2010-05-14 00:35 -------
Subject: Bug 44075
Author: amodra
Date: Fri May 14 00:35:16 2010
New Revision: 159382
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159382
Log:
PR target/44075
* config/rs6000/rs6000.c (struct machine_function): Reorder
fields for better packing. Add lr_save_state.
(rs6000_ra_ever_killed): Return lr_save_state if set.
(rs6000_emit_eh_reg_restore): Set lr_save_state.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/rs6000/rs6000.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/44075] __builtin_eh_return miscompiled
2010-05-11 9:47 [Bug target/44075] New: __builtin_eh_return miscompiled amodra at gmail dot com
2010-05-12 11:40 ` [Bug target/44075] " amodra at gmail dot com
2010-05-14 0:35 ` amodra at gcc dot gnu dot org
@ 2010-05-17 13:41 ` bergner at gcc dot gnu dot org
2010-06-04 4:57 ` amodra at gcc dot gnu dot org
` (3 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: bergner at gcc dot gnu dot org @ 2010-05-17 13:41 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from bergner at gcc dot gnu dot org 2010-05-17 13:41 -------
Subject: Bug 44075
Author: bergner
Date: Mon May 17 13:41:22 2010
New Revision: 159487
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=159487
Log:
Backport from mainline:
2010-05-14 Alan Modra <amodra@gmail.com>
PR target/44075
* config/rs6000/rs6000.c (struct machine_function): Reorder
fields for better packing. Add lr_save_state.
(rs6000_ra_ever_killed): Return lr_save_state if set.
(rs6000_emit_eh_reg_restore): Set lr_save_state.
Modified:
branches/ibm/gcc-4_4-branch/gcc/ChangeLog.ibm
branches/ibm/gcc-4_4-branch/gcc/config/rs6000/rs6000.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/44075] __builtin_eh_return miscompiled
2010-05-11 9:47 [Bug target/44075] New: __builtin_eh_return miscompiled amodra at gmail dot com
` (2 preceding siblings ...)
2010-05-17 13:41 ` bergner at gcc dot gnu dot org
@ 2010-06-04 4:57 ` amodra at gcc dot gnu dot org
2010-06-04 4:57 ` amodra at gcc dot gnu dot org
` (2 subsequent siblings)
6 siblings, 0 replies; 8+ messages in thread
From: amodra at gcc dot gnu dot org @ 2010-06-04 4:57 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from amodra at gcc dot gnu dot org 2010-06-04 04:57 -------
Subject: Bug 44075
Author: amodra
Date: Fri Jun 4 04:57:21 2010
New Revision: 160247
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=160247
Log:
PR target/44075
* gcc/config/rs6000/rs6000.c (struct machine_function): Reorder
fields for better packing. Add lr_save_state.
(rs6000_ra_ever_killed): Return lr_save_state if set.
(rs6000_emit_eh_reg_restore): Set lr_save_state.
Modified:
branches/gcc-4_4-branch/gcc/ChangeLog
branches/gcc-4_4-branch/gcc/config/rs6000/rs6000.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/44075] __builtin_eh_return miscompiled
2010-05-11 9:47 [Bug target/44075] New: __builtin_eh_return miscompiled amodra at gmail dot com
` (3 preceding siblings ...)
2010-06-04 4:57 ` amodra at gcc dot gnu dot org
@ 2010-06-04 4:57 ` amodra at gcc dot gnu dot org
2010-06-04 4:58 ` amodra at gcc dot gnu dot org
2010-06-04 4:59 ` amodra at gmail dot com
6 siblings, 0 replies; 8+ messages in thread
From: amodra at gcc dot gnu dot org @ 2010-06-04 4:57 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from amodra at gcc dot gnu dot org 2010-06-04 04:57 -------
Subject: Bug 44075
Author: amodra
Date: Fri Jun 4 04:56:54 2010
New Revision: 160246
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=160246
Log:
PR target/44075
* gcc/config/rs6000/rs6000.c (struct machine_function): Reorder
fields for better packing. Add lr_save_state.
(rs6000_ra_ever_killed): Return lr_save_state if set.
(rs6000_emit_eh_reg_restore): Set lr_save_state.
Modified:
branches/gcc-4_5-branch/gcc/ChangeLog
branches/gcc-4_5-branch/gcc/config/rs6000/rs6000.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/44075] __builtin_eh_return miscompiled
2010-05-11 9:47 [Bug target/44075] New: __builtin_eh_return miscompiled amodra at gmail dot com
` (4 preceding siblings ...)
2010-06-04 4:57 ` amodra at gcc dot gnu dot org
@ 2010-06-04 4:58 ` amodra at gcc dot gnu dot org
2010-06-04 4:59 ` amodra at gmail dot com
6 siblings, 0 replies; 8+ messages in thread
From: amodra at gcc dot gnu dot org @ 2010-06-04 4:58 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from amodra at gcc dot gnu dot org 2010-06-04 04:58 -------
Subject: Bug 44075
Author: amodra
Date: Fri Jun 4 04:58:05 2010
New Revision: 160248
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=160248
Log:
PR target/44075
* gcc/config/rs6000/rs6000.c (struct machine_function): Reorder
fields for better packing. Add lr_save_state.
(rs6000_ra_ever_killed): Return lr_save_state if set.
(rs6000_emit_eh_reg_restore): Set lr_save_state.
Modified:
branches/gcc-4_3-branch/gcc/ChangeLog
branches/gcc-4_3-branch/gcc/config/rs6000/rs6000.c
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075
^ permalink raw reply [flat|nested] 8+ messages in thread
* [Bug target/44075] __builtin_eh_return miscompiled
2010-05-11 9:47 [Bug target/44075] New: __builtin_eh_return miscompiled amodra at gmail dot com
` (5 preceding siblings ...)
2010-06-04 4:58 ` amodra at gcc dot gnu dot org
@ 2010-06-04 4:59 ` amodra at gmail dot com
6 siblings, 0 replies; 8+ messages in thread
From: amodra at gmail dot com @ 2010-06-04 4:59 UTC (permalink / raw)
To: gcc-bugs
------- Comment #6 from amodra at gmail dot com 2010-06-04 04:59 -------
fixed
--
amodra at gmail dot com changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44075
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2010-06-04 4:59 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-05-11 9:47 [Bug target/44075] New: __builtin_eh_return miscompiled amodra at gmail dot com
2010-05-12 11:40 ` [Bug target/44075] " amodra at gmail dot com
2010-05-14 0:35 ` amodra at gcc dot gnu dot org
2010-05-17 13:41 ` bergner at gcc dot gnu dot org
2010-06-04 4:57 ` amodra at gcc dot gnu dot org
2010-06-04 4:57 ` amodra at gcc dot gnu dot org
2010-06-04 4:58 ` amodra at gcc dot gnu dot org
2010-06-04 4:59 ` amodra at gmail dot com
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).