This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug optimization/12292] New: internal compiler error: RTL check: expected code `const_int', have `reg' in make_field_assignment, at combine.c:7815


PLEASE REPLY TO gcc-bugzilla@gcc.gnu.org ONLY, *NOT* gcc-bugs@gcc.gnu.org.

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

           Summary: internal compiler error: RTL check: expected code
                    `const_int', have `reg' in make_field_assignment, at
                    combine.c:7815
           Product: gcc
           Version: 3.3.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: optimization
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: marky at model dot com
                CC: gcc-bugs at gcc dot gnu dot org
 GCC build triplet: x86_64-suse-linux-gnu
  GCC host triplet: x86_64-suse-linux-gnu
GCC target triplet: x86_64-suse-linux-gnu

gcc 3.3.1 internal compiler error on the following short test case.

% gcc -c bug.c -O
bug.c: In function `bug':
bug.c:35: internal compiler error: RTL check: expected code `const_int', have
`reg' in make_field_assignment, at combine.c:7815

--- bug.c ---
typedef struct {
	char flags;
} rec;

extern char vec[10];

int bug(rec *c)
{
	char *p = 0;
	int v, t, f;

	for (;;) {
		switch (*p++) {
		case 0:
			t = *p++;
			f = *p++;
			v = vec[*p++];
			if (v == 1) {
				if (f)
					c->flags |= (1 << t);
			} else {
				if (!f)
					c->flags &= ~(1 << t);
			}
			break;
		case 1:
			v = vec[*p++];
			break;
		case 2:
			((void) ((p == 0) ? 0 : (__assert_fail ("p == 0", "bug.c", 31,
__PRETTY_FUNCTION__), 0)));
			break;
		}
	}
	return 0;
}
--- end bug.c ---

gcc build configuration:
configure --prefix=/usr/local --host=x86_64-suse-linux-gnu --disable-nls
--enable-threads=posix --enable-clocale=gnu --enable-__cxa_atexit
--enable-shared --enable-languages=c,c++,f77,objc,treelang,java,f77
--enable-checking=misc,tree,rtl,gc,rtlflag --with-system-zlib


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]