Am 08.11.2010 um 23:03 schrieb Alexander Graf:
On 08.11.2010, at 22:48, Andreas Färber wrote:
Am 08.11.2010 um 10:34 schrieb Mark Cave-Ayland:
Andreas Färber wrote:
Since r945 everything except for the trampoline issue should be in SVN.
Cool! :)
Ah, no! Forgot about the exception handlers (preamble, epilogue). : ( I have local patches that #ifdef the whole definitions and provide alternative ones for ppc64. But I'd rather supply a 2-step patch to drop the template macros and use #ifdef'ery inside the macro definition for ppc64/ppc differences, given that long-term we won't need the second version.
Are you sure you need that? Most of the stuff should be generic. Please take a look at Linux's PPC_LL macro for example. The stack layout varies slightly, but that should also be reasonably easy to catch.
Problematic parts are the ULONG_SIZE comparisons for the number of registers that we can't #ifdef away inside an CPP macro, plus the m*msr and the trailing/leading stack manipulation (16 in SVR4 vs. 48 in PowerOpen ABI). Also rfid, both here and for the FPU vector.
Note that the other ppc targets don't use assembler macros, just preprocessor macros, so we have kind of a double-macro situation. ;)
Andreas