as: VAX-Opts
1
1 9.50.1 VAX Command-Line Options
1 -------------------------------
1
1 The Vax version of 'as' accepts any of the following options, gives a
1 warning message that the option was ignored and proceeds. These options
1 are for compatibility with scripts designed for other people's
1 assemblers.
1
1 '-D (Debug)'
1 '-S (Symbol Table)'
1 '-T (Token Trace)'
1 These are obsolete options used to debug old assemblers.
1
1 '-d (Displacement size for JUMPs)'
1 This option expects a number following the '-d'. Like options that
1 expect filenames, the number may immediately follow the '-d' (old
1 standard) or constitute the whole of the command line argument that
1 follows '-d' (GNU standard).
1
1 '-V (Virtualize Interpass Temporary File)'
1 Some other assemblers use a temporary file. This option commanded
1 them to keep the information in active memory rather than in a disk
1 file. 'as' always does this, so this option is redundant.
1
1 '-J (JUMPify Longer Branches)'
1 Many 32-bit computers permit a variety of branch instructions to do
1 the same job. Some of these instructions are short (and fast) but
1 have a limited range; others are long (and slow) but can branch
1 anywhere in virtual memory. Often there are 3 flavors of branch:
1 short, medium and long. Some other assemblers would emit short and
1 medium branches, unless told by this option to emit short and long
1 branches.
1
1 '-t (Temporary File Directory)'
1 Some other assemblers may use a temporary file, and this option
1 takes a filename being the directory to site the temporary file.
1 Since 'as' does not use a temporary disk file, this option makes no
1 difference. '-t' needs exactly one filename.
1
1 The Vax version of the assembler accepts additional options when
1 compiled for VMS:
1
1 '-h N'
1 External symbol or section (used for global variables) names are
1 not case sensitive on VAX/VMS and always mapped to upper case.
1 This is contrary to the C language definition which explicitly
1 distinguishes upper and lower case. To implement a standard
1 conforming C compiler, names must be changed (mapped) to preserve
1 the case information. The default mapping is to convert all lower
1 case characters to uppercase and adding an underscore followed by a
1 6 digit hex value, representing a 24 digit binary value. The one
1 digits in the binary value represent which characters are uppercase
1 in the original symbol name.
1
1 The '-h N' option determines how we map names. This takes several
1 values. No '-h' switch at all allows case hacking as described
1 above. A value of zero ('-h0') implies names should be upper case,
1 and inhibits the case hack. A value of 2 ('-h2') implies names
1 should be all lower case, with no case hack. A value of 3 ('-h3')
1 implies that case should be preserved. The value 1 is unused. The
1 '-H' option directs 'as' to display every mapped symbol during
1 assembly.
1
1 Symbols whose names include a dollar sign '$' are exceptions to the
1 general name mapping. These symbols are normally only used to
1 reference VMS library names. Such symbols are always mapped to
1 upper case.
1
1 '-+'
1 The '-+' option causes 'as' to truncate any symbol name larger than
1 31 characters. The '-+' option also prevents some code following
1 the '_main' symbol normally added to make the object file
1 compatible with Vax-11 "C".
1
1 '-1'
1 This option is ignored for backward compatibility with 'as' version
1 1.x.
1
1 '-H'
1 The '-H' option causes 'as' to print every symbol which was changed
1 by case mapping.
1