At some point between 4.0 and 4.1 the mechanism for option handling was changed over to the new style using the .opt file but the default setting of quickcall seems to have been lost in the process.
adding the following 2 lines into h8300.c #undef TARGET_DEFAULT_TARGET_FLAGS #define TARGET_DEFAULT_TARGET_FLAGS (MASK_QUICKCALL) immediately before the line struct gcc_target targetm = TARGET_INITIALIZER; appears to fix the problem allthough I am not sure that this is completely the correct way to do this. -- Summary: Incorrect default options Product: gcc Version: 4.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mlist at ml-solutions dot co dot uk GCC host triplet: i686-pc-cygwin GCC target triplet: h8300-hitachi-elf http://gcc.gnu.org/bugzilla/show_bug.cgi?id=24826