<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- This file documents the GNU Assembler "as".

Copyright (C) 1991-2013 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts.  A copy of the license is included in the
section entitled "GNU Free Documentation License".
 -->
<!-- Created by GNU Texinfo 5.2, http://www.gnu.org/software/texinfo/ -->
<head>
<title>Using as: ARC Options</title>

<meta name="description" content="Using as: ARC Options">
<meta name="keywords" content="Using as: ARC Options">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<link href="index.html#Top" rel="start" title="Top">
<link href="AS-Index.html#AS-Index" rel="index" title="AS Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="ARC_002dDependent.html#ARC_002dDependent" rel="up" title="ARC-Dependent">
<link href="ARC-Syntax.html#ARC-Syntax" rel="next" title="ARC Syntax">
<link href="ARC_002dDependent.html#ARC_002dDependent" rel="prev" title="ARC-Dependent">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.smallquotation {font-size: smaller}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.indentedblock {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
div.smalldisplay {margin-left: 3.2em}
div.smallexample {margin-left: 3.2em}
div.smallindentedblock {margin-left: 3.2em; font-size: smaller}
div.smalllisp {margin-left: 3.2em}
kbd {font-style:oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
pre.smalldisplay {font-family: inherit; font-size: smaller}
pre.smallexample {font-size: smaller}
pre.smallformat {font-family: inherit; font-size: smaller}
pre.smalllisp {font-size: smaller}
span.nocodebreak {white-space:nowrap}
span.nolinebreak {white-space:nowrap}
span.roman {font-family:serif; font-weight:normal}
span.sansserif {font-family:sans-serif; font-weight:normal}
ul.no-bullet {list-style: none}
-->
</style>


</head>

<body lang="en" bgcolor="#FFFFFF" text="#000000" link="#0000FF" vlink="#800080" alink="#FF0000">
<a name="ARC-Options"></a>
<div class="header">
<p>
Next: <a href="ARC-Syntax.html#ARC-Syntax" accesskey="n" rel="next">ARC Syntax</a>, Up: <a href="ARC_002dDependent.html#ARC_002dDependent" accesskey="u" rel="up">ARC-Dependent</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<a name="Options-2"></a>
<h4 class="subsection">9.3.1 Options</h4>
<a name="index-ARC-options-_0028none_0029"></a>
<a name="index-options-for-ARC-_0028none_0029"></a>

<dl compact="compact">
<dd>
<a name="index-_002dmarc_005b5_007c6_007c7_007c8_005d-command-line-option_002c-ARC"></a>
</dd>
<dt><code>-marc[5|6|7|8]</code></dt>
<dd><p>This option selects the core processor variant.  Using
<code>-marc</code> is the same as <code>-marc6</code>, which
is also the default.
</p>
<dl compact="compact">
<dd>
<a name="index-arc5-arc5_002c-ARC"></a>
</dd>
<dt><code>arc5</code></dt>
<dd><p>Base instruction set.
</p>
<a name="index-arc6-arc6_002c-ARC"></a>
</dd>
<dt><code>arc6</code></dt>
<dd><p>Jump-and-link (jl) instruction.  No requirement of an instruction between
setting flags and conditional jump.  For example:
</p>
<div class="smallexample">
<pre class="smallexample">  mov.f r0,r1
  beq   foo
</pre></div>

<a name="index-arc7-arc7_002c-ARC"></a>
</dd>
<dt><code>arc7</code></dt>
<dd><p>Break (brk) and sleep (sleep) instructions.
</p>
<a name="index-arc8-arc8_002c-ARC"></a>
</dd>
<dt><code>arc8</code></dt>
<dd><p>Software interrupt (swi) instruction.
</p>
</dd>
</dl>

<p>Note: the <code>.option</code> directive can to be used to select a core
variant from within assembly code.
</p>
<a name="index-_002dEB-command-line-option_002c-ARC"></a>
</dd>
<dt><code>-EB</code></dt>
<dd><p>This option specifies that the output generated by the assembler should
be marked as being encoded for a big-endian processor.
</p>
<a name="index-_002dEL-command-line-option_002c-ARC"></a>
</dd>
<dt><code>-EL</code></dt>
<dd><p>This option specifies that the output generated by the assembler should
be marked as being encoded for a little-endian processor - this is the
default.
</p>
</dd>
</dl>




</body>
</html>
