public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c/31480] New: internal compiler error: Segmentation fault
@ 2007-04-05 4:02 gerg at snapgear dot com
2007-04-19 23:05 ` [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH kkojima at gcc dot gnu dot org
` (5 more replies)
0 siblings, 6 replies; 7+ messages in thread
From: gerg at snapgear dot com @ 2007-04-05 4:02 UTC (permalink / raw)
To: gcc-bugs
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 14038 bytes --]
An sh-linux targeted gcc generates:
mm.i: In function mmtree_RB_REMOVE_COLOR:
mm.i:36: internal compiler error: Segmentation fault
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
when compiling with:
sh-linux-gcc -O -fomit-frame-pointer -Wall -c mm.i
using the attached pre-processed source, mm.i.
The toolchain is gcc-4.1.2 and binutils-2.17 (with glibc-2.3.6 headers).
The host machine is a Fedora Core 4 Linux PC system. The gcc build configure
line was:
configure --target=sh-linux --with-headers=linux-2.4.32/include
--prefix=/usr/local --with-gnu-as --with-gnu-ld --disable-libmudflap
--disable-libssp --disable-shared --enable-multilib --enable-languages=c,c++
The original source of mm.i was derived when compiling the ssh v43p1
package, the original file in that package was monitor_mm.c. The attached
mm.i is a preprocessed and stripped file that still reproduces the
problem.
Changing the optimization level stops the problem, as does not using
the -momit-frame-pointer option.
---------------------------------- mm.i -------------------------------------
typedef unsigned int size_t;
struct mm_share {
struct { struct mm_share *rbe_left; struct mm_share *rbe_right; struct
mm_share *rbe_parent; int rbe_color; } next;
void *address;
size_t size;
};
struct mm_master {
struct mmtree { struct mm_share *rbh_root; } rb_free;
struct mmtree rb_allocated;
void *address;
size_t size;
struct mm_master *mmalloc;
int write;
int read;
};
static int
mm_compare(struct mm_share *a, struct mm_share *b)
{
long diff = (char *)a->address - (char *)b->address;
if (diff == 0)
return (0);
else if (diff < 0)
return (-1);
else
return (1);
}
void mmtree_RB_INSERT_COLOR(struct mmtree *head, struct mm_share *elm) { struct
mm_share *parent, *gparent, *tmp; while ((parent = (elm)->next.rbe_parent) &&
(parent)->next.rbe_color == 1) { gparent = (parent)->next.rbe_parent; if
(parent == (gparent)->next.rbe_left) { tmp = (gparent)->next.rbe_right; if (tmp
&& (tmp)->next.rbe_color == 1) { (tmp)->next.rbe_color = 0; do {
(parent)->next.rbe_color = 0; (gparent)->next.rbe_color = 1; } while (0); elm =
gparent; continue; } if ((parent)->next.rbe_right == elm) { do { (tmp) =
(parent)->next.rbe_right; if (((parent)->next.rbe_right =
(tmp)->next.rbe_left)) { ((tmp)->next.rbe_left)->next.rbe_parent = (parent); }
; if (((tmp)->next.rbe_parent = (parent)->next.rbe_parent)) { if ((parent) ==
((parent)->next.rbe_parent)->next.rbe_left)
((parent)->next.rbe_parent)->next.rbe_left = (tmp); else
((parent)->next.rbe_parent)->next.rbe_right = (tmp); } else (head)->rbh_root =
(tmp); (tmp)->next.rbe_left = (parent); (parent)->next.rbe_parent = (tmp); ; if
(((tmp)->next.rbe_parent)) ; } while (0); tmp = parent; parent = elm; elm =
tmp; } do { (parent)->next.rbe_color = 0; (gparent)->next.rbe_color = 1; }
while (0); do { (tmp) = (gparent)->next.rbe_left; if (((gparent)->next.rbe_left
= (tmp)->next.rbe_right)) { ((tmp)->next.rbe_right)->next.rbe_parent =
(gparent); } ; if (((tmp)->next.rbe_parent = (gparent)->next.rbe_parent)) { if
((gparent) == ((gparent)->next.rbe_parent)->next.rbe_left)
((gparent)->next.rbe_parent)->next.rbe_left = (tmp); else
((gparent)->next.rbe_parent)->next.rbe_right = (tmp); } else (head)->rbh_root =
(tmp); (tmp)->next.rbe_right = (gparent); (gparent)->next.rbe_parent = (tmp); ;
if (((tmp)->next.rbe_parent)) ; } while (0); } else { tmp =
(gparent)->next.rbe_left; if (tmp && (tmp)->next.rbe_color == 1) {
(tmp)->next.rbe_color = 0; do { (parent)->next.rbe_color = 0;
(gparent)->next.rbe_color = 1; } while (0); elm = gparent; continue; } if
((parent)->next.rbe_left == elm) { do { (tmp) = (parent)->next.rbe_left; if
(((parent)->next.rbe_left = (tmp)->next.rbe_right)) {
((tmp)->next.rbe_right)->next.rbe_parent = (parent); } ; if
(((tmp)->next.rbe_parent = (parent)->next.rbe_parent)) { if ((parent) ==
((parent)->next.rbe_parent)->next.rbe_left)
((parent)->next.rbe_parent)->next.rbe_left = (tmp); else
((parent)->next.rbe_parent)->next.rbe_right = (tmp); } else (head)->rbh_root =
(tmp); (tmp)->next.rbe_right = (parent); (parent)->next.rbe_parent = (tmp); ;
if (((tmp)->next.rbe_parent)) ; } while (0); tmp = parent; parent = elm; elm =
tmp; } do { (parent)->next.rbe_color = 0; (gparent)->next.rbe_color = 1; }
while (0); do { (tmp) = (gparent)->next.rbe_right; if
(((gparent)->next.rbe_right = (tmp)->next.rbe_left)) {
((tmp)->next.rbe_left)->next.rbe_parent = (gparent); } ; if
(((tmp)->next.rbe_parent = (gparent)->next.rbe_parent)) { if ((gparent) ==
((gparent)->next.rbe_parent)->next.rbe_left)
((gparent)->next.rbe_parent)->next.rbe_left = (tmp); else
((gparent)->next.rbe_parent)->next.rbe_right = (tmp); } else (head)->rbh_root =
(tmp); (tmp)->next.rbe_left = (gparent); (gparent)->next.rbe_parent = (tmp); ;
if (((tmp)->next.rbe_parent)) ; } while (0); } }
(head->rbh_root)->next.rbe_color = 0; } void mmtree_RB_REMOVE_COLOR(struct
mmtree *head, struct mm_share *parent, struct mm_share *elm) { struct mm_share
*tmp; while ((elm == ((void *)0) || (elm)->next.rbe_color == 0) && elm !=
(head)->rbh_root) { if ((parent)->next.rbe_left == elm) { tmp =
(parent)->next.rbe_right; if ((tmp)->next.rbe_color == 1) { do {
(tmp)->next.rbe_color = 0; (parent)->next.rbe_color = 1; } while (0); do {
(tmp) = (parent)->next.rbe_right; if (((parent)->next.rbe_right =
(tmp)->next.rbe_left)) { ((tmp)->next.rbe_left)->next.rbe_parent = (parent); }
; if (((tmp)->next.rbe_parent = (parent)->next.rbe_parent)) { if ((parent) ==
((parent)->next.rbe_parent)->next.rbe_left)
((parent)->next.rbe_parent)->next.rbe_left = (tmp); else
((parent)->next.rbe_parent)->next.rbe_right = (tmp); } else (head)->rbh_root =
(tmp); (tmp)->next.rbe_left = (parent); (parent)->next.rbe_parent = (tmp); ; if
(((tmp)->next.rbe_parent)) ; } while (0); tmp = (parent)->next.rbe_right; } if
(((tmp)->next.rbe_left == ((void *)0) || ((tmp)->next.rbe_left)->next.rbe_color
== 0) && ((tmp)->next.rbe_right == ((void *)0) ||
((tmp)->next.rbe_right)->next.rbe_color == 0)) { (tmp)->next.rbe_color = 1; elm
= parent; parent = (elm)->next.rbe_parent; } else { if ((tmp)->next.rbe_right
== ((void *)0) || ((tmp)->next.rbe_right)->next.rbe_color == 0) { struct
mm_share *oleft; if ((oleft = (tmp)->next.rbe_left)) (oleft)->next.rbe_color =
0; (tmp)->next.rbe_color = 1; do { (oleft) = (tmp)->next.rbe_left; if
(((tmp)->next.rbe_left = (oleft)->next.rbe_right)) {
((oleft)->next.rbe_right)->next.rbe_parent = (tmp); } ; if
(((oleft)->next.rbe_parent = (tmp)->next.rbe_parent)) { if ((tmp) ==
((tmp)->next.rbe_parent)->next.rbe_left)
((tmp)->next.rbe_parent)->next.rbe_left = (oleft); else
((tmp)->next.rbe_parent)->next.rbe_right = (oleft); } else (head)->rbh_root =
(oleft); (oleft)->next.rbe_right = (tmp); (tmp)->next.rbe_parent = (oleft); ;
if (((oleft)->next.rbe_parent)) ; } while (0); tmp = (parent)->next.rbe_right;
} (tmp)->next.rbe_color = (parent)->next.rbe_color; (parent)->next.rbe_color =
0; if ((tmp)->next.rbe_right) ((tmp)->next.rbe_right)->next.rbe_color = 0; do {
(tmp) = (parent)->next.rbe_right; if (((parent)->next.rbe_right =
(tmp)->next.rbe_left)) { ((tmp)->next.rbe_left)->next.rbe_parent = (parent); }
; if (((tmp)->next.rbe_parent = (parent)->next.rbe_parent)) { if ((parent) ==
((parent)->next.rbe_parent)->next.rbe_left)
((parent)->next.rbe_parent)->next.rbe_left = (tmp); else
((parent)->next.rbe_parent)->next.rbe_right = (tmp); } else (head)->rbh_root =
(tmp); (tmp)->next.rbe_left = (parent); (parent)->next.rbe_parent = (tmp); ; if
(((tmp)->next.rbe_parent)) ; } while (0); elm = (head)->rbh_root; break; } }
else { tmp = (parent)->next.rbe_left; if ((tmp)->next.rbe_color == 1) { do {
(tmp)->next.rbe_color = 0; (parent)->next.rbe_color = 1; } while (0); do {
(tmp) = (parent)->next.rbe_left; if (((parent)->next.rbe_left =
(tmp)->next.rbe_right)) { ((tmp)->next.rbe_right)->next.rbe_parent = (parent);
} ; if (((tmp)->next.rbe_parent = (parent)->next.rbe_parent)) { if ((parent) ==
((parent)->next.rbe_parent)->next.rbe_left)
((parent)->next.rbe_parent)->next.rbe_left = (tmp); else
((parent)->next.rbe_parent)->next.rbe_right = (tmp); } else (head)->rbh_root =
(tmp); (tmp)->next.rbe_right = (parent); (parent)->next.rbe_parent = (tmp); ;
if (((tmp)->next.rbe_parent)) ; } while (0); tmp = (parent)->next.rbe_left; }
if (((tmp)->next.rbe_left == ((void *)0) ||
((tmp)->next.rbe_left)->next.rbe_color == 0) && ((tmp)->next.rbe_right ==
((void *)0) || ((tmp)->next.rbe_right)->next.rbe_color == 0)) {
(tmp)->next.rbe_color = 1; elm = parent; parent = (elm)->next.rbe_parent; }
else { if ((tmp)->next.rbe_left == ((void *)0) ||
((tmp)->next.rbe_left)->next.rbe_color == 0) { struct mm_share *oright; if
((oright = (tmp)->next.rbe_right)) (oright)->next.rbe_color = 0;
(tmp)->next.rbe_color = 1; do { (oright) = (tmp)->next.rbe_right; if
(((tmp)->next.rbe_right = (oright)->next.rbe_left)) {
((oright)->next.rbe_left)->next.rbe_parent = (tmp); } ; if
(((oright)->next.rbe_parent = (tmp)->next.rbe_parent)) { if ((tmp) ==
((tmp)->next.rbe_parent)->next.rbe_left)
((tmp)->next.rbe_parent)->next.rbe_left = (oright); else
((tmp)->next.rbe_parent)->next.rbe_right = (oright); } else (head)->rbh_root =
(oright); (oright)->next.rbe_left = (tmp); (tmp)->next.rbe_parent = (oright); ;
if (((oright)->next.rbe_parent)) ; } while (0); tmp = (parent)->next.rbe_left;
} (tmp)->next.rbe_color = (parent)->next.rbe_color; (parent)->next.rbe_color =
0; if ((tmp)->next.rbe_left) ((tmp)->next.rbe_left)->next.rbe_color = 0; do {
(tmp) = (parent)->next.rbe_left; if (((parent)->next.rbe_left =
(tmp)->next.rbe_right)) { ((tmp)->next.rbe_right)->next.rbe_parent = (parent);
} ; if (((tmp)->next.rbe_parent = (parent)->next.rbe_parent)) { if ((parent) ==
((parent)->next.rbe_parent)->next.rbe_left)
((parent)->next.rbe_parent)->next.rbe_left = (tmp); else
((parent)->next.rbe_parent)->next.rbe_right = (tmp); } else (head)->rbh_root =
(tmp); (tmp)->next.rbe_right = (parent); (parent)->next.rbe_parent = (tmp); ;
if (((tmp)->next.rbe_parent)) ; } while (0); elm = (head)->rbh_root; break; } }
} if (elm) (elm)->next.rbe_color = 0; } struct mm_share *
mmtree_RB_REMOVE(struct mmtree *head, struct mm_share *elm) { struct mm_share
*child, *parent, *old = elm; int color; if ((elm)->next.rbe_left == ((void
*)0)) child = (elm)->next.rbe_right; else if ((elm)->next.rbe_right == ((void
*)0)) child = (elm)->next.rbe_left; else { struct mm_share *left; elm =
(elm)->next.rbe_right; while ((left = (elm)->next.rbe_left)) elm = left; child
= (elm)->next.rbe_right; parent = (elm)->next.rbe_parent; color =
(elm)->next.rbe_color; if (child) (child)->next.rbe_parent = parent; if
(parent) { if ((parent)->next.rbe_left == elm) (parent)->next.rbe_left = child;
else (parent)->next.rbe_right = child; ; } else (head)->rbh_root = child; if
((elm)->next.rbe_parent == old) parent = elm; (elm)->next = (old)->next; if
((old)->next.rbe_parent) { if (((old)->next.rbe_parent)->next.rbe_left == old)
((old)->next.rbe_parent)->next.rbe_left = elm; else
((old)->next.rbe_parent)->next.rbe_right = elm; ; } else (head)->rbh_root =
elm; ((old)->next.rbe_left)->next.rbe_parent = elm; if ((old)->next.rbe_right)
((old)->next.rbe_right)->next.rbe_parent = elm; if (parent) { left = parent; do
{ ; } while ((left = (left)->next.rbe_parent)); } goto color; } parent =
(elm)->next.rbe_parent; color = (elm)->next.rbe_color; if (child)
(child)->next.rbe_parent = parent; if (parent) { if ((parent)->next.rbe_left ==
elm) (parent)->next.rbe_left = child; else (parent)->next.rbe_right = child; ;
} else (head)->rbh_root = child; color: if (color == 0)
mmtree_RB_REMOVE_COLOR(head, parent, child); return (old); } struct mm_share *
mmtree_RB_INSERT(struct mmtree *head, struct mm_share *elm) { struct mm_share
*tmp; struct mm_share *parent = ((void *)0); int comp = 0; tmp =
(head)->rbh_root; while (tmp) { parent = tmp; comp = (mm_compare)(elm, parent);
if (comp < 0) tmp = (tmp)->next.rbe_left; else if (comp > 0) tmp =
(tmp)->next.rbe_right; else return (tmp); } do { (elm)->next.rbe_parent =
parent; (elm)->next.rbe_left = (elm)->next.rbe_right = ((void *)0);
(elm)->next.rbe_color = 1; } while (0); if (parent != ((void *)0)) { if (comp <
0) (parent)->next.rbe_left = elm; else (parent)->next.rbe_right = elm; ; } else
(head)->rbh_root = elm; mmtree_RB_INSERT_COLOR(head, elm); return (((void
*)0)); } struct mm_share * mmtree_RB_FIND(struct mmtree *head, struct mm_share
*elm) { struct mm_share *tmp = (head)->rbh_root; int comp; while (tmp) { comp =
mm_compare(elm, tmp); if (comp < 0) tmp = (tmp)->next.rbe_left; else if (comp >
0) tmp = (tmp)->next.rbe_right; else return (tmp); } return (((void *)0)); }
struct mm_share * mmtree_RB_NEXT(struct mmtree *head, struct mm_share *elm) {
if ((elm)->next.rbe_right) { elm = (elm)->next.rbe_right; while
((elm)->next.rbe_left) elm = (elm)->next.rbe_left; } else { if
((elm)->next.rbe_parent && (elm == ((elm)->next.rbe_parent)->next.rbe_left))
elm = (elm)->next.rbe_parent; else { while ((elm)->next.rbe_parent && (elm ==
((elm)->next.rbe_parent)->next.rbe_right)) elm = (elm)->next.rbe_parent; elm =
(elm)->next.rbe_parent; } } return (elm); } struct mm_share *
mmtree_RB_MINMAX(struct mmtree *head, int val) { struct mm_share *tmp =
(head)->rbh_root; struct mm_share *parent = ((void *)0); while (tmp) { parent =
tmp; if (val < 0) tmp = (tmp)->next.rbe_left; else tmp = (tmp)->next.rbe_right;
} return (parent); }
------------------------------------------------------------------------------
--
Summary: internal compiler error: Segmentation fault
Product: gcc
Version: 4.1.2
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: gerg at snapgear dot com
GCC build triplet: i686-pc-linux-gnu
GCC host triplet: i686-pc-linux-gnu
GCC target triplet: sh-linux
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31480
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH
2007-04-05 4:02 [Bug c/31480] New: internal compiler error: Segmentation fault gerg at snapgear dot com
@ 2007-04-19 23:05 ` kkojima at gcc dot gnu dot org
2007-04-22 0:18 ` kkojima at gcc dot gnu dot org
` (4 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2007-04-19 23:05 UTC (permalink / raw)
To: gcc-bugs
------- Comment #1 from kkojima at gcc dot gnu dot org 2007-04-20 00:05 -------
I've confirmed that the testcase doesn't fail with 3.4 compiler
and fails with 4.0, 4.1 and 4.2. Although it doesn't fail with
the current trunk compiler, it might be simply latent. The segfault
occurs in insn_current_length when evaluating GET_CODE for a null
rtx. Now I'm testing the patch below.
--- ORIG/trunk/gcc/config/sh/sh.md 2007-03-29 08:44:33.000000000 +0900
+++ LOCAL/trunk/gcc/config/sh/sh.md 2007-04-19 11:02:06.000000000 +0900
@@ -420,10 +420,12 @@
(eq_attr "type" "jump")
(cond [(eq_attr "med_branch_p" "yes")
(const_int 2)
- (and (eq (symbol_ref "GET_CODE (prev_nonnote_insn (insn))")
- (symbol_ref "INSN"))
- (eq (symbol_ref "INSN_CODE (prev_nonnote_insn (insn))")
- (symbol_ref "code_for_indirect_jump_scratch")))
+ (and (ne (symbol_ref "prev_nonnote_insn (insn)")
+ (const_int 0))
+ (and (eq (symbol_ref "GET_CODE (prev_nonnote_insn
(insn))")
+ (symbol_ref "INSN"))
+ (eq (symbol_ref "INSN_CODE (prev_nonnote_insn
(insn))")
+ (symbol_ref "code_for_indirect_jump_scratch"))))
(cond [(eq_attr "braf_branch_p" "yes")
(const_int 6)
(eq (symbol_ref "flag_pic") (const_int 0))
--
kkojima at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |kkojima at gcc dot gnu dot
| |org
Status|UNCONFIRMED |NEW
Ever Confirmed|0 |1
Known to fail| |4.0.4 4.1.2 4.2.0
Known to work| |3.4.6
Last reconfirmed|0000-00-00 00:00:00 |2007-04-20 00:05:05
date| |
Summary|internal compiler error: |[4.1/4.2 Regression] ICE
|Segmentation fault |with -O -fomit-frame-pointer
| |on SH
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31480
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH
2007-04-05 4:02 [Bug c/31480] New: internal compiler error: Segmentation fault gerg at snapgear dot com
2007-04-19 23:05 ` [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH kkojima at gcc dot gnu dot org
@ 2007-04-22 0:18 ` kkojima at gcc dot gnu dot org
2007-05-20 23:25 ` kkojima at gcc dot gnu dot org
` (3 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2007-04-22 0:18 UTC (permalink / raw)
To: gcc-bugs
------- Comment #2 from kkojima at gcc dot gnu dot org 2007-04-22 01:18 -------
Subject: Bug 31480
Author: kkojima
Date: Sun Apr 22 01:18:02 2007
New Revision: 124031
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=124031
Log:
PR target/31480
* config/sh/sh.md (length): Check if prev_nonnote_insn (insn)
is null.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/sh/sh.md
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31480
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH
2007-04-05 4:02 [Bug c/31480] New: internal compiler error: Segmentation fault gerg at snapgear dot com
2007-04-19 23:05 ` [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH kkojima at gcc dot gnu dot org
2007-04-22 0:18 ` kkojima at gcc dot gnu dot org
@ 2007-05-20 23:25 ` kkojima at gcc dot gnu dot org
2007-05-20 23:56 ` kkojima at gcc dot gnu dot org
` (2 subsequent siblings)
5 siblings, 0 replies; 7+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2007-05-20 23:25 UTC (permalink / raw)
To: gcc-bugs
------- Comment #3 from kkojima at gcc dot gnu dot org 2007-05-21 00:25 -------
Subject: Bug 31480
Author: kkojima
Date: Sun May 20 23:25:03 2007
New Revision: 124881
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=124881
Log:
PR target/31480
Backport from mainline.
* config/sh/sh.md (length): Check if prev_nonnote_insn (insn)
is null.
Modified:
branches/gcc-4_2-branch/gcc/ChangeLog
branches/gcc-4_2-branch/gcc/config/sh/sh.md
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31480
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH
2007-04-05 4:02 [Bug c/31480] New: internal compiler error: Segmentation fault gerg at snapgear dot com
` (2 preceding siblings ...)
2007-05-20 23:25 ` kkojima at gcc dot gnu dot org
@ 2007-05-20 23:56 ` kkojima at gcc dot gnu dot org
2007-05-21 0:02 ` kkojima at gcc dot gnu dot org
2007-05-26 3:15 ` pinskia at gcc dot gnu dot org
5 siblings, 0 replies; 7+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2007-05-20 23:56 UTC (permalink / raw)
To: gcc-bugs
------- Comment #4 from kkojima at gcc dot gnu dot org 2007-05-21 00:56 -------
Subject: Bug 31480
Author: kkojima
Date: Sun May 20 23:55:48 2007
New Revision: 124884
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=124884
Log:
PR target/31480
Backport from mainline.
* config/sh/sh.md (length): Check if prev_nonnote_insn (insn)
is null.
Modified:
branches/gcc-4_1-branch/gcc/ChangeLog
branches/gcc-4_1-branch/gcc/config/sh/sh.md
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31480
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH
2007-04-05 4:02 [Bug c/31480] New: internal compiler error: Segmentation fault gerg at snapgear dot com
` (3 preceding siblings ...)
2007-05-20 23:56 ` kkojima at gcc dot gnu dot org
@ 2007-05-21 0:02 ` kkojima at gcc dot gnu dot org
2007-05-26 3:15 ` pinskia at gcc dot gnu dot org
5 siblings, 0 replies; 7+ messages in thread
From: kkojima at gcc dot gnu dot org @ 2007-05-21 0:02 UTC (permalink / raw)
To: gcc-bugs
------- Comment #5 from kkojima at gcc dot gnu dot org 2007-05-21 01:01 -------
Fixed.
--
kkojima at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31480
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH
2007-04-05 4:02 [Bug c/31480] New: internal compiler error: Segmentation fault gerg at snapgear dot com
` (4 preceding siblings ...)
2007-05-21 0:02 ` kkojima at gcc dot gnu dot org
@ 2007-05-26 3:15 ` pinskia at gcc dot gnu dot org
5 siblings, 0 replies; 7+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2007-05-26 3:15 UTC (permalink / raw)
To: gcc-bugs
--
pinskia at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
Known to work|3.4.6 |3.4.6 4.2.1
Target Milestone|--- |4.1.3
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31480
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2007-05-26 3:15 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-04-05 4:02 [Bug c/31480] New: internal compiler error: Segmentation fault gerg at snapgear dot com
2007-04-19 23:05 ` [Bug target/31480] [4.1/4.2 Regression] ICE with -O -fomit-frame-pointer on SH kkojima at gcc dot gnu dot org
2007-04-22 0:18 ` kkojima at gcc dot gnu dot org
2007-05-20 23:25 ` kkojima at gcc dot gnu dot org
2007-05-20 23:56 ` kkojima at gcc dot gnu dot org
2007-05-21 0:02 ` kkojima at gcc dot gnu dot org
2007-05-26 3:15 ` pinskia 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).