• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/toolchains/hndtools-armeabi-2011.09/share/doc/arm-arm-none-eabi/html/gcc/
1<html lang="en">
2<head>
3<title>V850 Options - Using the GNU Compiler Collection (GCC)</title>
4<meta http-equiv="Content-Type" content="text/html">
5<meta name="description" content="Using the GNU Compiler Collection (GCC)">
6<meta name="generator" content="makeinfo 4.13">
7<link title="Top" rel="start" href="index.html#Top">
8<link rel="up" href="Submodel-Options.html#Submodel-Options" title="Submodel Options">
9<link rel="prev" href="System-V-Options.html#System-V-Options" title="System V Options">
10<link rel="next" href="VAX-Options.html#VAX-Options" title="VAX Options">
11<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
12<!--
13Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997,
141998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
152010 Free Software Foundation, Inc.
16
17Permission is granted to copy, distribute and/or modify this document
18under the terms of the GNU Free Documentation License, Version 1.3 or
19any later version published by the Free Software Foundation; with the
20Invariant Sections being ``Funding Free Software'', the Front-Cover
21Texts being (a) (see below), and with the Back-Cover Texts being (b)
22(see below).  A copy of the license is included in the section entitled
23``GNU Free Documentation License''.
24
25(a) The FSF's Front-Cover Text is:
26
27     A GNU Manual
28
29(b) The FSF's Back-Cover Text is:
30
31     You have freedom to copy and modify this GNU Manual, like GNU
32     software.  Copies published by the Free Software Foundation raise
33     funds for GNU development.-->
34<meta http-equiv="Content-Style-Type" content="text/css">
35<style type="text/css"><!--
36  pre.display { font-family:inherit }
37  pre.format  { font-family:inherit }
38  pre.smalldisplay { font-family:inherit; font-size:smaller }
39  pre.smallformat  { font-family:inherit; font-size:smaller }
40  pre.smallexample { font-size:smaller }
41  pre.smalllisp    { font-size:smaller }
42  span.sc    { font-variant:small-caps }
43  span.roman { font-family:serif; font-weight:normal; } 
44  span.sansserif { font-family:sans-serif; font-weight:normal; } 
45--></style>
46<link rel="stylesheet" type="text/css" href="../cs.css">
47</head>
48<body>
49<div class="node">
50<a name="V850-Options"></a>
51<p>
52Next:&nbsp;<a rel="next" accesskey="n" href="VAX-Options.html#VAX-Options">VAX Options</a>,
53Previous:&nbsp;<a rel="previous" accesskey="p" href="System-V-Options.html#System-V-Options">System V Options</a>,
54Up:&nbsp;<a rel="up" accesskey="u" href="Submodel-Options.html#Submodel-Options">Submodel Options</a>
55<hr>
56</div>
57
58<h4 class="subsection">3.17.42 V850 Options</h4>
59
60<p><a name="index-V850-Options-2114"></a>
61These &lsquo;<samp><span class="samp">-m</span></samp>&rsquo; options are defined for V850 implementations:
62
63     <dl>
64<dt><code>-mlong-calls</code><dt><code>-mno-long-calls</code><dd><a name="index-mlong_002dcalls-2115"></a><a name="index-mno_002dlong_002dcalls-2116"></a>Treat all calls as being far away (near).  If calls are assumed to be
65far away, the compiler will always load the functions address up into a
66register, and call indirect through the pointer.
67
68     <br><dt><code>-mno-ep</code><dt><code>-mep</code><dd><a name="index-mno_002dep-2117"></a><a name="index-mep-2118"></a>Do not optimize (do optimize) basic blocks that use the same index
69pointer 4 or more times to copy pointer into the <code>ep</code> register, and
70use the shorter <code>sld</code> and <code>sst</code> instructions.  The <samp><span class="option">-mep</span></samp>
71option is on by default if you optimize.
72
73     <br><dt><code>-mno-prolog-function</code><dt><code>-mprolog-function</code><dd><a name="index-mno_002dprolog_002dfunction-2119"></a><a name="index-mprolog_002dfunction-2120"></a>Do not use (do use) external functions to save and restore registers
74at the prologue and epilogue of a function.  The external functions
75are slower, but use less code space if more than one function saves
76the same number of registers.  The <samp><span class="option">-mprolog-function</span></samp> option
77is on by default if you optimize.
78
79     <br><dt><code>-mspace</code><dd><a name="index-mspace-2121"></a>Try to make the code as small as possible.  At present, this just turns
80on the <samp><span class="option">-mep</span></samp> and <samp><span class="option">-mprolog-function</span></samp> options.
81
82     <br><dt><code>-mtda=</code><var>n</var><dd><a name="index-mtda-2122"></a>Put static or global variables whose size is <var>n</var> bytes or less into
83the tiny data area that register <code>ep</code> points to.  The tiny data
84area can hold up to 256 bytes in total (128 bytes for byte references).
85
86     <br><dt><code>-msda=</code><var>n</var><dd><a name="index-msda-2123"></a>Put static or global variables whose size is <var>n</var> bytes or less into
87the small data area that register <code>gp</code> points to.  The small data
88area can hold up to 64 kilobytes.
89
90     <br><dt><code>-mzda=</code><var>n</var><dd><a name="index-mzda-2124"></a>Put static or global variables whose size is <var>n</var> bytes or less into
91the first 32 kilobytes of memory.
92
93     <br><dt><code>-mv850</code><dd><a name="index-mv850-2125"></a>Specify that the target processor is the V850.
94
95     <br><dt><code>-mbig-switch</code><dd><a name="index-mbig_002dswitch-2126"></a>Generate code suitable for big switch tables.  Use this option only if
96the assembler/linker complain about out of range branches within a switch
97table.
98
99     <br><dt><code>-mapp-regs</code><dd><a name="index-mapp_002dregs-2127"></a>This option will cause r2 and r5 to be used in the code generated by
100the compiler.  This setting is the default.
101
102     <br><dt><code>-mno-app-regs</code><dd><a name="index-mno_002dapp_002dregs-2128"></a>This option will cause r2 and r5 to be treated as fixed registers.
103
104     <br><dt><code>-mv850e2v3</code><dd><a name="index-mv850e2v3-2129"></a>Specify that the target processor is the V850E2V3.  The preprocessor
105constants &lsquo;<samp><span class="samp">__v850e2v3__</span></samp>&rsquo; will be defined if
106this option is used.
107
108     <br><dt><code>-mv850e2</code><dd><a name="index-mv850e2-2130"></a>Specify that the target processor is the V850E2.  The preprocessor
109constants &lsquo;<samp><span class="samp">__v850e2__</span></samp>&rsquo; will be defined if
110
111     <br><dt><code>-mv850e1</code><dd><a name="index-mv850e1-2131"></a>Specify that the target processor is the V850E1.  The preprocessor
112constants &lsquo;<samp><span class="samp">__v850e1__</span></samp>&rsquo; and &lsquo;<samp><span class="samp">__v850e__</span></samp>&rsquo; will be defined if
113
114     <br><dt><code>-mv850es</code><dd><a name="index-mv850es-2132"></a>Specify that the target processor is the V850ES.  This is an alias for
115the <samp><span class="option">-mv850e1</span></samp> option.
116
117     <br><dt><code>-mv850e</code><dd><a name="index-mv850e-2133"></a>Specify that the target processor is the V850E.  The preprocessor
118constant &lsquo;<samp><span class="samp">__v850e__</span></samp>&rsquo; will be defined if this option is used.
119
120     <p>If neither <samp><span class="option">-mv850</span></samp> nor <samp><span class="option">-mv850e</span></samp> nor <samp><span class="option">-mv850e1</span></samp>
121nor <samp><span class="option">-mv850e2</span></samp> nor <samp><span class="option">-mv850e2v3</span></samp>
122are defined then a default target processor will be chosen and the
123relevant &lsquo;<samp><span class="samp">__v850*__</span></samp>&rsquo; preprocessor constant will be defined.
124
125     <p>The preprocessor constants &lsquo;<samp><span class="samp">__v850</span></samp>&rsquo; and &lsquo;<samp><span class="samp">__v851__</span></samp>&rsquo; are always
126defined, regardless of which processor variant is the target.
127
128     <br><dt><code>-mdisable-callt</code><dd><a name="index-mdisable_002dcallt-2134"></a>This option will suppress generation of the CALLT instruction for the
129v850e, v850e1, v850e2 and v850e2v3 flavors of the v850 architecture.  The default is
130<samp><span class="option">-mno-disable-callt</span></samp> which allows the CALLT instruction to be used.
131
132 </dl>
133
134 </body></html>
135
136