summaryrefslogtreecommitdiffstats
path: root/lib/msun/ia64
Commit message (Collapse)AuthorAgeFilesLines
* Use C comments since we now preprocess these files with CPP.deischen2007-04-291-1/+3
|
* Add symbol versioning to libm.deischen2006-03-272-0/+5
|
* Replace fegetmask() and fesetmask() with feenableexcept(),das2005-03-161-4/+15
| | | | | | | | | | fedisableexcept(), and fegetexcept(). These two sets of routines provide the same functionality. I implemented the former as an undocumented internal interface to make the regression test easier to write. However, fe(enable|disable|get)except() is already part of glibc, and I would like to avoid gratuitous differences. The only major flaw in the glibc API is that there's no good way to report errors on processors that don't support all the unmasked exceptions.
* - Define the LDBL_PREC to be the number of significant bits in a longdas2005-03-071-1/+2
| | | | | double's mantissa. - Add an assembly version of fmal.
* Add an assembly version of fmal.das2005-03-071-0/+34
|
* Work around a gcc bug. This fixes feholdexcept() et al. at -O1.das2005-03-051-1/+1
| | | | | | | | | | | | | | Symptoms of the problem included assembler warnings and nondeterministic runtime behavior when a fe*() call that affects the fpsr is closely followed by a float point op. The bug (at least, I think it's a bug) is that gcc does not insert a break between a volatile asm and a dependent instruction if the volatile asm came from an inlined function. Volatile asms seem to be fine in other circumstances, even without -mvolatile-asm-stop, so perhaps the compiler adds the stop bits before inlining takes place. The problem does not occur at -O0 because inlining is disabled, and it doesn't happen at -O2 because -fschedule-insns2 knows better.
* Move machine-dependent crud to its own makefile.das2005-02-041-0/+3
|
* Add fma() and fmaf(), which implement a fused multiply-add operation.das2005-01-222-0/+68
|
* Mark all inline asms that read the floating-point control or statusdas2005-01-141-1/+1
| | | | | | | registers as volatile. Instructions that *wrote* to FP state were already marked volatile, but apparently gcc has license to move non-volatile asms past volatile asms. This broke amd64's feupdateenv at -O2 due to a WAR conflict between fnstsw and fldenv there.
* Shift the FPSR contents by the correct amount so feupdateenv() raisesdas2004-06-111-1/+1
| | | | the correct exceptions from the old environment.
* Add an fenv.h implementation for the ia64 port.das2004-06-062-0/+280
Reviewed by: standards@
OpenPOWER on IntegriCloud