5 gccas - convenience script to run B<llvm-as> and B<opt>
9 B<gccas> [I<options>] I<filename>
13 The B<gccas> shell script passes an LLVM assembly file through the B<llvm-as>
14 and B<opt> programs to generate an optimized bytecode file. Its name is an
15 historical artifact from when it was a full executable used to process LLVM
16 assembly generated by the L<llvmgcc|llvmgcc> or L<llvmg++|llvmgxx> front-ends.
17 Currently this is a shell script that simulates what the old B<gccas> executable
20 B<gccas> performs a number of optimizations on the input program, including but
21 not limited to: promotion of stack values to SSA registers; elimination of dead
22 globals, function arguments, code, and types; tail-call elimination;
23 loop-invariant code motion; global common-subexpression elimination; and
24 sparse conditional constant propagation. It accomplishes this by using the
25 B<-std-compile-opts> option to the B<opt> tool.
33 Print a summary of command line options.
35 =item B<-o> F<filename>
37 Specify the name of the output file which will hold the assembled bytecode.
39 =item B<--disable-inlining>
41 Disable the inlining pass. By default, it is enabled.
43 =item B<--disable-opt>
45 Disable all assembler-time optimization passes.
47 =item B<-disable-compression>
49 Do not compress the generated bytecode.
55 =item B<--time-passes>
57 Record the amount of time needed for each pass and print it to standard
62 Verify each pass result.
68 If B<gccas> succeeds, it will exit with an exit status of 0.
69 Otherwise, if an error occurs, it will exit with a non-zero exit
74 L<llvm-as|llvm-as>, L<opt|opt>, L<gccld|gccld>
78 Maintained by the LLVM Team (L<http://llvm.org>).