Szabolcs Nagy
a732e80d33
math: fix x86_64 and x32 asm not to use sahf instruction
...
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-11-05 21:40:29 +01:00
..
2013-08-16 17:32:30 -04:00
2013-08-16 17:32:30 -04:00
2014-01-08 22:51:46 +01:00
2014-11-05 21:40:29 +01:00
2014-11-05 21:40:29 +01:00
2013-05-15 23:08:52 +00:00
2013-05-15 23:08:52 +00:00
2013-09-05 11:30:08 +00:00
2012-03-13 16:38:22 +01:00
2012-03-13 16:38:22 +01:00
2013-09-05 11:30:09 +00:00
2013-09-05 11:30:09 +00:00
2014-10-08 10:17:19 -04:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2014-09-08 15:51:42 +02:00
2013-11-24 01:06:38 +00:00
2014-10-31 11:35:40 -04:00
2014-10-31 11:35:40 -04:00
2014-10-31 11:35:40 -04:00
2012-03-20 20:08:35 +01:00
2012-03-20 20:08:35 +01:00
2014-10-08 10:17:19 -04:00
2013-05-15 23:08:52 +00:00
2013-05-15 23:08:52 +00:00
2013-09-05 11:30:08 +00:00
2013-05-18 12:34:00 +00:00
2013-05-18 12:34:00 +00:00
2013-09-05 11:30:08 +00:00
2013-05-15 23:08:52 +00:00
2013-05-15 23:08:52 +00:00
2013-10-07 18:41:03 +00:00
2013-10-07 18:41:03 +00:00
2013-09-05 12:26:26 +00:00
2013-09-05 11:30:07 +00:00
2013-08-15 10:14:46 +00:00
2013-08-15 10:14:46 +00:00
2012-12-16 20:28:43 +01:00
2012-12-11 23:06:20 +01:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:07 +00:00
2013-08-15 14:05:19 +00:00
2013-08-15 14:05:19 +00:00
2013-09-05 11:30:07 +00:00
2013-08-15 10:14:46 +00:00
2013-08-15 10:14:46 +00:00
2013-09-05 16:57:46 +00:00
2013-09-05 16:57:46 +00:00
2013-09-05 16:57:46 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:08 +00:00
2014-10-31 11:35:40 -04:00
2013-09-05 11:30:07 +00:00
2014-10-31 11:35:40 -04:00
2013-09-05 11:30:09 +00:00
2013-09-05 11:30:09 +00:00
2013-09-05 11:30:07 +00:00
2013-05-18 14:40:22 +00:00
2013-05-18 14:40:22 +00:00
2012-12-16 19:23:51 +01:00
2012-12-16 19:23:51 +01:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:08 +00:00
2013-05-15 23:08:52 +00:00
2013-05-15 23:08:52 +00:00
2013-10-04 18:10:17 +00:00
2013-09-06 18:35:55 +00:00
2013-09-06 20:05:25 +00:00
2013-09-05 11:30:08 +00:00
2014-09-18 17:52:50 +02:00
2014-09-18 17:52:50 +02:00
2014-09-18 17:52:50 +02:00
2013-09-06 18:35:55 +00:00
2013-09-06 18:35:55 +00:00
2013-09-05 11:30:08 +00:00
2013-09-06 18:35:55 +00:00
2013-09-06 18:35:55 +00:00
2012-11-12 23:41:48 +01:00
2013-09-05 11:30:09 +00:00
2013-09-05 11:30:09 +00:00
2013-09-05 11:30:07 +00:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2013-11-21 01:16:49 +00:00
2013-11-21 01:16:49 +00:00
2014-10-31 11:35:40 -04:00
2013-09-05 11:30:07 +00:00
2014-10-31 11:35:40 -04:00
2013-10-07 18:46:43 +00:00
2013-10-07 18:46:43 +00:00
2013-10-07 18:46:43 +00:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2012-03-13 01:17:53 -04:00
2012-03-13 01:17:53 -04:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-05-15 23:08:52 +00:00
2013-12-12 03:42:11 +00:00
2013-05-15 23:08:52 +00:00
2013-12-12 03:42:11 +00:00
2013-01-01 22:20:45 +01:00
2013-01-01 22:20:45 +01:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2013-11-21 01:01:57 +00:00
2012-03-27 22:12:20 +02:00
2013-11-21 01:01:57 +00:00
2012-03-27 22:12:20 +02:00
2013-11-21 01:01:57 +00:00
2012-03-18 20:40:43 +01:00
2012-03-18 20:40:43 +01:00
2012-11-13 13:34:45 +01:00
2012-03-18 20:52:33 +01:00
2012-03-18 20:52:33 +01:00
2012-03-18 20:52:33 +01:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-10-28 01:16:14 +00:00
2013-10-28 01:16:14 +00:00
2012-11-13 13:34:45 +01:00
2012-03-18 20:40:43 +01:00
2012-11-13 13:34:45 +01:00
2012-03-18 20:52:33 +01:00
2012-03-18 20:52:33 +01:00
2012-03-18 20:52:33 +01:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2014-10-31 11:35:40 -04:00
2012-03-13 01:55:25 -04:00
2012-03-13 01:55:25 -04:00
2012-03-13 01:55:25 -04:00
2012-11-13 13:34:45 +01:00
2012-11-13 13:34:45 +01:00
2012-11-13 13:34:45 +01:00
2013-09-05 11:30:09 +00:00
2013-09-05 11:30:09 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:09 +00:00
2013-09-05 11:30:09 +00:00
2012-03-13 19:51:14 +01:00
2013-08-15 15:13:24 +00:00
2013-08-15 10:08:45 +00:00
2012-03-27 22:49:37 +02:00
2013-11-21 01:16:49 +00:00
2013-11-21 01:16:49 +00:00
2012-03-13 19:51:14 +01:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2014-10-31 11:35:40 -04:00
2014-10-31 11:35:40 -04:00
2014-10-31 11:35:40 -04:00
2014-10-31 11:35:40 -04:00
2014-10-31 11:35:40 -04:00
2014-10-31 11:35:40 -04:00
2013-12-12 03:42:11 +00:00
2013-12-12 03:42:11 +00:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2012-03-13 19:51:14 +01:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:08 +00:00
2013-09-05 14:03:10 +00:00
2012-08-13 14:51:43 -04:00
2012-08-13 14:51:43 -04:00
2013-05-18 14:40:22 +00:00
2013-12-12 03:42:11 +00:00
2013-12-12 03:42:11 +00:00
2014-04-11 18:07:08 +02:00
2013-05-18 14:40:22 +00:00
2013-08-15 10:14:46 +00:00
2012-12-16 19:49:55 +01:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:08 +00:00
2012-03-19 23:41:19 +01:00
2012-03-19 23:41:19 +01:00
2013-09-05 11:30:08 +00:00
2013-05-18 12:34:00 +00:00
2013-05-18 12:34:00 +00:00
2013-08-15 10:14:46 +00:00
2013-08-15 10:14:46 +00:00
2013-09-05 11:30:08 +00:00
2013-09-05 11:30:08 +00:00
2013-11-21 01:01:57 +00:00
2012-12-12 01:43:43 +01:00
2012-12-16 20:22:17 +01:00
2013-09-05 11:30:07 +00:00
2013-09-05 11:30:07 +00:00
2014-10-31 11:35:40 -04:00