This is the mail archive of the gcc@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]

Internal compiler error in targhooks.c: default_secondary_reload (ARM/Thumb)


I'm getting an internal compiler error on the following test program:

void func(int a, int b, int c, int d, int e, int f, int g, short int h)
{
	assert(a < 100);
	assert(b < 100);
	assert(c < 100);
	assert(d < 100);
	assert(e < 100);
	assert(f < 100);
	assert(g < 100);
	assert((-1000 < h) && (h < 0));
}

Command line and output:

$ arm-none-eabi-gcc -mthumb -O2 -c -o test.o test.c
test.c: In function 'func':
test.c:11:1: internal compiler error: in default_secondary_reload, at
targhooks.c:769
Please submit a full bug report,
with preprocessed source if appropriate.
See <https://support.codesourcery.com/GNUToolchain/> for instructions.


This is running on Windows XP.  Version information:

$ arm-none-eabi-gcc --version
arm-none-eabi-gcc.exe (Sourcery G++ Lite 2010.09-51) 4.5.1
Copyright (C) 2010 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

>From playing around with this, it looks to be some kind of register
allocation problem--it needs to have lots of variables active at once,
and the error doesn't occur unless I'm compiling for Thumb.
Unfortunately I don't have a way to test this on tips, so I can't tell
if it's been fixed there or not.  Any information on this would be
appreciated.

Thanks,
Matt


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