This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Infamous mips offs > 16 bits problem.
- To: egcs-bugs at egcs dot cygnus dot com
- Subject: Infamous mips offs > 16 bits problem.
- From: Per Fogelstrom <pefo at opsycon dot se>
- Date: Thu, 25 Feb 1999 11:15:42 +0100 (CET)
It's evident that nothing yet has been done about the expr.c problem
which plauges mips versions of egcs. Here is an example on how to
trig it:
typedef unsigned short u_short;
typedef long code_int;
typedef long count_int;
struct s_zstate {
count_int zs_htab [69001 ];
u_short zs_codetab [69001 ];
code_int zs_free_ent;
};
int
zwrite(cookie, wbp, num)
void *cookie;
const char *wbp;
int num;
{
register code_int i = num;
struct s_zstate *zs;
zs->zs_codetab[ i ] = zs->zs_free_ent++;
}
Compiler output:
zopen.c: In function `zwrite':
zopen.c:22: internal error--unrecognizable insn:
(insn 24 22 26 (set (reg:SI 85)
(plus:SI (reg:SI 82)
(const_int 276004))) -1 (nil)
(nil))
/usr/ports/lang/egcs-snapshot/work/egcs-19990221/gcc/toplev.c:1445: Internal compiler error in function fatal_insn
Environment data:
gcc version egcs-2.93.09 19990221 (gcc2 ss-980929 experimental)
OpenBSD 2.4+ arc (Mips).
egcc -c zwrite.c
I belive this problem have been reported by NetBSD developers as well.
Regards,