sparctrans(1)

NAME

sparctrans - SPARC TDF translator on SunOS

SYNOPSIS

sparctrans [options] input-fileoutput-file

DESCRIPTION

The code production portion of the TDF compiler is under the control of a TDF translator, which translates a TDF capsule into an assembly source file. There are separate TDF translators for each target architecture. This manual page describes the translators which produce SPARC assembly code. There are two versions, one for SunOS, and one for Solaris

It is recommended that sparctrans should not be invoked directly, but via the user interface tcc(1). The option -opt can be passed to sparctrans by passing the option -Wt,-opt to tcc(1).

OPTIONS

-Aswitch
    This option determines whether sparctrans should inline calls to alloca. This is done by default.

-Bswitch
    This option determines whether sparctrans should report floating point constants which exceed their range. This is always done by default. If this option is switched off such constants are replaced by infinity.

-Cswitch
    This option determines whether sparctrans should apply the "constants out of loops" optimisation. This optimisation is performed by default.

-Dswitch
    This option determines whether sparctrans should produce Position Independent Code (PIC). This is not done by default. This option is not supported on the SCO or FreeBSD platforms, and on the Linux platform it is supported only for ELF binary format.

-E  This option disables sparctrans&39;s constant overflow checks.

-Fswitch
    This option determines whether sparctrans should apply the "for all" optimisation. This is done by default.

-G  To be documented.

-H  This option causes sparctrans to output debugging information in its output file. This will only work if the input TDF capsule contains debugging information. On the SCO platform the format used by dbxtra and codeview is supported. On the SVR4.2 platform Dwarf 1 is supported, which is used by debug. On the Solaris, FreeBSD, and Linux platforms, stabs is supported. The GNU debugger gdb may be used on all platforms.

-Iswitch
    This option determines whether sparctrans should apply the "inlining" optimisation. This optimisation is performed by default.

-Kstr
    Causes sparctrans to optimise its code for a particular processor model, determined by str. At present there are no valid values for str.

-Mswitch
    If this option is on, sparctrans preserves division by a floating point number rather than replacing it by multiplication by the reciprocal of the number. While the latter produces faster code, it may lead to rounding errors. By default, division by constants is preserved.

-N  To be documented.

-O  To be documented.

-P  This option causes sparctrans to output profiling information suitable for use with prof(1) or a similar tool (see individual manual pages for details). This option is currently not supported on the Solaris platform.

-Q  This option causes sparctrans to quit before processing its input files. This is particularly useful in conjunction with -V.

-Rswitch
    This option determines whether sparctrans should immediately round every floating point operation to its appropriate range. This produces slower code, but is necessary for strict IEEE conformance. The default is not to round after every operation.

-Uswitch
    This option determines whether sparctrans should apply the "loop unrolling" optimisation. This optimisation is performed by default.

-V  This option causes sparctrans to print its version number and the version of the TDF specification it supports.

-Wswitch
    This option determines whether sparctrans should make string literals writable. At present the C producer does not make use of this facility, so strings are writable.

-X  This option disables all optimisations. All sparctrans&39;s optimisations are believed to be valid, so that any error in optimisation is a genuine bug.

-Z  This option causes sparctrans to print the version number of all the TDF capsules it decodes.

-a  To be documented.

-c  To be documented.

-g  To be documented.

-i  To be documented.

-l  To be documented.

-n  To be documented.

-r  To be documented.

-t  To be documented.

-u  To be documented.

SEE ALSO

as(1),prof(1),