Commit Graph

2508 Commits

Author SHA1 Message Date
Alex Dyachenko
9d13471fd1 Refactored expressions for division. Added / and % operators 2014-03-20 11:49:18 -04:00
Alex Dyachenko
14d119b9c6 Completed macros for unary operators and void functions, implemented Abs, Neg 2014-03-19 11:03:07 -04:00
Alex Dyachenko
087b50b40a New test to make sure all expression types are covered. Made AssignTo internal. 2014-03-19 10:04:45 -04:00
Alex Dyachenko
ea860e05cb Introduced operators on expressions. Heavy refactoring of expressions and operators. 2014-03-19 09:36:10 -04:00
Alex Dyachenko
c6434c61b3 Refactored to use the more straightforward, but perhaps slightly slower, double allocation 2014-03-15 20:51:02 -04:00
Alex Dyachenko
8f6e3bc004 Neg & Abs. Clean-up, minor refactoring, code comments.
Conversion of arithmetic methods to operators & expressions complete.
Now just need to implement expression recursion.
2014-03-15 08:26:26 -04:00
Alex Dyachenko
becdb61f45 Left shift 2014-03-15 08:24:21 -04:00
Alex Dyachenko
f471ef0ebc Inlined operator overloads 2014-03-14 14:14:05 -04:00
Alex Dyachenko
74923af477 Added submul and signed-limb overloads of addmul/submul 2014-03-14 14:03:16 -04:00
Alex Dyachenko
59a9d5ddd9 Added addmul and addmul_ui 2014-03-14 12:28:53 -04:00
Alex Dyachenko
d94c45cb85 Added subtraction from signed limb. Made expression operands internal. 2014-03-14 12:26:05 -04:00
Alex Dyachenko
e87d1d843f Signed limb addition 2014-03-13 23:20:25 -04:00
Alex Dyachenko
a446def092 Some macros supporting operator definitions. Added multiplication. 2014-03-13 22:55:33 -04:00
Alex Dyachenko
a20b0e5033 Updated readme 2014-03-13 21:03:50 -04:00
Alex Dyachenko
ab714af065 Changed operators to use exact expr types. Some clean-up. 2014-03-13 20:50:05 -04:00
Alex Dyachenko
562c4693e1 Added + operator and refactored for expressions 2014-03-13 15:46:55 -04:00
Alex Dyachenko
91b3be8adb Fixed tests after refactoring storage 2014-03-10 13:28:50 -04:00
Alex Dyachenko
0f5735f713 Added custom allocation functions and refactored HugeInt's private storage 2014-03-10 11:33:42 -04:00
Alex Dyachenko
fefec86544 More arithmetics methods 2014-03-06 22:34:16 -05:00
Alex Dyachenko
c60cfabf1e Refactorings in the Add Test spell 2014-03-06 09:55:47 -05:00
Alex Dyachenko
ce16f47866 Fixed how projects are built in each configuration 2014-03-06 09:17:03 -05:00
Alex Dyachenko
7b73582244 Added a Magic Spells project and a spell to help generate unit tests. 2014-03-05 23:06:47 -05:00
Alex Dyachenko
1b725238cc Started arithmetic and object override methods 2014-03-04 21:08:50 -05:00
Alex Dyachenko
d27fb70161 String constructors 2014-03-03 23:08:36 -05:00
Alex Dyachenko
019d1e3a64 Started the projects, created HugeInt class, constructors/destructors 2014-03-03 17:18:06 -05:00
Alex Dyachenko
fec31d65f6 Fixed location of sqr_basecase.asm 2014-02-28 22:48:40 -05:00
BrianGladman
94c011b8a3 1. add revised core 2 assembler to the Windows build
2. add revised nehalem tuning on Windows
3. fix bug in speed on Windows x64
2014-02-24 21:07:18 +00:00
BrianGladman
e6047c1c9e Merge branch 'master' of https://github.com/wbhart/mpir 2014-02-23 21:30:13 +00:00
William Hart
ec94b97a94 Slight speedup for k10. 2014-02-23 18:11:17 +00:00
William Hart
b65ad160ab Fix slowdown on penryn, retune k10. 2014-02-23 17:47:35 +00:00
William Hart
796fb5b77e Switch back to single function for sb_divappr_q. 2014-02-21 16:15:43 +00:00
William Hart
d5a444bd02 Use GMP add/submul_1 on core2 as well. 2014-02-21 15:25:41 +00:00
William Hart
faa82ed6c9 Update penryn tuning. 2014-02-21 14:27:14 +00:00
William Hart
738fb46982 Fix a bug in sb_divappr_q. 2014-02-21 14:14:41 +00:00
William Hart
e9cd157e50 Improve tail of sb_divappr_q and fix bug. 2014-02-21 13:41:37 +00:00
William Hart
e41d78e02b Switch to GMP add/submul_1.asm on Penryn. 2014-02-21 11:22:14 +00:00
William Hart
3079fab0eb Correct SPEED_MPN_DC_DIV_SMALL_Q 2014-02-21 11:02:35 +00:00
William Hart
8bb084e6d2 Speed up sb_divappr_q. 2014-02-21 10:57:56 +00:00
William Hart
5548023724 Switch to using both types of precomputed inverse. 2014-02-20 20:21:04 +00:00
William Hart
c33f9b04f7 Fix SPEED_DC_DIV_Q_SMALL and add sb_divappr_q to speed. 2014-02-20 18:49:28 +00:00
BrianGladman
71f91234c2 Merge branch 'master' of https://github.com/wbhart/mpir 2014-02-19 07:38:40 +00:00
William Hart
fc7b94378a Updated atom tuning values. 2014-02-18 22:42:48 +00:00
BrianGladman
2e9c90554c update windows builds for GMP sqr_basecase change 2014-02-18 17:36:29 +00:00
William Hart
8873ab5738 Merge remote-tracking branch 'brian/master' 2014-02-18 17:24:53 +00:00
BrianGladman
1a41ad921f Merge branch 'master' of https://github.com/wbhart/mpir 2014-02-18 16:25:37 +00:00
William Hart
a1a268dc7e Corrected nehalem tuning value. 2014-02-18 12:42:07 +00:00
William Hart
c8c2a49c43 Update nehalem tuning values. 2014-02-18 11:29:26 +00:00
William Hart
2a741c97d0 On nehalem the GMP sqr_basecase is faster. Thus both nehalem and westmere can
use the mpn/x86_64/sqr_basecase.asm file.
2014-02-18 11:25:37 +00:00
William Hart
d10ddc5184 Adjust atom kara_sqr_n crossover. 2014-02-18 11:15:46 +00:00
BrianGladman
2d7eb1d31c adjust windows builds for new ser_basecase assembler code 2014-02-17 23:15:59 +00:00