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