2004-06-03 03:12:38 +08:00
|
|
|
=pod
|
|
|
|
|
|
|
|
=head1 NAME
|
|
|
|
|
2007-02-03 08:44:47 +08:00
|
|
|
gccas - convenience script to run B<llvm-as> and B<opt>
|
2004-06-03 03:12:38 +08:00
|
|
|
|
|
|
|
=head1 SYNOPSIS
|
|
|
|
|
2004-07-03 00:06:19 +08:00
|
|
|
B<gccas> [I<options>] I<filename>
|
2004-06-03 03:12:38 +08:00
|
|
|
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
|
2007-02-03 08:44:47 +08:00
|
|
|
The B<gccas> shell script passes an LLVM assembly file through the B<llvm-as>
|
|
|
|
and B<opt> programs to generate an optimized bytecode file. Its name is an
|
|
|
|
historical artifact from when it was a full executable used to process LLVM
|
|
|
|
assembly generated by the L<llvmgcc|llvmgcc> or L<llvmg++|llvmgxx> front-ends.
|
|
|
|
Currently this is a shell script that simulates what the old B<gccas> executable
|
|
|
|
once did.
|
2004-06-03 03:12:38 +08:00
|
|
|
|
2007-02-03 08:44:47 +08:00
|
|
|
B<gccas> performs a number of optimizations on the input program, including but
|
|
|
|
not limited to: promotion of stack values to SSA registers; elimination of dead
|
|
|
|
globals, function arguments, code, and types; tail-call elimination;
|
|
|
|
loop-invariant code motion; global common-subexpression elimination; and
|
|
|
|
sparse conditional constant propagation. It accomplishes this by using the
|
|
|
|
B<-std-compile-opts> option to the B<opt> tool.
|
2004-06-03 03:12:38 +08:00
|
|
|
|
|
|
|
=head1 OPTIONS
|
|
|
|
|
|
|
|
=over
|
|
|
|
|
|
|
|
=item B<--help>
|
|
|
|
|
|
|
|
Print a summary of command line options.
|
|
|
|
|
|
|
|
=item B<-o> F<filename>
|
|
|
|
|
|
|
|
Specify the name of the output file which will hold the assembled bytecode.
|
|
|
|
|
|
|
|
=item B<--disable-inlining>
|
|
|
|
|
|
|
|
Disable the inlining pass. By default, it is enabled.
|
|
|
|
|
|
|
|
=item B<--disable-opt>
|
|
|
|
|
|
|
|
Disable all assembler-time optimization passes.
|
|
|
|
|
2006-11-22 06:53:12 +08:00
|
|
|
=item B<-disable-compression>
|
|
|
|
|
|
|
|
Do not compress the generated bytecode.
|
|
|
|
|
2004-06-03 03:12:38 +08:00
|
|
|
=item B<--stats>
|
|
|
|
|
|
|
|
Print statistics.
|
|
|
|
|
|
|
|
=item B<--time-passes>
|
|
|
|
|
|
|
|
Record the amount of time needed for each pass and print it to standard
|
|
|
|
error.
|
|
|
|
|
|
|
|
=item B<--verify>
|
|
|
|
|
|
|
|
Verify each pass result.
|
|
|
|
|
|
|
|
=back
|
|
|
|
|
|
|
|
=head1 EXIT STATUS
|
|
|
|
|
|
|
|
If B<gccas> succeeds, it will exit with an exit status of 0.
|
|
|
|
Otherwise, if an error occurs, it will exit with a non-zero exit
|
|
|
|
status.
|
|
|
|
|
|
|
|
=head1 SEE ALSO
|
|
|
|
|
2007-02-03 08:44:47 +08:00
|
|
|
L<llvm-as|llvm-as>, L<opt|opt>, L<gccld|gccld>
|
2004-06-03 03:12:38 +08:00
|
|
|
|
|
|
|
=head1 AUTHORS
|
|
|
|
|
2006-03-14 13:42:07 +08:00
|
|
|
Maintained by the LLVM Team (L<http://llvm.org>).
|
2004-06-03 03:12:38 +08:00
|
|
|
|
|
|
|
=cut
|