avr.opt revision 1.3
1; Options for the ATMEL AVR port of the compiler. 2 3; Copyright (C) 2005-2013 Free Software Foundation, Inc. 4; 5; This file is part of GCC. 6; 7; GCC is free software; you can redistribute it and/or modify it under 8; the terms of the GNU General Public License as published by the Free 9; Software Foundation; either version 3, or (at your option) any later 10; version. 11; 12; GCC is distributed in the hope that it will be useful, but WITHOUT ANY 13; WARRANTY; without even the implied warranty of MERCHANTABILITY or 14; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 15; for more details. 16; 17; You should have received a copy of the GNU General Public License 18; along with GCC; see the file COPYING3. If not see 19; <http://www.gnu.org/licenses/>. 20 21mcall-prologues 22Target Report Mask(CALL_PROLOGUES) 23Use subroutines for function prologues and epilogues 24 25mmcu= 26Target RejectNegative Joined Var(avr_mcu_index) Init(0) Enum(avr_mcu) 27-mmcu=MCU Select the target MCU 28 29mdeb 30Target Report Undocumented Mask(ALL_DEBUG) 31 32mlog= 33Target RejectNegative Joined Undocumented Var(avr_log_details) 34 35mint8 36Target Report Mask(INT8) 37Use an 8-bit 'int' type 38 39mno-interrupts 40Target Report RejectNegative Mask(NO_INTERRUPTS) 41Change the stack pointer without disabling interrupts 42 43mbranch-cost= 44Target Report Joined RejectNegative UInteger Var(avr_branch_cost) Init(0) 45Set the branch costs for conditional branch instructions. Reasonable values are small, non-negative integers. The default branch cost is 0. 46 47morder1 48Target Report Undocumented Mask(ORDER_1) 49 50morder2 51Target Report Undocumented Mask(ORDER_2) 52 53mtiny-stack 54Target Report Mask(TINY_STACK) 55Change only the low 8 bits of the stack pointer 56 57mrelax 58Target Report 59Relax branches 60 61mpmem-wrap-around 62Target Report 63Make the linker relaxation machine assume that a program counter wrap-around occurs. 64 65maccumulate-args 66Target Report Mask(ACCUMULATE_OUTGOING_ARGS) 67Accumulate outgoing function arguments and acquire/release the needed stack space for outpoing 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. 68 69mstrict-X 70Target Report Var(avr_strict_X) Init(0) 71When 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. 72 73;; For rationale behind -msp8 see explanation in avr.h. 74msp8 75Target Report RejectNegative Var(avr_sp8) Init(0) 76The device has no SPH special function register. This option will be overridden by the compiler driver with the correct setting if presence/absence of SPH can be deduced from -mmcu=MCU. 77 78Waddr-space-convert 79Warning C Report Var(avr_warn_addr_space_convert) Init(0) 80Warn if the address space of an address is changed. 81