As already discussed, this patch removes the -mshort-calls command option from
avr-gcc.
Ok to apply?
If the change is on order, changes to wwwdocs will follow, i.e. deprecate the
option in 4.7 and tell it is removed in the 4.8 caveats.
Johann
* doc/invoke.texi (AVR Options): Remove -mshort-calls.
* config/avr/avr.opt (-mshort-calls): Remove option.
* config/avr/avr.h (AVR_HAVE_JMP_CALL): Don't depend on
TARGET_SHORT_CALLS.
Index: doc/invoke.texi
===================================================================
--- doc/invoke.texi (revision 192131)
+++ doc/invoke.texi (working copy)
@@ -505,7 +505,7 @@ Objective-C and Objective-C++ Dialects}.
@emph{AVR Options}
@gccoptlist{-mmcu=@var{mcu} -maccumulate-args -mbranch-cost=@var{cost} @gol
--mcall-prologues -mint8 -mno-interrupts -mrelax -mshort-calls @gol
+-mcall-prologues -mint8 -mno-interrupts -mrelax @gol
-mstrict-X -mtiny-stack}
@emph{Blackfin Options}
@@ -11291,13 +11291,6 @@ differ from instructions in the assemble
Relaxing must be turned on if linker stubs are needed, see the
section on @code{EIND} and linker stubs below.
-@item -mshort-calls
-@opindex mshort-calls
-Use @code{RCALL}/@code{RJMP} instructions even on devices with
-16@tie{}KiB or more of program memory, i.e.@: on devices that
-have the @code{CALL} and @code{JMP} instructions.
-See also the @code{-mrelax} command line option.
-
@item -msp8
@opindex msp8
Treat the stack pointer register as an 8-bit register,
@@ -11560,7 +11553,7 @@ The device has a hardware multiplier.
@item __AVR_HAVE_JMP_CALL__
The device has the @code{JMP} and @code{CALL} instructions.
This is the case for devices with at least 16@tie{}KiB of program
-memory and if @code{-mshort-calls} is not set.
+memory.
@item __AVR_HAVE_EIJMP_EICALL__
@item __AVR_3_BYTE_PC__
Index: config/avr/avr.opt
===================================================================
--- config/avr/avr.opt (revision 192131)
+++ config/avr/avr.opt (working copy)
@@ -50,10 +50,6 @@ Target Report Undocumented Mask(ORDER_1)
morder2
Target Report Undocumented Mask(ORDER_2)
-mshort-calls
-Target Report Mask(SHORT_CALLS)
-Use rjmp/rcall (limited range) on >8K devices
-
mtiny-stack
Target Report Mask(TINY_STACK)
Change only the low 8 bits of the stack pointer
Index: config/avr/avr.h
===================================================================
--- config/avr/avr.h (revision 192131)
+++ config/avr/avr.h (working copy)
@@ -57,7 +57,7 @@ enum
#define TARGET_CPU_CPP_BUILTINS() avr_cpu_cpp_builtins (pfile)
-#define AVR_HAVE_JMP_CALL (avr_current_arch->have_jmp_call && !TARGET_SHORT_CALLS)
+#define AVR_HAVE_JMP_CALL (avr_current_arch->have_jmp_call)
#define AVR_HAVE_MUL (avr_current_arch->have_mul)
#define AVR_HAVE_MOVW (avr_current_arch->have_movw_lpmx)
#define AVR_HAVE_LPMX (avr_current_arch->have_movw_lpmx)