summaryrefslogtreecommitdiff
path: root/src/math/x32
AgeCommit message (Collapse)AuthorLines
2014-11-05math: use fnstsw consistently instead of fstsw in x87 asmSzabolcs Nagy-2/+2
fnstsw does not wait for pending unmasked x87 floating-point exceptions and it is the same as fstsw when all exceptions are masked which is the only environment libc supports.
2014-11-05math: fix x86_64 and x32 asm not to use sahf instructionSzabolcs Nagy-14/+7
Some early x86_64 cpus (released before 2006) did not support sahf/lahf instructions so they should be avoided (intel manual says they are only supported if CPUID.80000001H:ECX.LAHF-SAHF[bit 0] = 1). The workaround simplifies exp2l and expm1l because fucomip can be used instead of the fucomp;fnstsw;sahf sequence copied from i386. In fmodl and remainderl sahf is replaced by a simple bit test.
2014-02-23x32 port (diff against vanilla x86_64)rofl0r-69/+69
2014-02-23import vanilla x86_64 code as x32rofl0r-0/+396