public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* current: arm codegen severely broken
@ 1998-07-28 21:07 Todd Vierling
  1998-08-10  6:55 ` Richard Earnshaw
  0 siblings, 1 reply; 4+ messages in thread
From: Todd Vierling @ 1998-07-28 21:07 UTC (permalink / raw)
  To: egcs-bugs

Since about 6/21 snapshot, possibly prior, the arm codegen is broken to the
point that egcs cannot compile itself.

This is seen on arm-netbsd, but the errors are /very/ likely the codegen
engine as any compiler generated by gcc 2.7.2.2 (NetBSD's current compiler)
will run fine.  However, if a 'make bootstrap' (or its equivalent of bulding
a gcc, installing, and building another one from that) is done, you get the
lovely specific error of:

xgcc: Internal compiler error: program cc1 got fatal signal 11

What's actually happening is that cc1 is coredumping, which I can cause
simply by running cc1 with no arguments.  It happens before stdin is even
read.

Backtrace:

#0  0xe9958 in init_emit_once (line_numbers=2708776) at ../emit-rtl.c:3462
3462              const_tiny_rtx[i][(int) mode] = tem;
#1  0x48858 in compile_file (name=0xdf1c "stdin") at ../toplev.c:2548
#2  0x4e5dc in main (argc=1, argv=0xefbfd838, envp=0xefbfd840)
    at ../toplev.c:4838
#3  0x10d0 in start ()

Variable prints (now here's the funny part):

(gdb) print mode
$1 = -272640164
(gdb) print i
$2 = -272640180
(gdb) print tem
$3 = 0x29551c
(gdb) print const_tiny_rtx
$4 = {{0x0 <repeats 48 times>}, {0x0 <repeats 48 times>}, {
    0x0 <repeats 48 times>}}
(gdb) print &const_tiny_rtx
$5 = (rtx (*)[3][48]) 0x28d71c

I'll try to investigate further, but my time to devote to checking out the
arm architecture for this is limited.  I have core file, cc1 executable, and
compiler suite built from gcc 2.7.2.x.  (The first-generation compiler suite
had -g, too, so it may be disassembleable if necessary.)  If anyone has
ideas please let me know.

-- 
-- Todd Vierling (Personal tv@pobox.com; Bus. todd_vierling@xn.xerox.com)



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

* Re: current: arm codegen severely broken
  1998-08-10  6:55 ` Richard Earnshaw
@ 1998-08-10  6:55   ` Todd Vierling
  1998-08-14  0:29   ` Jeffrey A Law
  1 sibling, 0 replies; 4+ messages in thread
From: Todd Vierling @ 1998-08-10  6:55 UTC (permalink / raw)
  To: richard.earnshaw; +Cc: egcs-bugs, rearnsha

On Mon, 10 Aug 1998, Richard Earnshaw wrote:

: My guess is that this is the stage2 compiler that is crashing, and I would 
: imagine this is the first time floating point gets used in gcc.  You are 
: probably running into a mis-configuration problem, since the stage1 
: compiler will build a stage2 compiler with hardware floating point.  
: However, unless your kernel has an FPE in it, this will promptly crash.

"By god, I think he's got it!"  The link didn't quite hit me until I
realized that, around 6/21, the FPE was removed from NetBSD/arm32 kernels by
default.

: Jeff, can this go in egcs 1.1?

Please.  Thanks.

-- 
-- Todd Vierling (Personal tv@pobox.com; Bus. todd_vierling@xn.xerox.com)



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

* Re: current: arm codegen severely broken
  1998-07-28 21:07 current: arm codegen severely broken Todd Vierling
@ 1998-08-10  6:55 ` Richard Earnshaw
  1998-08-10  6:55   ` Todd Vierling
  1998-08-14  0:29   ` Jeffrey A Law
  0 siblings, 2 replies; 4+ messages in thread
From: Richard Earnshaw @ 1998-08-10  6:55 UTC (permalink / raw)
  To: Todd Vierling; +Cc: rearnsha

> Since about 6/21 snapshot, possibly prior, the arm codegen is broken to the
> point that egcs cannot compile itself.
> 
> This is seen on arm-netbsd, but the errors are /very/ likely the codegen
> engine as any compiler generated by gcc 2.7.2.2 (NetBSD's current compiler)
> will run fine.  However, if a 'make bootstrap' (or its equivalent of bulding
> a gcc, installing, and building another one from that) is done, you get the
> lovely specific error of:
> 
> xgcc: Internal compiler error: program cc1 got fatal signal 11
> 
> What's actually happening is that cc1 is coredumping, which I can cause
> simply by running cc1 with no arguments.  It happens before stdin is even
> read.
> 
> Backtrace:
> 
> #0  0xe9958 in init_emit_once (line_numbers=2708776) at ../emit-rtl.c:3462
> 3462              const_tiny_rtx[i][(int) mode] = tem;
> #1  0x48858 in compile_file (name=0xdf1c "stdin") at ../toplev.c:2548
> #2  0x4e5dc in main (argc=1, argv=0xefbfd838, envp=0xefbfd840)
>     at ../toplev.c:4838
> #3  0x10d0 in start ()

First of all, my apologies for the delay replying to this, I've been 
trying to get my own shark board up and running.

My guess is that this is the stage2 compiler that is crashing, and I would 
imagine this is the first time floating point gets used in gcc.  You are 
probably running into a mis-configuration problem, since the stage1 
compiler will build a stage2 compiler with hardware floating point.  
However, unless your kernel has an FPE in it, this will promptly crash.

Try the following patch (there is also a patch to your recent 
ASM_WEAKEN_LABEL change to put a new-line between the two statements).

Jeff, can this go in egcs 1.1?

Richard.

<date>  Richard Earnshaw (rearnsha@arm.com)

	* netbsd.h (ASM_WEAKEN_LABEL): Insert newline between .globl and .weak
	directives.

	* arm/netbsd.h (TARGET_DEFAULT): Default includes software floating 
	point.
	(CPP_FLOAT_DEFAULT_SPEC): Re-define accordingly.



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

* Re: current: arm codegen severely broken
  1998-08-10  6:55 ` Richard Earnshaw
  1998-08-10  6:55   ` Todd Vierling
@ 1998-08-14  0:29   ` Jeffrey A Law
  1 sibling, 0 replies; 4+ messages in thread
From: Jeffrey A Law @ 1998-08-14  0:29 UTC (permalink / raw)
  To: richard.earnshaw; +Cc: Todd Vierling, egcs-bugs, rearnsha

  In message < 199808101304.OAA06459@sun52.NIS.cambridge >you write:
  > Try the following patch (there is also a patch to your recent 
  > ASM_WEAKEN_LABEL change to put a new-line between the two statements).
I'd already fixed the WEAKEN_LABEL stuff.

  > Jeff, can this go in egcs 1.1?
I installed the arm/netbsd.h stuff tonight.

Thanks!
jeff


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

end of thread, other threads:[~1998-08-14  0:29 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1998-07-28 21:07 current: arm codegen severely broken Todd Vierling
1998-08-10  6:55 ` Richard Earnshaw
1998-08-10  6:55   ` Todd Vierling
1998-08-14  0:29   ` Jeffrey A Law

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).