[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [MiNT] GCC 4.2.2 - Keith's Latest Progress (or lack thereof)



Alan Hourihane a écrit :
On Tue, 2008-01-22 at 13:57 +0100, Olivier Landemarre wrote:
Alan Hourihane a écrit :
On Sun, 2008-01-20 at 16:34 -0500, Keith Scroggins wrote:
Hello all,

I'm currently building GCC 4.2.2 under AranyM, still got a ways to go.

Otherwise, I built a Canadian Cross build with Vincent's latest tools and packages, and my results were the same it seems, the C compiler seems to work on the small items I test, and the C++ compiler does not seem to work on what I have tested, creating executables that SIGILL (illegal instruction).
Ugh. Same here now.

Since updating GCC & binutils with Vincent's recent updates, the
FreeMiNT kernel I build is now generating lots of problems. I'm not sure
what's going on either yet. I'll see if I can backtrack on some of the
binaries as it used to work.

Alan.

Hello

When I compil kernel with gcc 4 for coldfire, I have find some trouble, one possible trouble is when a Signal occur, when it occur Mint kernel modify stack position. For coldfire there was not enough stack put here, I thought it come with 68K emulator even if most of Mint kernel not need it because it was native, but perhaps it's link to GCC 4 that need perhaps more stack. You can try find where I have done this patch (search for #ifdef COLDFIRE and try replace the good one by #if 1, I don't remember in wich file I have done this patch)

I don't think so. As it used to work before Vincent's recent changes.

I took a look at your code and it doesn't make sense....

# ifdef COLDFIRE
    newstack = ((unsigned long) &newcurrent) - 0x40UL - 12UL - 0x100UL;
# else
    newstack = ((unsigned long) &newcurrent) - 0x40UL - 12UL - 0x100UL;
# endif

Alan.

I just look in CVS in sig_mach.c, this is not me that do that
when I put it, it was

# ifdef COLDFIRE
	newstack = ((unsigned long) &newcurrent) - 0x40L - 12L - 0x100L;
# else
	newstack = ((unsigned long) &newcurrent) - 0x40L - 12L;
# endif	

and OZK have commit this change probably for test and as it work he not change this, so probably someone should simply remove ifdef now, and so it not your problem.

Olivier