Hello Michael,
On 12 Sep 2012, at 23:43, Michael Meissner wrote:
> It would be nice to know if this doesn't break the other ppc
> environments (AIX, Darwin) before I commit it. Are there any problems with
> this patch?
For powerpc-darwin9, there are a couple of issues which I've hacked around to
get bootstrap to complete.
1. In rs6000.h
Where there are TARGET_XXX macros set to zero and guarded by config-time
HAVE_AS_YYY (e.g. TARGET_POPCNTD, HAVE_AS_POPCNTD)
This causes an error when the #define TARGET_POPCNTD OPTION_POPCNTD is parsed.
For the sake of making progress, I just worked around these by moving the
guarded defines to where the OPTION_XXXs are equated -- I.E:
#ifndef HAVE_AS_XXX
#define TARGET_XXX 0
#else
#define TARGET_XXX OPTION_XXX
#endif
likely, that's not the Right Solution, but it allowed me to get to the next
step -
2. rs6000_misc_flags{,explicit} and rs6000_debug_flags{,explicit} are declared
as HOST_WIDE_INT which is 'long long' for this target. This causes fails on
lines 1841, 1842, 1844 and 1846 in rs6000.c because of mismatched format
specifier and argument. I just worked around this with a temporary definition
of a suitable format descriptor.
With these two hacks, bootstrap completes for all langs including Java, Ada and
ObjC++.
I haven't done any formal reg-tests yet, but a selection of checks across the
board look reasonable so far.
If there is any other specific input that would be useful let me know - these
older platforms are somewhat slow for the full build/test cycle.
cheers
Iain