ROMCC(1)

NAME
romcc - compile C programs into binaries that don't use any RAM

SYNOPSIS
romcc [OPTIONS] <source>.c

DESCRIPTION
romcc is a C compiler which produces binaries which do not rely on RAM, but instead only use CPU registers.

It is prominently used in the coreboot project to compile C code which needs to run before the firmware has initialized the RAM, but can be used for other purposes, too.

OPTIONS

-o <filename>
    Output file name.

-f<option>
    Specify a generic compiler option.

-m<option>
    Specify an architecture-dependent compiler option.

--  Specify that this is the last option.

GENERIC COMPILER OPTIONS
-O

-O2

-E

-ftrigraphs

-fno-trigraphs

-fpp-only

-fno-pp-only

-feliminate-inefectual-code

-fno-eliminate-inefectual-code

-fsimplify

-fno-simplify

-fscc-transform

-fno-scc-transform

-fsimplify-op

-fno-simplify-op

-fsimplify-phi

-fno-simplify-phi

-fsimplify-label

-fno-simplify-label

-fsimplify-branch

-fno-simplify-branch

-fsimplify-copy

-fno-simplify-copy

-fsimplify-arith

-fno-simplify-arith

-fsimplify-shift

-fno-simplify-shift

-fsimplify-bitwise

-fno-simplify-bitwise

-fsimplify-logical

-fno-simplify-logical

-fsimplify-bitfield

-fno-simplify-bitfield

-finline-policy=always

-finline-policy=never

-finline-policy=defaulton

-finline-policy=defaultoff

-finline-policy=nopenalty

-fdebug-all

-fno-debug-all

-fdebug-abort-on-error

-fno-debug-abort-on-error

-fdebug-basic-blocks

-fno-debug-basic-blocks

-fdebug-fdominators

-fno-debug-fdominators

-fdebug-rdominators

-fno-debug-rdominators

-fdebug-triples

-fno-debug-triples

-fdebug-interference

-fno-debug-interference

-fdebug-scc-transform

-fno-debug-scc-transform

-fdebug-scc-transform2

-fno-debug-scc-transform2

-fdebug-rebuild-ssa-form

-fno-debug-rebuild-ssa-form

-fdebug-inline

-fno-debug-inline

-fdebug-live-range-conflicts

-fno-debug-live-range-conflicts

-fdebug-live-range-conflicts2

-fno-debug-live-range-conflicts2

-fdebug-color-graph

-fno-debug-color-graph

-fdebug-color-graph2

-fno-debug-color-graph2

-fdebug-coalescing

-fno-debug-coalescing

-fdebug-coalescing2

-fno-debug-coalescing2

-fdebug-verification

-fno-debug-verification

-fdebug-calls

-fno-debug-calls

-fdebug-calls2

-fno-debug-calls2

-fdebug-tokens

-fno-debug-tokens

-flabel-prefix=<prefix for assembly language labels>

--label-prefix=<prefix for assembly language labels>

-I<include path>

-D<macro>[=defn]

-U<macro>

ARCHITECTURE-SPECIFIC COMPILER OPTIONS
-mmmx

-mno-mmx

-msse

-mno-sse

-mnoop-copy

-mno-noop-copy

-mcpu=i386

-mcpu=p2

-mcpu=p3

-mcpu=p4

-mcpu=k7

-mcpu=k8

-mcpu=c3

-mcpu=c3-2

BUGS
Please report any bugs to https://ticket.coreboot.org/projects/coreboot or the coreboot mailing list at <coreboot@coreboot.org>.

LICENCE
romcc is covered by the GNU General Public License (GPL), version 2.

SEE ALSO
flashrom(1), abuild(1).

COPYRIGHT
2003-2006 Eric W. Biederman

AUTHORS
Eric W. Biederman <ebiederman@lnxi.com>
Some contributions by others.

This manual page was written by Uwe Hermann <uwe@hermann-uwe.de>. It is licensed under the terms of the GNU GPL (v2 or later).