Compilers: GCC 4.2 (AMD64)

Last updated: 10-Jul-2006

]]>Supported values for this flag are

- i386
- i486
- i586
- pentium
- pentium-mmx
- i686
- pentiumpro
- pentium2
- pentium3
- pentium3m
- pentium-m
- pentium4
- pentium4m
- prescott
- nocona
- k6
- k6-2
- k6-3
- athlon
- athlon-tbird
- athlon-4
- athlon-xp
- athlon-mp
- k8
- opteron
- athlon64
- athlon-fx
- winchip-c6
- winchip2
- c3
- c3-2

`-fno-align-functions` and `-falign-functions=1` are
equivalent and mean that functions will not be aligned.

Some assemblers only support this flag when *n* is a power of two; in
that case, it is rounded up.

If *n* is not specified, use a machine-dependent default.

If *n* is not specified, use a machine-dependent default.

If *n* is not specified, use a machine-dependent default.

Well, I know that **you**, as the well informed and well-
connected (with your compiler vendor) will be able to document ALL of
your implicitly included flags.

Pay special attention to code like this:

union a_union { int i; double d; }; int f() { a_union t; t.d = 3.0; return t.i; }

The practice of reading from a different union member than the one
most recently written to (called ``type-punning'') is common. Even
with `-fstrict-aliasing`, type-punning is allowed, provided the
memory is accessed through the union type. So, the code above will
work as expected. However, this code might not:

int f() { a_union t; int* ip; t.d = 3.0; ip = &t.i; return *ip; }]]>

- -fno-math-errno
- -funsafe-math-optimizations
- -fno-trapping-math
- -ffinite-math-only
- -fno-signaling-nans

Use of this option can result in incorrect output for programs which depend on an exact implementation of IEEE or ISO rules/specifications for math functions.

]]>Use of this option may result in incorrect output for programs which depend on an exact implementation of IEEE or ISO rules/specifications for math functions.

]]>Use of this option may result in incorrect output for programs which depend on an exact implementation of IEEE or ISO rules/specifications for math functions.

]]>Use of this option may result in incorrect output for programs which depend on an exact implementation of IEEE or ISO rules/specifications for math functions.

]]>If all calls to a given function are integrated, and the function is declared "static", then the function is normally not output as assembler code in its own right.

]]>If all calls to a given function are integrated, and the function is declared "static", then the function is normally not output as assembler code in its own right.

]]>