]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/avr/avr.opt
Update copyright years.
[thirdparty/gcc.git] / gcc / config / avr / avr.opt
CommitLineData
5a41973c
RS
1; Options for the ATMEL AVR port of the compiler.
2
a5544970 3; Copyright (C) 2005-2019 Free Software Foundation, Inc.
5a41973c
RS
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
2f83c7d6 9; Software Foundation; either version 3, or (at your option) any later
5a41973c
RS
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
2f83c7d6
NC
18; along with GCC; see the file COPYING3. If not see
19; <http://www.gnu.org/licenses/>.
5a41973c
RS
20
21mcall-prologues
22Target Report Mask(CALL_PROLOGUES)
a7b2e184 23Use subroutines for function prologues and epilogues.
5a41973c
RS
24
25mmcu=
4a2caf6c 26Target RejectNegative Joined Var(avr_mmcu) MissingArgError(missing device or architecture after %qs)
a7b2e184 27-mmcu=MCU Select the target MCU.
5a41973c 28
63866e04 29mgas-isr-prologues
7f2d3c4f 30Target Report Var(avr_gasisr_prologues) UInteger Init(0)
63866e04
GJL
31Allow usage of __gcc_isr pseudo instructions in ISR prologues and epilogues.
32
f9d29866
JR
33mn-flash=
34Target RejectNegative Joined Var(avr_n_flash) UInteger Init(-1)
a7b2e184 35Set the number of 64 KiB flash segments.
f9d29866
JR
36
37mskip-bug
38Target Report Mask(SKIP_BUG)
a7b2e184 39Indicate presence of a processor erratum.
f9d29866
JR
40
41mrmw
42Target Report Mask(RMW)
a7b2e184 43Enable Read-Modify-Write (RMW) instructions support/use.
f9d29866 44
5a41973c
RS
45mdeb
46Target Report Undocumented Mask(ALL_DEBUG)
47
6c7dfafe
GJL
48mlog=
49Target RejectNegative Joined Undocumented Var(avr_log_details)
50
3266ddb3
GJL
51mshort-calls
52Target Report RejectNegative Mask(SHORT_CALLS)
53Use RJMP / RCALL even though CALL / JMP are available.
54
5a41973c
RS
55mint8
56Target Report Mask(INT8)
a7b2e184 57Use an 8-bit 'int' type.
5a41973c
RS
58
59mno-interrupts
60Target Report RejectNegative Mask(NO_INTERRUPTS)
a7b2e184 61Change the stack pointer without disabling interrupts.
5a41973c 62
f1f59bc7
GJL
63mbranch-cost=
64Target Report Joined RejectNegative UInteger Var(avr_branch_cost) Init(0)
65Set the branch costs for conditional branch instructions. Reasonable values are small, non-negative integers. The default branch cost is 0.
66
dcbe9170
GJL
67mmain-is-OS_task
68Target Report Mask(MAIN_IS_OS_TASK)
69Treat main as if it had attribute OS_task.
70
5a41973c
RS
71morder1
72Target Report Undocumented Mask(ORDER_1)
73
74morder2
75Target Report Undocumented Mask(ORDER_2)
76
5a41973c
RS
77mtiny-stack
78Target Report Mask(TINY_STACK)
a7b2e184 79Change only the low 8 bits of the stack pointer.
2e152e16
AS
80
81mrelax
82Target Report
a7b2e184 83Relax branches.
2e152e16
AS
84
85mpmem-wrap-around
86Target Report
d8a07487 87Make the linker relaxation machine assume that a program counter wrap-around occurs.
e8ac5ac9 88
d702f362
GJL
89maccumulate-args
90Target Report Mask(ACCUMULATE_OUTGOING_ARGS)
bd2c6270 91Accumulate 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.
d702f362 92
e8ac5ac9
GJL
93mstrict-X
94Target Report Var(avr_strict_X) Init(0)
95When 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.
7fd6378e
GJL
96
97;; For rationale behind -msp8 see explanation in avr.h.
98msp8
621dfb1e
GJL
99Target Report RejectNegative Var(avr_sp8) Init(0)
100The 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.
f22e3c85
GJL
101
102Waddr-space-convert
103Warning C Report Var(avr_warn_addr_space_convert) Init(0)
283045c0 104Warn if the address space of an address is changed.
67518c93 105
22fba352
PS
106Wmisspelled-isr
107Warning C C++ Report Var(avr_warn_misspelled_isr) Init(1)
108Warn if the ISR is misspelled, i.e. without __vector prefix. Enabled by default.
109
67518c93
JR
110mfract-convert-truncate
111Target Report Mask(FRACT_CONV_TRUNC)
0f0f4f91 112Allow to use truncation instead of rounding towards zero for fractional fixed-point types.
076d86f3 113
d97cca4a
GJL
114mabsdata
115Target Report Mask(ABSDATA)
116Assume that all data in static storage can be accessed by LDS / STS. This option is only useful for reduced Tiny devices.
117
076d86f3
GJL
118nodevicelib
119Driver Target Report RejectNegative
a7b2e184 120Do not link against the device-specific library lib<MCU>.a.