This is the mail archive of the
java@gcc.gnu.org
mailing list for the Java project.
Re: libgcj failure on ppclinux?
Hi,
I haven't heard back yet from Mark Mitchell, but if someone wants to try
to reproduce it I have the attached little test case that was extracted
from the preprocessed posix-threads.cc file.
mark@multatuli:/tmp$ /home/mark/src/gcc33/obj/gcc/xgcc
-B/home/mark/src/gcc33/obj/gcc test-case.cc
test-case.cc: In function `void _Jv_ThreadRegister()':
test-case.cc:20: internal compiler error: in int_mode_for_mode, at
stor-layout.c:295
It compiles on x86, but not on powerpc.
Cheers,
Mark
extern volatile
struct self_cache_entry {
unsigned int high_sp_bits;
unsigned long int self;
} _Jv_self_cache[];
void
_Jv_ThreadRegister ()
{
int dummy;
int low_index = (((unsigned long)(&dummy) >> 19) & (1024 -1)) + (-16);
int high_index = (((unsigned long)(&dummy) >> 19) & (1024 -1)) + 0;
for (int i = low_index; i <= high_index; ++i)
{
int current_index = i;
if (current_index < 0)
current_index += 1024;
if (current_index >= 1024)
current_index -= 1024;
_Jv_self_cache[current_index].high_sp_bits = ((unsigned int)(-1));
}
}