public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/28516]  New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
@ 2006-07-27 18:53 tbm at cyrius dot com
  2006-07-27 18:54 ` [Bug target/28516] " tbm at cyrius dot com
                   ` (25 more replies)
  0 siblings, 26 replies; 27+ messages in thread
From: tbm at cyrius dot com @ 2006-07-27 18:53 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1368 bytes --]

Robert Schwebel reported on libc-ports that glibc failed to build on softfloat
arm eabi with an ICE, see
http://sources.redhat.com/ml/libc-ports/2006-07/msg00027.html

It fails with -fexceptions and works without.  I've attached a reduce testcase.
I assume this is a regression but I don't have an older cross compiler so I
cannot say for sure. 

(sid)207:tbm@usurper: ~] ~/tmp/gcc/4.2-arm-softfloat/gcc/xgcc -c -fexceptions
glibc-dl-lookup.c
glibc-dl-lookup.c: In function ‘check_match’:
glibc-dl-lookup.c:149: internal compiler error: in arm_unwind_emit_set, at
config/arm/arm.c:15419
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
(sid)208:tbm@usurper: ~] ~/tmp/gcc/4.2-arm-softfloat/gcc/xgcc -c
glibc-dl-lookup.c
(sid)209:tbm@usurper: ~]


-- 
           Summary: [4.2 regression] arm_unwind_emit_set, at
                    config/arm/arm.c:15419 with -fexceptions
           Product: gcc
           Version: 4.2.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: tbm at cyrius dot com
  GCC host triplet: arm-softfloat-linux-gnueabi
GCC target triplet: arm-softfloat-linux-gnueabi


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
@ 2006-07-27 18:54 ` tbm at cyrius dot com
  2006-07-27 19:34 ` pinskia at gcc dot gnu dot org
                   ` (24 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: tbm at cyrius dot com @ 2006-07-27 18:54 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from tbm at cyrius dot com  2006-07-27 18:54 -------
Created an attachment (id=11958)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11958&action=view)
test case

Reduced testcase from dl-lookup.c from glibc.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
  2006-07-27 18:54 ` [Bug target/28516] " tbm at cyrius dot com
@ 2006-07-27 19:34 ` pinskia at gcc dot gnu dot org
  2006-07-27 23:33 ` pbrook at gcc dot gnu dot org
                   ` (23 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-07-27 19:34 UTC (permalink / raw)
  To: gcc-bugs



-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
   Target Milestone|---                         |4.2.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
  2006-07-27 18:54 ` [Bug target/28516] " tbm at cyrius dot com
  2006-07-27 19:34 ` pinskia at gcc dot gnu dot org
@ 2006-07-27 23:33 ` pbrook at gcc dot gnu dot org
  2006-07-27 23:37 ` pbrook at gcc dot gnu dot org
                   ` (22 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-07-27 23:33 UTC (permalink / raw)
  To: gcc-bugs



-- 

pbrook at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-07-27 23:33:17
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (2 preceding siblings ...)
  2006-07-27 23:33 ` pbrook at gcc dot gnu dot org
@ 2006-07-27 23:37 ` pbrook at gcc dot gnu dot org
  2006-07-27 23:49 ` tbm at cyrius dot com
                   ` (21 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-07-27 23:37 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from pbrook at gcc dot gnu dot org  2006-07-27 23:37 -------
Huh. I thought glibc had removed all their nested functions.
The unwind table generation code can't cope with the prologue generated for
nested functions.

The reduced testcase passes the -O because gcc un-nests the function. Is this
true of the original testcase, or does glibc require trampolines?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (4 preceding siblings ...)
  2006-07-27 23:49 ` tbm at cyrius dot com
@ 2006-07-27 23:49 ` tbm at cyrius dot com
  2006-07-28 10:44 ` r dot schwebel at pengutronix dot de
                   ` (19 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: tbm at cyrius dot com @ 2006-07-27 23:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from tbm at cyrius dot com  2006-07-27 23:49 -------
Created an attachment (id=11962)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11962&action=view)
preprocessed source


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (3 preceding siblings ...)
  2006-07-27 23:37 ` pbrook at gcc dot gnu dot org
@ 2006-07-27 23:49 ` tbm at cyrius dot com
  2006-07-27 23:49 ` tbm at cyrius dot com
                   ` (20 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: tbm at cyrius dot com @ 2006-07-27 23:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from tbm at cyrius dot com  2006-07-27 23:49 -------
(In reply to comment #2)
> The reduced testcase passes the -O because gcc un-nests the function. Is this
> true of the original testcase, or does glibc require trampolines?

I *think* it passed at -O but I cannot check right now.  Instead, I'll attach
the original, unreduced preprocessed source.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (5 preceding siblings ...)
  2006-07-27 23:49 ` tbm at cyrius dot com
@ 2006-07-28 10:44 ` r dot schwebel at pengutronix dot de
  2006-07-28 13:19 ` pbrook at gcc dot gnu dot org
                   ` (18 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: r dot schwebel at pengutronix dot de @ 2006-07-28 10:44 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from r dot schwebel at pengutronix dot de  2006-07-28 10:44 -------
(In reply to comment #2)
> The reduced testcase passes the -O because gcc un-nests the function. Is this
> true of the original testcase, or does glibc require trampolines?

The original testcase doesn't pass; I've removed -fexceptions as suggested by
Martin and tried -O and -O1, without success. Same error message as before.

Robert


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (6 preceding siblings ...)
  2006-07-28 10:44 ` r dot schwebel at pengutronix dot de
@ 2006-07-28 13:19 ` pbrook at gcc dot gnu dot org
  2006-07-28 13:46 ` r dot schwebel at pengutronix dot de
                   ` (17 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-07-28 13:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pbrook at gcc dot gnu dot org  2006-07-28 13:19 -------
If your test fails with -fno-exceptions then you're hitting a different bug.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (7 preceding siblings ...)
  2006-07-28 13:19 ` pbrook at gcc dot gnu dot org
@ 2006-07-28 13:46 ` r dot schwebel at pengutronix dot de
  2006-07-28 15:06 ` pbrook at gcc dot gnu dot org
                   ` (16 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: r dot schwebel at pengutronix dot de @ 2006-07-28 13:46 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from r dot schwebel at pengutronix dot de  2006-07-28 13:46 -------
(In reply to comment #6)
> If your test fails with -fno-exceptions then you're hitting a different bug.

Different from ... what? The bug Martin reported is based on my report.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (8 preceding siblings ...)
  2006-07-28 13:46 ` r dot schwebel at pengutronix dot de
@ 2006-07-28 15:06 ` pbrook at gcc dot gnu dot org
  2006-07-28 15:30 ` r dot schwebel at pengutronix dot de
                   ` (15 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-07-28 15:06 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pbrook at gcc dot gnu dot org  2006-07-28 15:06 -------
I don't believe that it's possible to trigger this ICE unless you specify
-fexceptions or -funwind-tables.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (9 preceding siblings ...)
  2006-07-28 15:06 ` pbrook at gcc dot gnu dot org
@ 2006-07-28 15:30 ` r dot schwebel at pengutronix dot de
  2006-07-28 15:37 ` tbm at cyrius dot com
                   ` (14 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: r dot schwebel at pengutronix dot de @ 2006-07-28 15:30 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #9 from r dot schwebel at pengutronix dot de  2006-07-28 15:30 -------
(In reply to comment #8)
> I don't believe that it's possible to trigger this ICE unless you specify
> -fexceptions or -funwind-tables.

Confirmed:

Removing -fexceptions from the command line: ICE is still there.
Removing -fasynchronous-unwind-tables: IDE doesn't trigger any more.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (10 preceding siblings ...)
  2006-07-28 15:30 ` r dot schwebel at pengutronix dot de
@ 2006-07-28 15:37 ` tbm at cyrius dot com
  2006-07-28 15:40 ` tbm at cyrius dot com
                   ` (13 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: tbm at cyrius dot com @ 2006-07-28 15:37 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1874 bytes --]



------- Comment #10 from tbm at cyrius dot com  2006-07-28 15:37 -------
Here:

(sid)96:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -fexceptions orig.c
orig.c: In function ‘check_match’:
orig.c:5165: internal compiler error: in arm_unwind_emit_set, at
config/arm/arm.c:15419
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
(sid)97:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft orig.c
(sid)98:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -O orig.c
(sid)99:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -O2 orig.c
(sid)100:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -O3 orig.c
(sid)101:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -O3 -fexceptions orig.c
(sid)102:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -O2 -fexceptions orig.c
(sid)103:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -O1 -fexceptions orig.c
(sid)104:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -fexceptions orig.c
orig.c: In function ‘check_match’:
orig.c:5165: internal compiler error: in arm_unwind_emit_set, at
config/arm/arm.c:15419
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
(sid)105:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -funwind-tables orig.c
orig.c: In function ‘check_match’:
orig.c:5165: internal compiler error: in arm_unwind_emit_set, at
config/arm/arm.c:15419
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
(sid)106:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -funwind-tables -O1 orig.c
(sid)107:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -funwind-tables -O2 orig.c
(sid)108:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -funwind-tables -O3 orig.c
(sid)109:tbm@usurper: ~]


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (11 preceding siblings ...)
  2006-07-28 15:37 ` tbm at cyrius dot com
@ 2006-07-28 15:40 ` tbm at cyrius dot com
  2006-07-31 23:38 ` mmitchel at gcc dot gnu dot org
                   ` (12 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: tbm at cyrius dot com @ 2006-07-28 15:40 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1010 bytes --]



------- Comment #11 from tbm at cyrius dot com  2006-07-28 15:40 -------
And the original ICE at -O2 only shows up when you comine -funwind-tables or
-fexceptions with -pg:

(sid)119:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -funwind-tables  -pg  -O2
orig.c
orig.c: In function ‘check_match’:
orig.c:5165: internal compiler error: in arm_unwind_emit_set, at
config/arm/arm.c:15419
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
(sid)120:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft -fexceptions -pg  -O2
orig.c
orig.c: In function ‘check_match’:
orig.c:5165: internal compiler error: in arm_unwind_emit_set, at
config/arm/arm.c:15419
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
(sid)121:tbm@usurper: ~] gcc -c -std=gnu99 -mtp=soft  -pg  -O2 orig.c
(sid)122:tbm@usurper: ~]


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (12 preceding siblings ...)
  2006-07-28 15:40 ` tbm at cyrius dot com
@ 2006-07-31 23:38 ` mmitchel at gcc dot gnu dot org
  2006-09-10  2:12 ` pinskia at gcc dot gnu dot org
                   ` (11 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: mmitchel at gcc dot gnu dot org @ 2006-07-31 23:38 UTC (permalink / raw)
  To: gcc-bugs



-- 

mmitchel at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (13 preceding siblings ...)
  2006-07-31 23:38 ` mmitchel at gcc dot gnu dot org
@ 2006-09-10  2:12 ` pinskia at gcc dot gnu dot org
  2006-09-10  2:15 ` pinskia at gcc dot gnu dot org
                   ` (10 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-09-10  2:12 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #12 from pinskia at gcc dot gnu dot org  2006-09-10 02:12 -------
Reduced testcase:
void do_lookup_x (int ref)
{
 int check_match (void)
  {
    return ref;
  }
}


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (14 preceding siblings ...)
  2006-09-10  2:12 ` pinskia at gcc dot gnu dot org
@ 2006-09-10  2:15 ` pinskia at gcc dot gnu dot org
  2006-09-10  2:26 ` pinskia at gcc dot gnu dot org
                   ` (9 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-09-10  2:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #13 from pinskia at gcc dot gnu dot org  2006-09-10 02:15 -------
(In reply to comment #2)
> The reduced testcase passes the -O because gcc un-nests the function. Is this
> true of the original testcase, or does glibc require trampolines?
Actually it might pass at -O1 for my testcase because check_match is not used
but in the orginal testcase it will fail because check_match is marked as
noinline.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (15 preceding siblings ...)
  2006-09-10  2:15 ` pinskia at gcc dot gnu dot org
@ 2006-09-10  2:26 ` pinskia at gcc dot gnu dot org
  2006-09-16  0:31 ` pbrook at gcc dot gnu dot org
                   ` (8 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-09-10  2:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #14 from pinskia at gcc dot gnu dot org  2006-09-10 02:26 -------
The set which we are ICEing on:
(set (reg:SI 12 ip)
    (plus:SI (reg/f:SI 13 sp)
        (const_int 4 [0x4])))


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (16 preceding siblings ...)
  2006-09-10  2:26 ` pinskia at gcc dot gnu dot org
@ 2006-09-16  0:31 ` pbrook at gcc dot gnu dot org
  2006-09-19 13:18 ` pbrook at gcc dot gnu dot org
                   ` (7 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-09-16  0:31 UTC (permalink / raw)
  To: gcc-bugs



-- 

pbrook at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |pbrook at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2006-07-27 23:33:17         |2006-09-16 00:31:23
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (17 preceding siblings ...)
  2006-09-16  0:31 ` pbrook at gcc dot gnu dot org
@ 2006-09-19 13:18 ` pbrook at gcc dot gnu dot org
  2006-09-19 13:19 ` pbrook at gcc dot gnu dot org
                   ` (6 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-09-19 13:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #15 from pbrook at gcc dot gnu dot org  2006-09-19 13:18 -------
Subject: Bug 28516

Author: pbrook
Date: Tue Sep 19 13:18:27 2006
New Revision: 117055

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=117055
Log:
2006-09-19  Paul Brook  <paul@codesourcery.com>

        PR target/28516
        gcc/
        * config/arm/arm.c (arm_unwind_emit_set): Handle reg = sp + const.

        gcc/testsuite/
        * gcc.dg/nested-func-5.c: New test.


Added:
    branches/csl/sourcerygxx-4_1/gcc/testsuite/gcc.dg/nested-func-5.c
Modified:
    branches/csl/sourcerygxx-4_1/ChangeLog.csl
    branches/csl/sourcerygxx-4_1/gcc/config/arm/arm.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (18 preceding siblings ...)
  2006-09-19 13:18 ` pbrook at gcc dot gnu dot org
@ 2006-09-19 13:19 ` pbrook at gcc dot gnu dot org
  2006-09-19 13:26 ` pbrook at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-09-19 13:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #16 from pbrook at gcc dot gnu dot org  2006-09-19 13:19 -------
Subject: Bug 28516

Author: pbrook
Date: Tue Sep 19 13:19:24 2006
New Revision: 117056

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=117056
Log:
2006-09-19  Paul Brook  <paul@codesourcery.com>

        PR target/28516
        gcc/
        * config/arm/arm.c (arm_unwind_emit_set): Handle reg = sp + const.

        gcc/testsuite/
        * gcc.dg/nested-func-5.c: New test.


Added:
    trunk/gcc/testsuite/gcc.dg/nested-func-5.c
Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/arm/arm.c
    trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (19 preceding siblings ...)
  2006-09-19 13:19 ` pbrook at gcc dot gnu dot org
@ 2006-09-19 13:26 ` pbrook at gcc dot gnu dot org
  2006-09-26 22:33 ` raj dot khem at gmail dot com
                   ` (4 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-09-19 13:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #17 from pbrook at gcc dot gnu dot org  2006-09-19 13:26 -------
Fixed.


-- 

pbrook at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (20 preceding siblings ...)
  2006-09-19 13:26 ` pbrook at gcc dot gnu dot org
@ 2006-09-26 22:33 ` raj dot khem at gmail dot com
  2006-12-03 21:57 ` r dot schwebel at pengutronix dot de
                   ` (3 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: raj dot khem at gmail dot com @ 2006-09-26 22:33 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #18 from raj dot khem at gmail dot com  2006-09-26 22:33 -------
Paul

The patch is also needed on gcc-4_1-branch.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (21 preceding siblings ...)
  2006-09-26 22:33 ` raj dot khem at gmail dot com
@ 2006-12-03 21:57 ` r dot schwebel at pengutronix dot de
  2006-12-03 22:49 ` pbrook at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  25 siblings, 0 replies; 27+ messages in thread
From: r dot schwebel at pengutronix dot de @ 2006-12-03 21:57 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #19 from r dot schwebel at pengutronix dot de  2006-12-03 21:57 -------
(In reply to comment #18)
> The patch is also needed on gcc-4_1-branch.

Doesn't work: this happens when I add the patch to 4.1.1:

rsc@isonoe:/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5/elf$ 
+PATH=/media/rscusb1_plain/tmp//armeb-xscale-linux-gnueabi/gcc-4.1.1-glibc-2.5-kernel-2.6.18/bin:/media/rscusb1_plain/tmp//armeb-xscale
+-linux-gnueabi/gcc-4.1.1-glibc-2.5-kernel-2.6.18/usr/bin:$PATH
armeb-xscale-linux-gnueabi-gcc dl-lookup.c -c -std=gnu99 -O2 -Wall     
+-Winline -Wwrite-strings -fmerge-all-constants -g -Wstrict-prototypes  -pg
-fexceptions -fasynchronous-unwind-tables   -I../include   
+-I/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build/elf 
+-I/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build
-I../ports/sysdeps/arm/elf     
+-I../ports/sysdeps/unix/sysv/linux/arm/eabi/nptl
-I../ports/sysdeps/unix/sysv/linux/arm/eabi                                     
+-I../ports/sysdeps/unix/sysv/linux/arm/nptl
-I../ports/sysdeps/unix/sysv/linux/arm -I../ports/sysdeps/unix/sysv/linux       
+-I../nptl/sysdeps/unix/sysv/linux -I../nptl/sysdeps/pthread
-I../sysdeps/pthread -I../sysdeps/unix/sysv/linux -I../sysdeps/gnu        
+-I../sysdeps/unix/common -I../sysdeps/unix/mman -I../sysdeps/unix/inet
-I../ports/sysdeps/unix/sysv -I../nptl/sysdeps/unix/sysv       
+-I../sysdeps/unix/sysv -I../ports/sysdeps/unix/arm -I../ports/sysdeps/unix
-I../nptl/sysdeps/unix -I../sysdeps/unix -I../sysdeps/posix
+-I../ports/sysdeps/arm/eabi -I../ports/sysdeps/arm/nptl -I../ports/sysdeps/arm
-I../sysdeps/wordsize-32 -I../sysdeps/ieee754/flt-32   
+-I../sysdeps/ieee754/dbl-64 -I../sysdeps/ieee754 -I../sysdeps/generic/elf
-I../sysdeps/generic -I../ports -I../nptl  -I.. -I../libio  
+-I. -nostdinc -isystem                                                         
+/media/rscusb1_plain/tmp/armeb-xscale-linux-gnueabi/gcc-4.1.1-glibc-2.5-kernel-2.6.18/bin/../lib/gcc/armeb-xscale-linux-gnueabi/4.1.1/
+include -isystem                                                               
+/media/rscusb1_plain/tmp//armeb-xscale-linux-gnueabi/gcc-4.1.1-glibc-2.5-kernel-2.6.18/sysroot-armeb-xscale-linux-gnueabi/usr/include 
+-D_LIBC_REENTRANT -include ../include/libc-symbols.h  -DPROF      -o           
+/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build/elf/dl-lookup.op
-MD -MP -MF     
+/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build/elf/dl-lookup.op.dt
-MT          
+/media/rscusb1_plain/svn/oselas/toolchain/trunks/OSELAS.Toolchain-trunk/build-target/glibc-2.5-build/elf/dl-lookup.op 
/tmp/ccuNAGqV.s: Assembler messages:                                            
/tmp/ccuNAGqV.s:169: Error: junk at end of line, first unrecognized character
is `,'                                                   

Here's where the assember barfs (the second line):                              

check_match.7984:                                                               
        .fnstart                                                                
.LFB69:                                                                         
        .file 2 "do-lookup.h"                                                   
        .loc 2 76 0                                                             
        @ Nested: function declared inside another function.                    
        @ args = 0, pretend = 0, frame = 0                                      
        @ frame_needed = 1, uses_anonymous_args = 0                             
.LVL19:                                                                         
        .pad #4                                                                 
        str     ip, [sp, #-4]!                                                  

.LCFI4:                                                                         
        .movsp ip, #4      <---------------------------------------             
        add ip, sp, #4                                                          

The ", #4" seems to be bogus. This is built with binutils 2.17.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (22 preceding siblings ...)
  2006-12-03 21:57 ` r dot schwebel at pengutronix dot de
@ 2006-12-03 22:49 ` pbrook at gcc dot gnu dot org
  2006-12-04 11:26 ` rearnsha at gcc dot gnu dot org
  2006-12-04 15:10 ` pbrook at gcc dot gnu dot org
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-12-03 22:49 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #20 from pbrook at gcc dot gnu dot org  2006-12-03 22:48 -------
As mentioned in the original patch submission mail you need a newer gas.

http://gcc.gnu.org/ml/gcc-patches/2006-09/msg00805.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (23 preceding siblings ...)
  2006-12-03 22:49 ` pbrook at gcc dot gnu dot org
@ 2006-12-04 11:26 ` rearnsha at gcc dot gnu dot org
  2006-12-04 15:10 ` pbrook at gcc dot gnu dot org
  25 siblings, 0 replies; 27+ messages in thread
From: rearnsha at gcc dot gnu dot org @ 2006-12-04 11:26 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #21 from rearnsha at gcc dot gnu dot org  2006-12-04 11:26 -------
We can't apply this patch to the 4.1 branch if it would mean users had to use
CVS versions of binutils.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

* [Bug target/28516] [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions
  2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
                   ` (24 preceding siblings ...)
  2006-12-04 11:26 ` rearnsha at gcc dot gnu dot org
@ 2006-12-04 15:10 ` pbrook at gcc dot gnu dot org
  25 siblings, 0 replies; 27+ messages in thread
From: pbrook at gcc dot gnu dot org @ 2006-12-04 15:10 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #22 from pbrook at gcc dot gnu dot org  2006-12-04 15:10 -------
I disagree.  All code that requires new gas would previously ICE.
Any code that currently compiles with 4.1 should be unaffected.

Paul


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28516


^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2006-12-04 15:10 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-07-27 18:53 [Bug target/28516] New: [4.2 regression] arm_unwind_emit_set, at config/arm/arm.c:15419 with -fexceptions tbm at cyrius dot com
2006-07-27 18:54 ` [Bug target/28516] " tbm at cyrius dot com
2006-07-27 19:34 ` pinskia at gcc dot gnu dot org
2006-07-27 23:33 ` pbrook at gcc dot gnu dot org
2006-07-27 23:37 ` pbrook at gcc dot gnu dot org
2006-07-27 23:49 ` tbm at cyrius dot com
2006-07-27 23:49 ` tbm at cyrius dot com
2006-07-28 10:44 ` r dot schwebel at pengutronix dot de
2006-07-28 13:19 ` pbrook at gcc dot gnu dot org
2006-07-28 13:46 ` r dot schwebel at pengutronix dot de
2006-07-28 15:06 ` pbrook at gcc dot gnu dot org
2006-07-28 15:30 ` r dot schwebel at pengutronix dot de
2006-07-28 15:37 ` tbm at cyrius dot com
2006-07-28 15:40 ` tbm at cyrius dot com
2006-07-31 23:38 ` mmitchel at gcc dot gnu dot org
2006-09-10  2:12 ` pinskia at gcc dot gnu dot org
2006-09-10  2:15 ` pinskia at gcc dot gnu dot org
2006-09-10  2:26 ` pinskia at gcc dot gnu dot org
2006-09-16  0:31 ` pbrook at gcc dot gnu dot org
2006-09-19 13:18 ` pbrook at gcc dot gnu dot org
2006-09-19 13:19 ` pbrook at gcc dot gnu dot org
2006-09-19 13:26 ` pbrook at gcc dot gnu dot org
2006-09-26 22:33 ` raj dot khem at gmail dot com
2006-12-03 21:57 ` r dot schwebel at pengutronix dot de
2006-12-03 22:49 ` pbrook at gcc dot gnu dot org
2006-12-04 11:26 ` rearnsha at gcc dot gnu dot org
2006-12-04 15:10 ` pbrook 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).