This is not a patch against GCC trunk. Please try again with a patch that is diffed against current GCC SVN trunk and that builds cleanly (including building with --enable-werror-always, starting from a native bootstrapped build of current trunk as the compiler you use to compile your cross compiler). For example, it includes the obsolete poisoned target macros TARGET_VERSION and IRA_COVER_CLASSES, and the handle_option hook has not been updated for the interface changes to avoid global state in such hooks. Furthermore, the code has at least one old-style function definition (notice_update_cc), which should have been caught by the warnings in the build. Beyond anything caught by warnings, if the code defines any target macros that are in the process of being converted to hooks (default hook definitions in targhooks.c that use the macro, but no code elsewhere in the compiler using the macro, only defining it) then please convert the target to define the hooks directly and not the obsolescent macros. FUNCTION_VALUE is one example of an obsolescent macro still defined by some ports, but that new ports should not define. GO_IF_LEGITIMATE_ADDRESS is another.
Please see the GNU Coding Standards regarding proper formatting of diagnostic messages (don't start with an uppercase letter or end with "."). The toplevel changes are incorrect. See my recent cleanups. There is no such target as target-mudflap, and there is generic code to handle target-libmudflap depending on target OS so the cases based on target architecture shouldn't care about that. Furthermore, a case for cr16-uclinux can never match, because config.sub maps that to cr16-unknown-elf. If you want to do any toplevel changes in future relating to a GDB port for uClinux (say) then you'll need to adjust config.sub in config.git first. Remove .file directives from your .S files unless you're really sure they are needed and correct. See my 2008-07-02 patch. The libstdc++-v3 changes also seem suspicious. Newlib-using ports shouldn't need changes to crossconfig.m4 because that code isn't used for them; see the if test "x${with_newlib}" = "xyes"; then conditional in configure.ac. And the comment "# SiTel" makes no sense to me; comments should be full English sentences. I'm still not satisfied with the forked version of the unwind code. Please show a diff of what the minimum changes would be to the target-independent unwind-dw2-* files for CR16 to work with those files based on behavior in those files being conditioned as needed on target macros defined by CR16; we should only use forked files if such changes to condition the generic ones are unmaintainably messy. -- Joseph S. Myers jos...@codesourcery.com