[avr,applied] Tag optimization options as such.

Message ID d3bca578-f911-499a-aa74-7edc11870a72@gjlay.de
State New
Headers
Series [avr,applied] Tag optimization options as such. |

Checks

Context Check Description
linaro-tcwg-bot/tcwg_gcc_build--master-aarch64 fail Patch failed to apply
linaro-tcwg-bot/tcwg_gcc_build--master-arm fail Patch failed to apply

Commit Message

Georg-Johann Lay Feb. 26, 2024, 9:06 p.m. UTC
  Some avr options were missing the "Optimization" flag, which
is added by this patch.

Johann

--

AVR: Tag optimization options as "Optimization".

Some options that are pure optimizations where not tagged as such.

gcc/
         * config/avr/avr.opt (mcall-prologues, mrelax, maccumulate-args)
         (mstrict-X): Tag as "Optimization".


  mstrict-X
-Target Var(avr_strict_X) Init(0)
+Target Var(avr_strict_X) Init(0) Optimization
  When accessing RAM, use X as imposed by the hardware, i.e. just use 
pre-decrement, post-increment and indirect addressing with the X 
register.  Without this option, the compiler may assume that there is an 
addressing mode X+const similar to Y+const and Z+const and emit 
instructions to emulate such an addressing mode for X.

  mflmap
  

Patch

diff --git a/gcc/config/avr/avr.opt b/gcc/config/avr/avr.opt
index c9f2b4d2fe5..76530fd0f71 100644
--- a/gcc/config/avr/avr.opt
+++ b/gcc/config/avr/avr.opt
@@ -19,7 +19,7 @@ 
  ; <http://www.gnu.org/licenses/>.

  mcall-prologues
-Target Mask(CALL_PROLOGUES)
+Target Mask(CALL_PROLOGUES) Optimization
  Use subroutines for function prologues and epilogues.

  mmcu=
@@ -79,7 +79,7 @@  Target Mask(TINY_STACK)
  Change only the low 8 bits of the stack pointer.

  mrelax
-Target
+Target Optimization
  Relax branches.

  mpmem-wrap-around
@@ -87,11 +87,11 @@  Target
  Make the linker relaxation machine assume that a program counter 
wrap-around occurs.

  maccumulate-args
-Target Mask(ACCUMULATE_OUTGOING_ARGS)
+Target Mask(ACCUMULATE_OUTGOING_ARGS) Optimization
  Accumulate outgoing function arguments and acquire/release the needed 
stack space for outgoing function arguments in function 
prologue/epilogue.  Without this option, outgoing arguments are pushed 
before calling a function and popped afterwards.  This option can lead 
to reduced code size for functions that call many functions that get 
their arguments on the stack like, for example printf.