Committed. * config/rl78/rl78.opt (mrelax): New. * config/rl78/rl78.h (ASM_SPEC): New, pass on -mrelax to gas. * config/rl78/rl78.h (LINK_SPEC): New, pass on -mrelax to ld.
Index: config/rl78/rl78.h =================================================================== --- config/rl78/rl78.h (revision 202542) +++ config/rl78/rl78.h (working copy) @@ -38,12 +38,22 @@ #undef STARTFILE_SPEC #define STARTFILE_SPEC "%{pg:gcrt0.o%s}%{!pg:crt0.o%s} crtbegin.o%s" #undef ENDFILE_SPEC #define ENDFILE_SPEC "crtend.o%s crtn.o%s" +#undef ASM_SPEC +#define ASM_SPEC "\ +%{mrelax:-relax} \ +" + +#undef LINK_SPEC +#define LINK_SPEC "\ +%{mrelax:-relax} \ +" + #undef LIB_SPEC #define LIB_SPEC " \ --start-group \ -lc \ -lsim \ %{fprofile-arcs|fprofile-generate|coverage:-lgcov} \ Index: config/rl78/rl78.opt =================================================================== --- config/rl78/rl78.opt (revision 202542) +++ config/rl78/rl78.opt (working copy) @@ -38,6 +38,10 @@ Enum(rl78_mul_types) String(none) Value( EnumValue Enum(rl78_mul_types) String(rl78) Value(MUL_RL78) EnumValue Enum(rl78_mul_types) String(g13) Value(MUL_G13) + +mrelax +Target +Enable assembler and linker relaxation.