Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (OSF1-V5.1-alpha)
Apropos / Subsearch:
optional field

as(1)									as(1)


  as - assembler


  as [option]... file


  Options described in this section are	divided	into the following

    +  Options Common to as and	cc (see	cc(1) for complete information)

    +  Options Specific	to as

    +  Assembler Development Options (not generally used)

  Options Common to as and cc

  -g0 Produce no symbol	table information for symbolic debugging. This is the

  -g1 Produce additional symbol	table information for accurate but limited
      symbolic debugging of partially optimized	code.

  -g or	-g2
      Produce additional symbol	table information for full symbolic debugging
      and not do optimizations that limit full symbolic	debugging.

      Turns gprof profiling on or off when assembling and linking the file
      immediately following this option. The gprof profiler produces a call
      graph showing the	execution of a C program.

      When this	option is turned on, the standard run-time startup routine is
      replaced by the gcrt0.o routine. Programs	that are linked	with the -pg
      option and then run will produce,	in file	gmon.out, a dynamic call
      graph and	profile. You then run gprof on the gmon.out file to display
      the output.  When	you use	the -pg	option together	with either the
      -pthread option or the -threads option, the profiling library
      libprof1_r.a is used.

      For more information, see	the gprof(1) reference page.

      Produce a	compressed object as output.

  -O0 Performs no optimization.

  -O1 Runs the instruction scheduler.

      Controls the display of messages as well as the actions that occur as a
      result of	the messages. The value	of n can be one	of the following:

      0	  Displays assembler messages for less important issues.

      1	  Suppresses warning and informational messages	and displays error
	  and fatal messages. This is equivalent to specifying -w.

      2	  If the assembler encounters an error that generates a	warning-level
	  diagnostic message, the assembler displays the message and then

      3	  Does not print warning messages.  However, when warnings occur,
	  exits	with nonzero status.

  -P  Run only the C macro preprocessor	and put	the result in a	file with the
      suffix of	the source file	changed	to .i or if the	file has no suffix
      then a i is added	to the source file name. The .i	file has no # lines
      in it. This sets the -cpp	option.

  -E  Run only the C macro preprocessor	on the file and	send the result	to
      the standard output. This	sets the -cpp option.

  -C or	-M or -Q
      These three options are passed directly to cpp(1).  See cpp(1) for

  -eflag number
      Set the default exception	handling runtime procedure descriptor flags
      (see <&lt;pdsc.h>&gt;) to	the number specified.  If you provide a	.eflag direc-
      tive in a	procedure in your source code, the -eflag option is ignored
      for that procedure.

  -o output
      Name the final output file output. If this option	is used, the file
      a.out is undisturbed.

      "-Dname" Define the name to the C	macro preprocessor, as if by #define.
      If no definition is given, the name is defined as	"1".

      Remove any initial definition of name.

  -I dir
      The #include files whose names do	not begin with `/' are always sought
      first in the directory of	the file argument, then	in directories speci-
      fied in -I options, and finally in the standard directory

  -I  This option will cause #include files never to be	searched for in	the
      standard directory (/usr/include).

  -v  Print the	passes as they execute with their arguments and	their input
      and output files.

  -V  Print the	version	of the driver and the versions of all passes. This is
      done with	the what(1) command.

      Determines whether to run	the C macro preprocessor on assembly source
      files before assembling. The default is -cpp.

  -arch	option
      Specifies	which version of the Alpha architecture	to generate instruc-
      tions for. All Alpha processors implement	a core set of instructions
      and, in some cases, the following	extensions: BWX	(byte/word-
      manipulation extension), MVI (multimedia extension), FIX (square root
      and floating-point convert extension), and CIX (count extension).	(The
      Alpha Architecture Reference Manual describes the	extensions in

      The option argument can be one of	the following, which determines	the
      instructions that	the assembler can generate (for	details, see cc(1)):

	  Generate instructions	that are appropriate for all Alpha proces-
	  sors.	This option is the default.

	  Generate instructions	for the	processor that the assembler is	run-
	  ning on (for example,	EV6 instructions on an EV6 processor).







  -tune	option
      Instructs	the optimizer to tune the application for a specific version
      of the Alpha hardware. This will not prevent the application from	run-
      ning correctly on	other versions of Alpha	but it may run more slowly
      than generically-tuned code on those versions.

      The option argument can be one of	the following, which selects instruc-
      tion tuning appropriate for the listed processor(s) (for details,	see

	  Tune instructions for	all Alpha processors. This is the default.

	  Tune instructions for	the processor on which the code	is assem-







      See also the -arch option	in cc(1) for an	explanation of the differ-
      ences between -tune and -arch.

  Options Specific to as

      When specified with optimization (the default, unless -O0	is
      specified), the register manager will not	attempt	to perform any regis-
      ter optimizations	involving float	or integer constants.

      When specified with optimization (the default, unless -O0	is speci-
      fied), stops all register	manager	optimizations from being performed by
      the assembler.

  Assembler Development	Options

  The options described	below primarily	aid assembler development and are not
  generally used:

	  Pass the argument[s] argi to the assembler pass[es] c[c..]. The c
	  can be one of	[ pab].	The c selects the assembler pass in the	same
	  way as the -t	option.

  The options -t[ hpa],	-h path, and -Bstring select a name to use for a par-
  ticular pass.	These arguments	are processed from left	to right so their
  order	is significant.	When the -B option is encountered, the selection of
  names	takes place using the last -h and -t options. Therefore, the -B
  option is always required when using -h or -t.  Sets of these	options	can
  be used to select any	combination of names.

  -t[ hpa]
      Select the names.	The names selected are those designated	by the char-
      acters following the -t option according to the following	table:

      Name	Character
      include	h (see note following table)
      cpp	p
      adu	a

      If the character `h' is in the -t	argument, a directory is added to the
      list of directories to be	used in	searching for #include files. This
      directory	name has the form COMP_TARGET_ROOT/usr/include/string.	This
      directory	is to contain the include files	for the	string release of the
      assembler. The standard directory	is still searched.

      For compatibility, -tb is	equivalent to -ta

      Use path rather than the directory where the name	is normally found.

      Append string to all names specified by the -t option. If	no -t option
      has been processed before	the -B,	the -t option is assumed to be
      "hpab".  This list designates all	names.

  Invoking the assembler with a	name of	the form asstring has the same effect
  as using a -Bstring option on	the command line.

  If the environment variable COMP_HOST_ROOT is	set, the value is used as the
  root directory for all paths to the pass names other than the	default	root
  directory ( /).  If the environment variable COMP_TARGET_ROOT	is set,	the
  value	is used	as the root directory for the #include files other than	the
  default root directory (/).

  If the environment variable ROOTDIR is set, the value	is used	as the root
  directory for	all names rather than the default /usr/. This also affects
  the standard directory for #include files, /usr/include.

  If the environment variable TMPDIR is	set, the value is used as the direc-
  tory to place	any temporary files rather than	the default /tmp/.

  Other	arguments are ignored.


  The assembler, as, produces object code files	in extended coff format. The
  as command never runs	the link editor	(ld(1)). The as	command	accepts	one
  type of argument.

  The argument file is assumed to be a symbolic	assembly language source pro-
  gram.	It is assembled, producing an object file.

  The assembler	always defines the C preprocessor macros unix, and
  LANGUAGE_ASSEMBLY to the C macro preprocessor.  To see a list	of predefined
  macros, use the -v option.


  The diagnostics produced by the assembler are	intended to be self-


      object file

      assembler	output


      C	macro preprocessor

      assembly source file to extended COFF object file	translator

      standard directory for #include files


  Commands:  cc(1), what(1)

  Programmer's Guide, Assembly Language	Programmer's Guide