public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "lucier at math dot purdue dot edu" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/13674] New: ICE in reload_cse_simplify_operands, at postreload.c:378 on PPC64
Date: Tue, 13 Jan 2004 20:00:00 -0000	[thread overview]
Message-ID: <20040113200005.13674.lucier@math.purdue.edu> (raw)

With this compiler:

[dhcp10:~/programs/gambc40b4] lucier% gcc -v
Reading specs from /pkgs/gcc-3.4/lib/gcc/powerpc-apple-darwin7.2.0/3.4.0/specs
Configured with: ../configure --prefix=/pkgs/gcc-3.4
Thread model: posix
gcc version 3.4.0 20040113 (experimental)

and the following input, you get the following ICE:

[dhcp10:~/programs/gambc40b4] lucier% gcc -I../include -I. -no-cpp-precomp -Wall
-W -Wno-unused -O1 -fno-math-errno -fschedule-insns2 -fno-trapping-math
-fno-strict-aliasing -fomit-frame-pointer -fPIC -fno-common -mcpu=G5 -save-temps
-DHAVE_CONFIG_H -D___PRIMAL -D___LIBRARY -D___GAMBCDIR=\"/usr/local/\" testppc.i
gcc: unrecognized option `-no-cpp-precomp'
testppc.i: In function `___H__23__23_integer_3f_':
testppc.i:69: error: insn does not satisfy its constraints:
(insn 360 307 97 8 (set (reg:DF 0 r0)
        (mem:DF (plus:SI (reg/v:SI 30 r30 [orig:125 ___r1 ] [125])
                (const_int 3 [0x3])) [0 S8 A64])) 318 {*movdf_hardfloat64} (nil)
    (nil))
testppc.i:69: internal compiler error: in reload_cse_simplify_operands, at
postreload.c:378

/* test file */

static int      ___lp;

typedef struct ___processor_state_struct {
	int             r[5];
	int             pc;
	int             temp1;
	int             na;
	int             handler_wrong_nargs;
}               ___processor_state_struct, *___processor_state;

typedef int     (*___host) (___processor_state);

typedef struct ___label_struct {
	void           *host_label;
	___host         host;
}               ___label_struct;

extern int      ___isfinite
                (double x);

extern double   floor(double);

static int 
___H__23__23_integer_3f_(___processor_state ___ps)
{
	register int    ___pc, ___start, ___temp;
	register unsigned long long ___temp64;
	register int    ___r0;
	register int    ___r1;
	double          ___F64V1;
	double          ___F64V2;
	static void    *___hlbl_tbl[] = {
		0,
		&&___L0__23__23_integer_3f_,
	0};
	if (___ps == 0)
		return (int) ___hlbl_tbl;
	___r0 = ___ps->r[0];
	___r1 = ___ps->r[1];
	___start = ___lp + ((137) * 4 * 4);
	___pc = ___ps->pc;
	goto *((___label_struct *) (___pc - 1))->host_label;
___L0__23__23_integer_3f_:
	if (___ps->na == 1) {
	} else {
		___ps->temp1 = ___start + ((137 - 137 + 0) * 4 * 4); {{
				___pc = ___ps->handler_wrong_nargs;
				goto ___jumpext;
		}
		}
	}
___L__23__23_integer_3f_:
	if (((___r1 & ((1 << 2) - 1)) == (0))) {
		goto ___L3__23__23_integer_3f_;
	}
	if (!(((___temp = (___r1)) & ((1 << 2) - 1)) == 1 && ((((*((int *) ((___temp) -
(1))))) & (((1 << 5) - 1) << 3)) == (((30)) << 3)))) {
		goto ___L1__23__23_integer_3f_;
	}
	___F64V1 = (*((double *) ((((void *) ((___r1) - (1))) + 4))));
	if (!___isfinite(___F64V1)) {
		goto ___L2__23__23_integer_3f_;
	}
	___F64V1 = (*((double *) ((((void *) ((___r1) - (1))) + 4))));
	___F64V2 = floor(___F64V1);
	___r1 = (((___F64V1 == ___F64V2)) ? ((((int) (-2)) << 2) + 2) : ((((int) (-1))
<< 2) + 2));
	{{
			void           *___host_label;
			___pc = ___r0;
			___host_label = ((___label_struct *) (___pc - 1))->host_label;
			if (((___label_struct *) (___pc - 1))->host == ___H__23__23_integer_3f_)
				goto *___host_label;
			goto ___jumpext;
	}
	}
___L1__23__23_integer_3f_:
	if (!((___r1 & ((1 << 2) - 1)) == (1))) {
		goto ___L2__23__23_integer_3f_;
	}
	___r1 = ((((*((int *) ((___r1) - (1)))) & (((1 << 5) - 1) << 3)) >> (3 - 2)));
	if ((___r1 == (((int) (31L)) << 2))) {
		goto ___L3__23__23_integer_3f_;
	}
	if ((___r1 == (((int) (2L)) << 2))) {
		goto ___L2__23__23_integer_3f_;
	}
	if (!(___r1 == (((int) (3L)) << 2))) {
		goto ___L2__23__23_integer_3f_;
	}
___L2__23__23_integer_3f_:
	___r1 = (((((int) (-1)) << 2) + 2));
	{{
			void           *___host_label;
			___pc = ___r0;
			___host_label = ((___label_struct *) (___pc - 1))->host_label;
			if (((___label_struct *) (___pc - 1))->host == ___H__23__23_integer_3f_)
				goto *___host_label;
			goto ___jumpext;
	}
	}
___L3__23__23_integer_3f_:
	___r1 = (((((int) (-2)) << 2) + 2));
	{{
			void           *___host_label;
			___pc = ___r0;
			___host_label = ((___label_struct *) (___pc - 1))->host_label;
			if (((___label_struct *) (___pc - 1))->host == ___H__23__23_integer_3f_)
				goto *___host_label;
			goto ___jumpext;
	}
	}
___jumpext:
	___ps->pc = ___pc;
	___ps->r[1] = ___r1;
	return ___pc;
}

-- 
           Summary: ICE in reload_cse_simplify_operands, at postreload.c:378
                    on PPC64
           Product: gcc
           Version: 3.4.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: lucier at math dot purdue dot edu
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: powerpc-apple-darwin7.2.0
  GCC host triplet: powerpc-apple-darwin7.2.0
GCC target triplet: powerpc-apple-darwin7.2.0


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


             reply	other threads:[~2004-01-13 20:00 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-01-13 20:00 lucier at math dot purdue dot edu [this message]
2004-01-15 19:51 ` [Bug optimization/13674] " pinskia at gcc dot gnu dot org
2004-01-15 19:56 ` pinskia at gcc dot gnu dot org
2004-01-15 23:32 ` lucier at math dot purdue dot edu
2004-01-21  4:28 ` dhazeghi at yahoo dot com
2004-01-21  4:32 ` pinskia at gcc dot gnu dot org
2004-01-21  4:52 ` dhazeghi at yahoo dot com
2004-01-21 21:02 ` pinskia at gcc dot gnu dot org
2004-01-23 22:07 ` cvs-commit at gcc dot gnu dot org
2004-01-24 18:42 ` cvs-commit at gcc dot gnu dot org
2004-01-25  2:26 ` pinskia at gcc dot gnu dot org
2004-01-27 13:10 ` cvs-commit at gcc dot gnu dot org
2004-03-10 14:59 ` [Bug optimization/13674] [3.5 Regression] " pinskia at gcc dot gnu dot org
2004-06-11  0:43 ` [Bug rtl-optimization/13674] " pinskia at gcc dot gnu dot org
2004-07-12 14:33 ` pinskia at gcc dot gnu dot org
2004-10-21  3:41 ` [Bug rtl-optimization/13674] [4.0 " pinskia at gcc dot gnu dot org
2005-01-07  3:30 ` dje at gcc dot gnu dot org
2005-01-07 15:30 ` cvs-commit at gcc dot gnu dot org
2005-01-07 15:40 ` dje at gcc dot gnu dot org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20040113200005.13674.lucier@math.purdue.edu \
    --to=gcc-bugzilla@gcc.gnu.org \
    --cc=gcc-bugs@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).