Am 17.10.2010 um 15:45 schrieb Blue Swirl:
On Sun, Oct 17, 2010 at 1:20 PM, Andreas Färber <andreas.faerber@web.de
wrote: Am 17.10.2010 um 14:16 schrieb Alexander Graf:
On 17.10.2010, at 14:05, Andreas Färber wrote:
Otherwise GCC 4.2.4 complains that panic() marked noreturn does return.
Thanks, that one hit me too and I didn't know how to fix it properly :). Applied.
Thanks. In case you're playing with ppc64 I'm attaching my current diff. It made it compile but it hangs both ppc and ppc64, no time to investigate further right now.
Most problems were caused by the assumption that a conversion between ucell und void* is possible; I added (unsigned long) casts or reused the cell2pointer/pointer2cell macros.
Those should be merged with kernel/cross.h ones and used everywhere.
Any particular wishes how? Adding the include path for cross.h everywhere would have required to re-run switch-arch and rebuild everything, so I avoided it. Should the macros be moved into include/ kernel/stack.h alongside PUSH/POP maybe?
I also played with a new addr_t type as
Please use the standard name intptr_t and remove the casts where possible:
unsigned char *dest = (unsigned char *)POP();
unsigned char *dest = cell2pointer(POP());
Thanks for the suggestion!
Andreas