<html lang="en">
<head>
<title>VAX-Opts - Using as</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Using as">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Vax_002dDependent.html#Vax_002dDependent" title="Vax-Dependent">
<link rel="next" href="VAX_002dfloat.html#VAX_002dfloat" title="VAX-float">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU Assembler "as".

Copyright (C) 1991-2019 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''.

-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
</head>
<body>
<div class="node">
<a name="VAX-Opts"></a>
<a name="VAX_002dOpts"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="VAX_002dfloat.html#VAX_002dfloat">VAX-float</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Vax_002dDependent.html#Vax_002dDependent">Vax-Dependent</a>
<hr>
</div>

<h4 class="subsection">9.50.1 VAX Command-Line Options</h4>

<p><a name="index-command_002dline-options-ignored_002c-VAX-2478"></a><a name="index-VAX-command_002dline-options-ignored-2479"></a>The Vax version of <code>as</code> accepts any of the following options,
gives a warning message that the option was ignored and proceeds. 
These options are for compatibility with scripts designed for other
people's assemblers.

     
<a name="index-g_t_0040code_007b_002dD_007d_002c-ignored-on-VAX-2480"></a>
<a name="index-g_t_0040code_007b_002dS_007d_002c-ignored-on-VAX-2481"></a>
<a name="index-g_t_0040code_007b_002dT_007d_002c-ignored-on-VAX-2482"></a>
<dl><dt><code>-D (Debug)</code><dt><code>-S (Symbol Table)</code><dt><code>-T (Token Trace)</code><dd>These are obsolete options used to debug old assemblers.

     <p><a name="index-g_t_0040code_007b_002dd_007d_002c-VAX-option-2483"></a><br><dt><code>-d (Displacement size for JUMPs)</code><dd>This option expects a number following the &lsquo;<samp><span class="samp">-d</span></samp>&rsquo;.  Like options
that expect filenames, the number may immediately follow the
&lsquo;<samp><span class="samp">-d</span></samp>&rsquo; (old standard) or constitute the whole of the command-line
argument that follows &lsquo;<samp><span class="samp">-d</span></samp>&rsquo; (<span class="sc">gnu</span> standard).

     <p><a name="index-g_t_0040code_007b_002dV_007d_002c-redundant-on-VAX-2484"></a><br><dt><code>-V (Virtualize Interpass Temporary File)</code><dd>Some other assemblers use a temporary file.  This option
commanded them to keep the information in active memory rather
than in a disk file.  <code>as</code> always does this, so this
option is redundant.

     <p><a name="index-g_t_0040code_007b_002dJ_007d_002c-ignored-on-VAX-2485"></a><br><dt><code>-J (JUMPify Longer Branches)</code><dd>Many 32-bit computers permit a variety of branch instructions
to do the same job.  Some of these instructions are short (and
fast) but have a limited range; others are long (and slow) but
can branch anywhere in virtual memory.  Often there are 3
flavors of branch: short, medium and long.  Some other
assemblers would emit short and medium branches, unless told by
this option to emit short and long branches.

     <p><a name="index-g_t_0040code_007b_002dt_007d_002c-ignored-on-VAX-2486"></a><br><dt><code>-t (Temporary File Directory)</code><dd>Some other assemblers may use a temporary file, and this option
takes a filename being the directory to site the temporary
file.  Since <code>as</code> does not use a temporary disk file, this
option makes no difference.  &lsquo;<samp><span class="samp">-t</span></samp>&rsquo; needs exactly one
filename. 
</dl>

   <p><a name="index-VMS-_0028VAX_0029-options-2487"></a><a name="index-options-for-VAX_002fVMS-2488"></a><a name="index-VAX_002fVMS-options-2489"></a><a name="index-Vax_002d11-C-compatibility-2490"></a><a name="index-symbols-with-uppercase_002c-VAX_002fVMS-2491"></a>The Vax version of the assembler accepts additional options when
compiled for VMS:

     
<a name="index-g_t_0040samp_007b_002dh_007d-option_002c-VAX_002fVMS-2492"></a>
<dl><dt>&lsquo;<samp><span class="samp">-h </span><var>n</var></samp>&rsquo;<dd>External symbol or section (used for global variables) names are not
case sensitive on VAX/VMS and always mapped to upper case.  This is
contrary to the C language definition which explicitly distinguishes
upper and lower case.  To implement a standard conforming C compiler,
names must be changed (mapped) to preserve the case information.  The
default mapping is to convert all lower case characters to uppercase and
adding an underscore followed by a 6 digit hex value, representing a 24
digit binary value.  The one digits in the binary value represent which
characters are uppercase in the original symbol name.

     <p>The &lsquo;<samp><span class="samp">-h </span><var>n</var></samp>&rsquo; option determines how we map names.  This takes
several values.  No &lsquo;<samp><span class="samp">-h</span></samp>&rsquo; switch at all allows case hacking as
described above.  A value of zero (&lsquo;<samp><span class="samp">-h0</span></samp>&rsquo;) implies names should be
upper case, and inhibits the case hack.  A value of 2 (&lsquo;<samp><span class="samp">-h2</span></samp>&rsquo;)
implies names should be all lower case, with no case hack.  A value of 3
(&lsquo;<samp><span class="samp">-h3</span></samp>&rsquo;) implies that case should be preserved.  The value 1 is
unused.  The <code>-H</code> option directs <code>as</code> to display
every mapped symbol during assembly.

     <p>Symbols whose names include a dollar sign &lsquo;<samp><span class="samp">$</span></samp>&rsquo; are exceptions to the
general name mapping.  These symbols are normally only used to reference
VMS library names.  Such symbols are always mapped to upper case.

     <p><a name="index-g_t_0040samp_007b_002d_002b_007d-option_002c-VAX_002fVMS-2493"></a><br><dt>&lsquo;<samp><span class="samp">-+</span></samp>&rsquo;<dd>The &lsquo;<samp><span class="samp">-+</span></samp>&rsquo; option causes <code>as</code> to truncate any symbol
name larger than 31 characters.  The &lsquo;<samp><span class="samp">-+</span></samp>&rsquo; option also prevents some
code following the &lsquo;<samp><span class="samp">_main</span></samp>&rsquo; symbol normally added to make the object
file compatible with Vax-11 "C".

     <p><a name="index-g_t_0040samp_007b_002d1_007d-option_002c-VAX_002fVMS-2494"></a><br><dt>&lsquo;<samp><span class="samp">-1</span></samp>&rsquo;<dd>This option is ignored for backward compatibility with <code>as</code>
version 1.x.

     <p><a name="index-g_t_0040samp_007b_002dH_007d-option_002c-VAX_002fVMS-2495"></a><br><dt>&lsquo;<samp><span class="samp">-H</span></samp>&rsquo;<dd>The &lsquo;<samp><span class="samp">-H</span></samp>&rsquo; option causes <code>as</code> to print every symbol
which was changed by case mapping. 
</dl>

   </body></html>

