public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap)
@ 2005-01-21 0:30 arend dot bayer at web dot de
2005-01-21 0:33 ` [Bug rtl-optimization/19556] " arend dot bayer at web dot de
` (8 more replies)
0 siblings, 9 replies; 10+ messages in thread
From: arend dot bayer at web dot de @ 2005-01-21 0:30 UTC (permalink / raw)
To: gcc-bugs
When I try a C-only bootstrap with CLFAGS set to "-g -O2 -march=pentium-m",
this dies with an ICE while building libmudflap:
/home/arend/sources/gcc-head-build/gcc/xgcc
-B/home/arend/sources/gcc-head-build/gcc/
-B/usr/local/gcc-head/i686-pc-linux-gnu/bin/
-B/usr/local/gcc-head/i686-pc-linux-gnu/lib/
-isystem /usr/local/gcc-head/i686-pc-linux-gnu/include
-isystem/usr/local/gcc-head/i686-pc-linux-gnu/sys-include -DHAVE_CONFIG_H -I.
-I../../../gcc/libmudflap -I. -Wall -ffunction-sections -fdata-sections -O2 -g
-O2 -march=pentium-m -MT mf-runtime.lo -MD -MP -MF .deps/mf-runtime.Tpo
-c ../../../gcc/libmudflap/mf-runtime.c -o mf-runtime.o
../../../gcc/libmudflap/mf-runtime.c: In function ‘__mfu_check’:
../../../gcc/libmudflap/mf-runtime.c:1023: error: unrecognizable insn:
(insn 1279 1278 464 37 ../../../gcc/libmudflap/mf-runtime.c:866 (set
(reg/v/f:SI 22 xmm1 [orig:86 all_ovr_obj ] [86])
(plus:SI (reg/v/f:SI 22 xmm1 [orig:86 all_ovr_obj ] [86])
(const_int -28 [0xffffffe4]))) -1 (nil)
(expr_list:REG_EQUIV (plus:SI (reg/f:SI 6 bp)
(const_int -28 [0xffffffe4]))
(nil)))
../../../gcc/libmudflap/mf-runtime.c:1023: internal compiler error: in
extract_insn, at recog.c:2020
Please submit a full bug report,
with preprocessed source if appropriate.
I will attach pre-processed mf-runtime.i. This is with
(GCC) 4.0.0 20050120 (experimental)
I think about a week ago it still worked.
I can reproduce it with cc1 -O2 -march=pentium-m mf-runtime.i also with a
compiler bootstrapped with just CFLAGS="-g -O2".
--
Summary: ICE with -march=pentium-m (during bootstrap)
Product: gcc
Version: 4.0.0
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: rtl-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: arend dot bayer at web dot de
CC: gcc-bugs at gcc dot gnu dot org
GCC host triplet: i686-pc-linux-gnu
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug rtl-optimization/19556] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
@ 2005-01-21 0:33 ` arend dot bayer at web dot de
2005-01-21 0:35 ` [Bug rtl-optimization/19556] [4.0 Regression] " pinskia at gcc dot gnu dot org
` (7 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: arend dot bayer at web dot de @ 2005-01-21 0:33 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From arend dot bayer at web dot de 2005-01-21 00:33 -------
Created an attachment (id=8025)
--> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=8025&action=view)
preprocessed source
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug rtl-optimization/19556] [4.0 Regression] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
2005-01-21 0:33 ` [Bug rtl-optimization/19556] " arend dot bayer at web dot de
@ 2005-01-21 0:35 ` pinskia at gcc dot gnu dot org
2005-01-21 0:38 ` [Bug target/19556] " pinskia at gcc dot gnu dot org
` (6 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-21 0:35 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
CC| |rth at gcc dot gnu dot org
Keywords| |build, ice-on-valid-code,
| |ssemmx
Summary|ICE with -march=pentium-m |[4.0 Regression] ICE with -
|(during bootstrap) |march=pentium-m (during
| |bootstrap)
Target Milestone|--- |4.0.0
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/19556] [4.0 Regression] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
2005-01-21 0:33 ` [Bug rtl-optimization/19556] " arend dot bayer at web dot de
2005-01-21 0:35 ` [Bug rtl-optimization/19556] [4.0 Regression] " pinskia at gcc dot gnu dot org
@ 2005-01-21 0:38 ` pinskia at gcc dot gnu dot org
2005-01-21 2:11 ` pinskia at gcc dot gnu dot org
` (5 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-21 0:38 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
Component|rtl-optimization |target
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/19556] [4.0 Regression] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
` (2 preceding siblings ...)
2005-01-21 0:38 ` [Bug target/19556] " pinskia at gcc dot gnu dot org
@ 2005-01-21 2:11 ` pinskia at gcc dot gnu dot org
2005-01-21 11:38 ` steven at gcc dot gnu dot org
` (4 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2005-01-21 2:11 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From pinskia at gcc dot gnu dot org 2005-01-21 02:11 -------
This is as reduced as I can get it (80 lines):
typedef unsigned int size_t;
extern void __assert_fail () __attribute__ ((__noreturn__));
typedef unsigned int uintptr_t;
extern int __mf_heuristic_check (uintptr_t, uintptr_t);
struct __mf_options
{
unsigned adapt_cache;
enum { mode_nop, mode_check } mudflap_mode;
};
extern enum __mf_state_enum __mf_state;
extern int __mf_starting_p;
extern struct __mf_options __mf_opts;
typedef struct __mf_object { unsigned read_count, write_count, liveness; } __mf_object_t;
unsigned __mf_find_objects (uintptr_t ptr_low, uintptr_t ptr_high,
__mf_object_t **objs, unsigned max_objs);
void __mf_adapt_cache (void);
void __mfu_check (void *ptr, size_t sz, int type)
{
int judgement = 0;
uintptr_t ptr_low = (uintptr_t) ptr;
uintptr_t ptr_high = (sz ? (((uintptr_t) ptr) <= (~ (uintptr_t) 0)-(sz)+1
? ((uintptr_t) ptr)+((uintptr_t) sz) - 1 : (~ (uintptr_t) 0)) :
((uintptr_t) ptr));
switch (__mf_opts.mudflap_mode)
{
case mode_nop:
break;
case mode_check:
{
unsigned heuristics = 0;
static unsigned adapt_count;
adapt_count ++;
if ((__builtin_expect (!!(__mf_opts.adapt_cache > 0
&& adapt_count > __mf_opts.adapt_cache), 0)))
{
adapt_count = 0;
__mf_adapt_cache ();
}
while (judgement == 0)
{
extern void __real_free (void *p);
__mf_object_t* ovr_obj[1];
unsigned obj_count;
__mf_object_t** all_ovr_obj = ((void *)0);
__mf_object_t** dealloc_me = ((void *)0);
unsigned i;
obj_count = __mf_find_objects (ptr_low, ptr_high, ovr_obj, 1);
if ((__builtin_expect (!!(obj_count > 1), 0)))
{
extern void * __real_malloc (size_t c);
unsigned n;
all_ovr_obj = __real_malloc ((sizeof (__mf_object_t *) * obj_count));
n = __mf_find_objects (ptr_low, ptr_high, all_ovr_obj, obj_count);
((void) (__builtin_expect (!!(n == obj_count), 1) ? 0
: (__assert_fail (), 0)));
dealloc_me = all_ovr_obj;
}
else
{
all_ovr_obj = ovr_obj;
dealloc_me = ((void *)0);
}
for (i = 0; i < obj_count; i++)
{
__mf_object_t *obj = all_ovr_obj[i];
((void) (__builtin_expect (!!(obj != ((void *)0)), 1) ? 0
: (__assert_fail (), 0)));
if (type == 0)
obj->read_count ++;
}
if (dealloc_me != ((void *)0))
__real_free (dealloc_me);
if (heuristics++ < 2)
judgement = __mf_heuristic_check (ptr_low, ptr_high);
}
}
}
}
--
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Ever Confirmed| |1
Last reconfirmed|0000-00-00 00:00:00 |2005-01-21 02:11:18
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/19556] [4.0 Regression] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
` (3 preceding siblings ...)
2005-01-21 2:11 ` pinskia at gcc dot gnu dot org
@ 2005-01-21 11:38 ` steven at gcc dot gnu dot org
2005-01-21 15:43 ` arend dot bayer at web dot de
` (3 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: steven at gcc dot gnu dot org @ 2005-01-21 11:38 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From steven at gcc dot gnu dot org 2005-01-21 11:38 -------
Looks like a reload problem (of course).
In the .lreg dump we have this:
(insn:HI 100 99 101 9 (set (reg/v/f:SI 64 [ all_ovr_obj ])
(reg/f:SI 87)) 41 {*movsi_1} (nil)
(nil))
In the .greg dump we get these reloads for insn 100:
Spilling for insn 100.
...
Spilling for insn 100.
...
Reloads for insn # 100
Reload 0: reload_in (SI) = (plus:SI (reg/f:SI 6 bp)
(const_int -28
[0xffffffffffffffe4]))
SSE_REGS, RELOAD_FOR_INPUT (opnum = 1)
reload_in_reg: (plus:SI (reg/f:SI 6 bp)
(const_int -28
[0xffffffffffffffe4]))
reload_reg_rtx: (reg/v/f:SI 21 xmm0 [orig:64 all_ovr_obj ] [64])
...
At the moment of the ICE we have this:
(insn 287 99 288 8 (set (reg/v/f:SI 21 xmm0 [orig:64 all_ovr_obj ] [64])
(reg/f:SI 6 bp)) 41 {*movsi_1} (nil)
(nil))
(insn 288 287 100 8 (set (reg/v/f:SI 21 xmm0 [orig:64 all_ovr_obj ] [64])
(plus:SI (reg/v/f:SI 21 xmm0 [orig:64 all_ovr_obj ] [64])
(const_int -28 [0xffffffffffffffe4]))) -1 (nil)
(expr_list:REG_EQUIV (plus:SI (reg/f:SI 6 bp)
(const_int -28 [0xffffffffffffffe4]))
(nil)))
(insn:HI 100 288 101 8 (set (reg/v/f:SI 21 xmm0 [orig:64 all_ovr_obj ] [64])
(reg/v/f:SI 21 xmm0 [orig:64 all_ovr_obj ] [64])) 41 {*movsi_1} (nil)
(nil))
Why does reload reload an SImode register to an sse register?
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/19556] [4.0 Regression] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
` (4 preceding siblings ...)
2005-01-21 11:38 ` steven at gcc dot gnu dot org
@ 2005-01-21 15:43 ` arend dot bayer at web dot de
2005-01-24 1:11 ` rth at gcc dot gnu dot org
` (2 subsequent siblings)
8 siblings, 0 replies; 10+ messages in thread
From: arend dot bayer at web dot de @ 2005-01-21 15:43 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From arend dot bayer at web dot de 2005-01-21 15:43 -------
Subject: Re: [4.0 Regression] ICE with
-march=pentium-m (during bootstrap)
I verified it still ICEs as of today (2005-01-21).
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/19556] [4.0 Regression] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
` (5 preceding siblings ...)
2005-01-21 15:43 ` arend dot bayer at web dot de
@ 2005-01-24 1:11 ` rth at gcc dot gnu dot org
2005-01-25 18:44 ` cvs-commit at gcc dot gnu dot org
2005-01-25 18:51 ` rth at gcc dot gnu dot org
8 siblings, 0 replies; 10+ messages in thread
From: rth at gcc dot gnu dot org @ 2005-01-24 1:11 UTC (permalink / raw)
To: gcc-bugs
--
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|unassigned at gcc dot gnu |rth at gcc dot gnu dot org
|dot org |
Status|NEW |ASSIGNED
Last reconfirmed|2005-01-21 02:11:18 |2005-01-24 01:11:52
date| |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/19556] [4.0 Regression] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
` (6 preceding siblings ...)
2005-01-24 1:11 ` rth at gcc dot gnu dot org
@ 2005-01-25 18:44 ` cvs-commit at gcc dot gnu dot org
2005-01-25 18:51 ` rth at gcc dot gnu dot org
8 siblings, 0 replies; 10+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-01-25 18:44 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From cvs-commit at gcc dot gnu dot org 2005-01-25 18:44 -------
Subject: Bug 19556
CVSROOT: /cvs/gcc
Module name: gcc
Changes by: rth@gcc.gnu.org 2005-01-25 18:44:05
Modified files:
gcc : ChangeLog
gcc/config/i386: i386.c i386.md
Log message:
PR target/19556
PR target/19584
* config/i386/i386.c (x86_inter_unit_moves): Zero.
(ix86_preferred_reload_class): Rewrite fp-constant section, with
80387 enabled, to return a proper subclass. Return the subset that
overlaps with GENERAL_REGS for PLUS.
* config/i386/i386.md (movsi_1, movdi_2): Set type to "mmx" for pxor.
Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/ChangeLog.diff?cvsroot=gcc&r1=2.7270&r2=2.7271
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.c.diff?cvsroot=gcc&r1=1.789&r2=1.790
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/config/i386/i386.md.diff?cvsroot=gcc&r1=1.612&r2=1.613
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
* [Bug target/19556] [4.0 Regression] ICE with -march=pentium-m (during bootstrap)
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
` (7 preceding siblings ...)
2005-01-25 18:44 ` cvs-commit at gcc dot gnu dot org
@ 2005-01-25 18:51 ` rth at gcc dot gnu dot org
8 siblings, 0 replies; 10+ messages in thread
From: rth at gcc dot gnu dot org @ 2005-01-25 18:51 UTC (permalink / raw)
To: gcc-bugs
------- Additional Comments From rth at gcc dot gnu dot org 2005-01-25 18:51 -------
http://gcc.gnu.org/ml/gcc-patches/2005-01/msg01815.html
--
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19556
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2005-01-25 18:51 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-01-21 0:30 [Bug rtl-optimization/19556] New: ICE with -march=pentium-m (during bootstrap) arend dot bayer at web dot de
2005-01-21 0:33 ` [Bug rtl-optimization/19556] " arend dot bayer at web dot de
2005-01-21 0:35 ` [Bug rtl-optimization/19556] [4.0 Regression] " pinskia at gcc dot gnu dot org
2005-01-21 0:38 ` [Bug target/19556] " pinskia at gcc dot gnu dot org
2005-01-21 2:11 ` pinskia at gcc dot gnu dot org
2005-01-21 11:38 ` steven at gcc dot gnu dot org
2005-01-21 15:43 ` arend dot bayer at web dot de
2005-01-24 1:11 ` rth at gcc dot gnu dot org
2005-01-25 18:44 ` cvs-commit at gcc dot gnu dot org
2005-01-25 18:51 ` rth 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).