AS1(1) RISC/os Reference Manual AS1(1)
NAME
as1 - MIPS assembler
SYNOPSIS
as1 binasm_file [ -o object_file] [ -t sym_file] [ other
options ]
DESCRIPTION
as1, the MIPS binary assembler, reads the binary assembly
file and outputs the machine code into an object file.
The following options are interpreted by /fBas1.
-v Turns on verbose mode. In this mode, as1 will print
the name of the procedure it's currently assembling.
-w Suppresses warning messages.
-mips1 Use mips1 instructions (default).
-mips2 Use mips2 instructions (enables mips2 generic
scheduling rules by default).
-mips3 Use mips3 instructions (enables R4000 scheduling
rules by default).
-r3000 Use R2000/R3000 scheduling rules.
-r4000 Use the R4000 scheduling rules.
-r6000 Use the R6000 scheduling rules.
-noglobal
Turn off global optimizations in the assembler. This
includes peephole optimizations, symbolic registers
optimization, software pipelining, and cross-basic
block scheduling optimization.
-nopeep Turn off the peephole optimizer in the assembler.
The peephole optimizer is invoked by default only
when optimization level > 1 and debug level is
either 0 or 3.
-noswpipe
Turn off software pipelining optimization. This
optimization is invoked by default only when optimi-
zation level > 1 and debug level is either 0 or 3.
-nosymregs
Turn off symbolic registers optimization. This
optimization is invoked by default only when optimi-
zation level > 1 and debug level is either 0 or 3.
Printed 11/19/92 Page 1
AS1(1) RISC/os Reference Manual AS1(1)
Turning symbolic registers optimization also turns
off software pipelining optimization.
-noxbb Turn off cross basic-block scheduling optimization.
This optimization is invoked by default only when
the optimization level > 1 and debug level is either
0 or 3.
-peepdbg
Print debugging information during peephole optimi-
zations. If used along with the -r option, the
instructions in each basic block are printed out
before and after the peephole optimizer.
-swpdbg num
Print debugging information during the software
pipelining phase of the assembler. The value 'num'
is a digit between 1 and 9. A higher value prints
more debug information. If used in conjunction with
the -r option, the instructions in each basic block
are printed out before and after software pipelin-
ing.
-xbbdbg num
Print debugging information during cross-basic block
scheduling phase of the assembler. The value 'num'
is a digit between 1 and 9. A higher value prints
more debug information.
-excpt Enable generation of exception handling sections in
the object file.
-r6000LHU
-f, -f3 Set fp_hack_flag to fp_spinloops.
-f0 Set fp_hack_flag to fp_normal. This is also the
default when any one of the options, -mips2, -mips3,
-r4000, -r6000 is used.
-f1 Sets fp_hack_flag to fp_almost_fixed.
-f2 Sets fp_hack_flag to fp_nops.
-fp4 Sets fp_hack_flag to fp_divbug (default).
-O0 Turn off assembler optimizations.
-O1 Enable instruction scheduling and branch reorder-
ing.
-O, -O2, -O3
Page 2 Printed 11/19/92
AS1(1) RISC/os Reference Manual AS1(1)
Enable peephole optimizer, symbolic registers optim-
ization and software pipelining optimization.
-r Print the instructions in each basic block before
and after reorganization.
-RD Set real delays to be true.
-NR Set reorderflag to false. This turns off reordering
of instructions.
-R Print debugging information for the instruction
reorganizer.
-l Produce listing containing assorted debugging infor-
mation and statistics from the assembler.
-EL Tells as1 that the target machine is little-endian.
-EB Tells as1 that the target machine is big-endian.
-t sym_file
Tells as1 the name of the symbol table file.
-o object_file
Tells as1 the name of the object file (default is
b.out).
-noconstopts
Turn off optimization to eliminate load immediate
(li) instructions if the immediate is already in a
register.
-nolui Turn off optimization to remove redundant lui's.
-nodivrem
Turn off optimization to not generate redundant
div/divu instructions if the result is already
available in hi/lo registers.
-noatcompression
Turn off optimization to fill branch delay slot of
conditional branches with the first instruction of
the fall-thru basic block.
-nobranchtarget
Turn off optimization to fill branch/jump delay
slots with the target instruction.
-gpwarn
Emit a warning if a reference is not made GP rela-
tive because the offset exceeds the GP padding
Printed 11/19/92 Page 3
AS1(1) RISC/os Reference Manual AS1(1)
threshold.
-align64
Assume 64 bit alignment (default).
-align32, -align16, -align8
Set alignment as specified.
-aligncommon
-nopool Do not emit FP literals in linker pool.
-diag
SEE ALSO
as0(1), ugen(1).
FILES
/usr/include/cmplrs/binasm.h
DIAGNOSTICS
as1 assumes the input binary assembly file is error-free.
However, it does output warning messages when it runs into
special situations.
Page 4 Printed 11/19/92