On i386, GCC currently emits calls to libm math functions like f.i.
sin(). This pessimizes code a lot if we are using SSE math, as we need to
obey the standard i387 FP ABI. The sub-target specific math routines
library will provide a way to present different ABI math routines to GCC,
possibly featuring a faster sub-target specific implementation. This
includes SSE(2) ABI and implementation transcendental functions and
vectorized transcendental functions not currently in libm.
Personnel
* Richard Guenther
Delivery Date
Stage 1 of 4.2. i386 specific implementation is ready, a better name
than libsse2 has to be chosen and some sub-directory restructuring of the
library needs to be made.
Benefits
GCC will create better (as in faster and smaller) code in the SSE math
case on i386. Other targets may be able to benefit from the infrastructure
laid.
Dependencies
None.
Modifications Required
A new toplevel library will be introduced and the i386 backend will be
made to emit calls to functions in this library instead of libm, if asked
to do so.