annotate gcc/config/avr/avr.opt @ 131:84e7813d76e9

gcc-8.2
author mir3636
date Thu, 25 Oct 2018 07:37:49 +0900
parents 04ced10e8804
children 1830386684a0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 ; Options for the ATMEL AVR port of the compiler.
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
2
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
3 ; Copyright (C) 2005-2018 Free Software Foundation, Inc.
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
4 ;
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 ; This file is part of GCC.
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 ;
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 ; GCC is free software; you can redistribute it and/or modify it under
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 ; the terms of the GNU General Public License as published by the Free
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 ; Software Foundation; either version 3, or (at your option) any later
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 ; version.
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 ;
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
12 ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 ; WARRANTY; without even the implied warranty of MERCHANTABILITY or
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
15 ; for more details.
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
16 ;
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 ; You should have received a copy of the GNU General Public License
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 ; along with GCC; see the file COPYING3. If not see
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
19 ; <http://www.gnu.org/licenses/>.
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
20
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
21 mcall-prologues
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
22 Target Report Mask(CALL_PROLOGUES)
111
kono
parents: 67
diff changeset
23 Use subroutines for function prologues and epilogues.
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
24
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 mmcu=
111
kono
parents: 67
diff changeset
26 Target RejectNegative Joined Var(avr_mmcu) MissingArgError(missing device or architecture after %qs)
kono
parents: 67
diff changeset
27 -mmcu=MCU Select the target MCU.
kono
parents: 67
diff changeset
28
kono
parents: 67
diff changeset
29 mgas-isr-prologues
kono
parents: 67
diff changeset
30 Target Report Var(avr_gasisr_prologues) UInteger Init(0)
kono
parents: 67
diff changeset
31 Allow usage of __gcc_isr pseudo instructions in ISR prologues and epilogues.
kono
parents: 67
diff changeset
32
kono
parents: 67
diff changeset
33 mn-flash=
kono
parents: 67
diff changeset
34 Target RejectNegative Joined Var(avr_n_flash) UInteger Init(-1)
kono
parents: 67
diff changeset
35 Set the number of 64 KiB flash segments.
kono
parents: 67
diff changeset
36
kono
parents: 67
diff changeset
37 mskip-bug
kono
parents: 67
diff changeset
38 Target Report Mask(SKIP_BUG)
kono
parents: 67
diff changeset
39 Indicate presence of a processor erratum.
kono
parents: 67
diff changeset
40
kono
parents: 67
diff changeset
41 mrmw
kono
parents: 67
diff changeset
42 Target Report Mask(RMW)
kono
parents: 67
diff changeset
43 Enable Read-Modify-Write (RMW) instructions support/use.
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
44
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
45 mdeb
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
46 Target Report Undocumented Mask(ALL_DEBUG)
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
47
111
kono
parents: 67
diff changeset
48 mlog=
kono
parents: 67
diff changeset
49 Target RejectNegative Joined Undocumented Var(avr_log_details)
kono
parents: 67
diff changeset
50
kono
parents: 67
diff changeset
51 mshort-calls
kono
parents: 67
diff changeset
52 Target Report RejectNegative Mask(SHORT_CALLS)
kono
parents: 67
diff changeset
53 Use RJMP / RCALL even though CALL / JMP are available.
kono
parents: 67
diff changeset
54
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
55 mint8
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
56 Target Report Mask(INT8)
111
kono
parents: 67
diff changeset
57 Use an 8-bit 'int' type.
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
58
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
59 mno-interrupts
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
60 Target Report RejectNegative Mask(NO_INTERRUPTS)
111
kono
parents: 67
diff changeset
61 Change the stack pointer without disabling interrupts.
kono
parents: 67
diff changeset
62
kono
parents: 67
diff changeset
63 mbranch-cost=
kono
parents: 67
diff changeset
64 Target Report Joined RejectNegative UInteger Var(avr_branch_cost) Init(0)
kono
parents: 67
diff changeset
65 Set the branch costs for conditional branch instructions. Reasonable values are small, non-negative integers. The default branch cost is 0.
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
66
131
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
67 mmain-is-OS_task
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
68 Target Report Mask(MAIN_IS_OS_TASK)
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
69 Treat main as if it had attribute OS_task.
84e7813d76e9 gcc-8.2
mir3636
parents: 111
diff changeset
70
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
71 morder1
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
72 Target Report Undocumented Mask(ORDER_1)
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
73
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
74 morder2
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
75 Target Report Undocumented Mask(ORDER_2)
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
76
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
77 mtiny-stack
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
78 Target Report Mask(TINY_STACK)
111
kono
parents: 67
diff changeset
79 Change only the low 8 bits of the stack pointer.
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
80
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
81 mrelax
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
82 Target Report
111
kono
parents: 67
diff changeset
83 Relax branches.
0
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
84
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
85 mpmem-wrap-around
a06113de4d67 first commit
kent <kent@cr.ie.u-ryukyu.ac.jp>
parents:
diff changeset
86 Target Report
67
f6334be47118 update gcc from gcc-4.6-20100522 to gcc-4.6-20110318
nobuyasu <dimolto@cr.ie.u-ryukyu.ac.jp>
parents: 55
diff changeset
87 Make the linker relaxation machine assume that a program counter wrap-around occurs.
111
kono
parents: 67
diff changeset
88
kono
parents: 67
diff changeset
89 maccumulate-args
kono
parents: 67
diff changeset
90 Target Report Mask(ACCUMULATE_OUTGOING_ARGS)
kono
parents: 67
diff changeset
91 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.
kono
parents: 67
diff changeset
92
kono
parents: 67
diff changeset
93 mstrict-X
kono
parents: 67
diff changeset
94 Target Report Var(avr_strict_X) Init(0)
kono
parents: 67
diff changeset
95 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.
kono
parents: 67
diff changeset
96
kono
parents: 67
diff changeset
97 ;; For rationale behind -msp8 see explanation in avr.h.
kono
parents: 67
diff changeset
98 msp8
kono
parents: 67
diff changeset
99 Target Report RejectNegative Var(avr_sp8) Init(0)
kono
parents: 67
diff changeset
100 The 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.
kono
parents: 67
diff changeset
101
kono
parents: 67
diff changeset
102 Waddr-space-convert
kono
parents: 67
diff changeset
103 Warning C Report Var(avr_warn_addr_space_convert) Init(0)
kono
parents: 67
diff changeset
104 Warn if the address space of an address is changed.
kono
parents: 67
diff changeset
105
kono
parents: 67
diff changeset
106 Wmisspelled-isr
kono
parents: 67
diff changeset
107 Warning C C++ Report Var(avr_warn_misspelled_isr) Init(1)
kono
parents: 67
diff changeset
108 Warn if the ISR is misspelled, i.e. without __vector prefix. Enabled by default.
kono
parents: 67
diff changeset
109
kono
parents: 67
diff changeset
110 mfract-convert-truncate
kono
parents: 67
diff changeset
111 Target Report Mask(FRACT_CONV_TRUNC)
kono
parents: 67
diff changeset
112 Allow to use truncation instead of rounding towards zero for fractional fixed-point types.
kono
parents: 67
diff changeset
113
kono
parents: 67
diff changeset
114 mabsdata
kono
parents: 67
diff changeset
115 Target Report Mask(ABSDATA)
kono
parents: 67
diff changeset
116 Assume that all data in static storage can be accessed by LDS / STS. This option is only useful for reduced Tiny devices.
kono
parents: 67
diff changeset
117
kono
parents: 67
diff changeset
118 nodevicelib
kono
parents: 67
diff changeset
119 Driver Target Report RejectNegative
kono
parents: 67
diff changeset
120 Do not link against the device-specific library lib<MCU>.a.