Man Page fbe.1




NAME

     fbe - assembler


SPARC SYNOPSIS

     fbe [ -b ] [ -K PIC ] [ -L ] [ -m ] [ -m32 ] [ -m64 ] [ -n ]
     [ -o outfile ] [ -P ] [ -Dname ] [ -Dname=def ] [ -Ipath ]
     [ -Uname....  ] [ -q ] [ -Q{y|n ] [ -s ] [ -S[a|C] ] [ -T  ]
     [ -V ] [ -xarch=v ] [ -xF ] filename...


x86 SYNOPSIS

     fbe [ -m ] [ -m32 ] [ -m64 ] [ -n ] [ -nH ] [ -o outfile ]
     [ -P ] [ -Dname ] [ -Dname=def ] [ -Ipath ] [ -Uname...]
     [ -Qy|n ] [ -s ] [ -V ] [ -xmodel=[a] ] IF filename ...


AVAILABILITY

     SUNWsprot


DESCRIPTION

     The fbe command creates object files from assembly  language
     source files.


COMMON OPTIONS

     The following flags are common to both SPARC and  x86.  They
     may be specified in any order.

     -b          Generates extra symbol table information for the
                 SourceBrowser.

     -Dname

     -Dname=def  When the -P option is in effect,  these  options
                 are  passed  to  the cpp(1) preprocessor without
                 interpretation by the  fbe  command;  otherwise,
                 they are ignored.

     -Ipath      When the -P option is in effect, this option  is
                 passed   to   the  cpp(1)  preprocessor  without
                 interpretation by the fbe command; otherwise, it
                 is ignored.

     -i          Instructs fbe to ignore line-number  information
                 from the preprocessor.

     -m          Run the m4(1) macro processor on  the  input  to
                 the assembler.

     -m32|-m64   Generate 32-bit  or  64-bit  ELF  format  object
                 code.

     -n          Suppress all the warnings while assembling.

     -o outfile  Put the output of the assembly in  outfile.   By
                 default,  the  output  file  name  is  formed by
                 removing the .s suffix, if there  is  one,  from
                 the input file name and appending a .o suffix.

     -P          Run cpp(1), the C  preprocessor,  on  the  files
                 being   assembled.   The   preprocessor  is  run
                 separately on each input file, not on their con-
                 catenation.   The  preprocessor output is passed
                 to the assembler.

     -Qy|n       If the n option is specified,  it  produces  the
                 "assembler  version"  information in the comment
                 section of the output  object  file.  If  the  y
                 option   is   specified,   the   information  is
                 suppressed.

     -s          Place  all  stabs  in  the  .stabs  section.  By
                 default,  stabs  ares  placed in stabs.excl sec-
                 tions, which are  stripped  out  by  the  static
                 linker,  ld(1), during final execution. When the
                 -s option is used, stabs  remain  in  the  final
                 executable   because   .stab  sections  are  not
                 stripped by the static linker.

     -Uname      When the -P option is in effect, this option  is
                 passed   to   the  cpp(1)  preprocessor  without
                 interpretation by the as command; otherwise,  it
                 is ignored.

     -V          Write the version number of the assembler  being
                 run on the standard error output.

     -Y          Specify directory for m4 and/or cm4def

  SPARC Options
     -b           Generate extra symbol table information for the
                  Sun SourceBrowser.

     -K PIC       Generate position-independent  code.   The  x86
                  assembler does not support the -K PIC flag.

     -L           Save all symbols,  including  temporary  labels
                  that  are  normally discarded to save space, in
                  the ELF symbol table.

     -q           Perform a quick assembly. When the -q option is
                  used, many error checks are not performed.
                  Note: This option disables many  error  checks.
                  It  is  recommended  that  you  do not use this
                  option   to   assemble   handwritten   assembly
                  language.

     -S[a|C]      Produce a disassembly of the  emitted  code  to
                  the standard output.
                  o Adding the character a to the option  appends
                  a  comment  line  to  each  assembly code which
                  indicates its relative address in its own  sec-
                  tion.
                  o Adding the character C to the option prevents
                  comment lines from appearing in the output.

     -T           This is a migration  option  for  4.x  assembly
                  files to be assembled on 5.x systems. With this
                  option, the symbol names in 4.x assembly  files
                  will be interpreted as 5.x symbol names.

     -xarch=v8a   Enables the assembler  to  accept  instructions
                  defined  in the SPARC-V8 architecture, less the
                  fsmuld instruction.  The resulting object  code
                  is  in  ELF32  format  when compiled with -m32,
                  ELF64 format with -m64.  This  is  the  default
                  choice of the -xarch= options.

     -xarch=sparc Enables the assembler  to  accept  instructions
                  defined  in  the  SPARC-V9  architecture.   The
                  resulting object code is in ELF32  format  when
                  compiled  with -m32, ELF64 format with -m64. It
                  will not execute on  a  Solaris  V8  system  (a
                  machine  with a V8 processor).  It will execute
                  on a Solaris V8+ system.

     -xarch=sparcvis
                  Enables the assembler  to  accept  instructions
                  defined  in  the SPARC-V9 architecture plus the
                  instructions  in  the  Visual  Instruction  Set
                  (VIS)  version  1.0.  The resulting object code
                  is in V8+ ELF32 format when compiled with -m32,
                  ELF64  format with -m64. It will not execute on
                  a Solaris system with a processor. It will exe-
                  cute on a Solaris system with a V8+ processor.

     -xarch=sparcvis2
                  Enables the assembler  to  accept  instructions
                  defined  in the SPARC-V9 architecture, plus the
                  instructions  in  the  Visual  Instruction  Set
                  (VIS)  version  2.0, with UltraSPARC-III exten-
                  sions.  The resulting object  code  is  in  V8+
                  ELF32  format  when  compiled  with -m32, ELF64
                  format with -m64.

     -xarch=sparcfmaf
                  Accept instructions defined for  the  sparcfmaf
                  version   of   the   SPARC-V9   ISA,  plus  the
                  UltraSPARC  extensions,  including  the  Visual
                  Instruction   Set   (VIS)   version   1.0,  the
                  UltraSPARC-III extensions, including the Visual
                  Instruction  Set  (VIS)  version  2.0,  and the
                  SPARC64  VI   extensions   for   floating-point
                  multiply-add.

     -xF          Generates additional  information  for  perfor-
                  mance  analysis  of the executable using SPARC-
                  works analyzer.  If the  input  file  does  not
                  contain  any stabs (debugging directives), then
                  the assembler will generate some default  stabs
                  which  are  needed  by the SPARCworks analyzer.
                  Also see the manual page dbx.

  x86 Options
     -nH          Suppress the generation of the  Hardware  Capa-
                  bilities section


ENVIRONMENT

     TMPDIR
      as normally creates temporary files in the directory  /tmp.
      You  may  specify another directory by setting the environ-
      ment variable TMPDIR to your chosen directory.  (If  TMPDIR
      isn't a valid directory, then as will use /tmp).


FILES

     By default, as creates its temporary files in /tmp.


ATTRIBUTES

     See attributes(5) for descriptions of the  following  attri-
     butes:

     ____________________________________
    | ATTRIBUTE TYPE  ATTRIBUTE VALUE|  |
    |________________________________|__|
    | Availability    SPROlang       |  |
    |________________________________|__|


SEE ALSO

     attributes(5),  cc(1B),   cpp(1),   ld(1),   m4(1),   nm(1),
     strip(1), tmpnam(3S), a.out(4)


NOTES

     On SPARC, the cpp symbol __sparc is set  when  the  flag  -P
     appears,  as  well  as  __sparcv8  with  the  -m32 flag, and
     __sparcv9 with the -m64 flag.

     On x86/x64, the symbol  __i386  is  set  when  the  flag  -P
     appears, as well as __amd64 with the -m64 flag.

     If the -m (invoke the m4(1) macro processor) option is used,
     keywords  for  m4(1)  cannot  be used as symbols (variables,
     functions, labels) in the  input  file  since  m4(1)  cannot
     determine  which  keywords  are  assembler symbols and which
     keywords are real m4(1) macros.

     Whenever possible, you should access the assembler through a
     compilation system interface program such as cc(1B).

     All undefined symbols are treated as global.