diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..374094a --- /dev/null +++ b/.gitignore @@ -0,0 +1,18 @@ +*.[ao] +*.aux +*.dvi +*.idx +*.ilg +*.ind +*.lof +*.log +*.toc + +test +test.exe +mtest +mtest.exe +stest +stest.exe +rsatest +rsatest.exe diff --git a/tfm.aux b/tfm.aux deleted file mode 100644 index c37ca37..0000000 --- a/tfm.aux +++ /dev/null @@ -1,61 +0,0 @@ -\relax -\ifx\hyper@anchor\@undefined -\global \let \oldcontentsline\contentsline -\gdef \contentsline#1#2#3#4{\oldcontentsline{#1}{#2}{#3}} -\global \let \oldnewlabel\newlabel -\gdef \newlabel#1#2{\newlabelxx{#1}#2} -\gdef \newlabelxx#1#2#3#4#5#6{\oldnewlabel{#1}{{#2}{#3}}} -\AtEndDocument{\let \contentsline\oldcontentsline -\let \newlabel\oldnewlabel} -\else -\global \let \hyper@last\relax -\fi - -\@writefile{toc}{\contentsline {chapter}{\numberline {1}Introduction}{1}{chapter.1}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {1.1}What is TomsFastMath?}{1}{section.1.1}} -\@writefile{toc}{\contentsline {section}{\numberline {1.2}License}{2}{section.1.2}} -\@writefile{toc}{\contentsline {section}{\numberline {1.3}Building}{2}{section.1.3}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.1}Intel CC}{2}{subsection.1.3.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.2}MSVC}{2}{subsection.1.3.2}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.3}Build Limitations}{3}{subsection.1.3.3}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.4}Optimization Configuration}{3}{subsection.1.3.4}} -\@writefile{toc}{\contentsline {subsubsection}{x86--32}{3}{section*.3}} -\@writefile{toc}{\contentsline {subsubsection}{SSE2}{3}{section*.4}} -\@writefile{toc}{\contentsline {subsubsection}{x86--64}{4}{section*.5}} -\@writefile{toc}{\contentsline {subsubsection}{ARM}{4}{section*.6}} -\@writefile{toc}{\contentsline {subsubsection}{PPC32}{4}{section*.7}} -\@writefile{toc}{\contentsline {subsubsection}{PPC64}{4}{section*.8}} -\@writefile{toc}{\contentsline {subsubsection}{AVR32}{4}{section*.9}} -\@writefile{toc}{\contentsline {subsubsection}{Future Releases}{4}{section*.10}} -\@writefile{lof}{\contentsline {figure}{\numberline {1.1}{\ignorespaces Recommended Build Modes}}{5}{figure.1.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.5}Build Configurations}{5}{subsection.1.3.5}} -\@writefile{toc}{\contentsline {subsection}{\numberline {1.3.6}Precision Configuration}{5}{subsection.1.3.6}} -\@writefile{toc}{\contentsline {chapter}{\numberline {2}Getting Started}{7}{chapter.2}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {2.1}Data Types}{7}{section.2.1}} -\@writefile{toc}{\contentsline {section}{\numberline {2.2}Initialization}{8}{section.2.2}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.1}Simple Initialization}{8}{subsection.2.2.1}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.2}Initialize Small Constants}{8}{subsection.2.2.2}} -\@writefile{toc}{\contentsline {subsection}{\numberline {2.2.3}Initialize Copy}{8}{subsection.2.2.3}} -\@writefile{toc}{\contentsline {chapter}{\numberline {3}Arithmetic Operations}{9}{chapter.3}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\@writefile{toc}{\contentsline {section}{\numberline {3.1}Odds and Evens}{9}{section.3.1}} -\@writefile{toc}{\contentsline {section}{\numberline {3.2}Sign Manipulation}{9}{section.3.2}} -\@writefile{toc}{\contentsline {section}{\numberline {3.3}Comparisons}{10}{section.3.3}} -\@writefile{toc}{\contentsline {section}{\numberline {3.4}Shifting}{10}{section.3.4}} -\@writefile{toc}{\contentsline {section}{\numberline {3.5}Basic Algebra}{11}{section.3.5}} -\@writefile{toc}{\contentsline {section}{\numberline {3.6}Modular Exponentiation}{11}{section.3.6}} -\@writefile{toc}{\contentsline {section}{\numberline {3.7}Number Theoretic}{11}{section.3.7}} -\@writefile{toc}{\contentsline {section}{\numberline {3.8}Prime Numbers}{12}{section.3.8}} -\@writefile{toc}{\contentsline {chapter}{\numberline {4}Porting TomsFastMath}{13}{chapter.4}} -\@writefile{lof}{\addvspace {10\p@ }} -\@writefile{lot}{\addvspace {10\p@ }} -\newlabel{chap:asmops}{{4}{13}{Porting TomsFastMath\relax }{chapter.4}{}} -\@writefile{toc}{\contentsline {section}{\numberline {4.1}Getting Started}{13}{section.4.1}} -\@writefile{toc}{\contentsline {section}{\numberline {4.2}Multiply with Comba}{13}{section.4.2}} -\@writefile{toc}{\contentsline {section}{\numberline {4.3}Squaring with Comba}{15}{section.4.3}} -\@writefile{toc}{\contentsline {section}{\numberline {4.4}Montgomery with Comba}{17}{section.4.4}} diff --git a/tfm.dvi b/tfm.dvi deleted file mode 100644 index 472a069..0000000 Binary files a/tfm.dvi and /dev/null differ diff --git a/tfm.idx b/tfm.idx deleted file mode 100644 index 757d2e7..0000000 --- a/tfm.idx +++ /dev/null @@ -1,29 +0,0 @@ -\indexentry{fp\_init|hyperpage}{8} -\indexentry{fp\_set|hyperpage}{8} -\indexentry{fp\_init\_copy|hyperpage}{8} -\indexentry{fp\_iszero|hyperpage}{9} -\indexentry{fp\_iseven|hyperpage}{9} -\indexentry{fp\_isodd|hyperpage}{9} -\indexentry{fp\_neg|hyperpage}{9} -\indexentry{fp\_abs|hyperpage}{9} -\indexentry{fp\_cmp|hyperpage}{10} -\indexentry{fp\_cmp\_mag|hyperpage}{10} -\indexentry{fp\_lshd|hyperpage}{10} -\indexentry{fp\_rshd|hyperpage}{10} -\indexentry{fp\_div\_2d|hyperpage}{10} -\indexentry{fp\_mod\_2d|hyperpage}{10} -\indexentry{fp\_mul\_2d|hyperpage}{10} -\indexentry{fp\_div\_2|hyperpage}{10} -\indexentry{fp\_mul\_2|hyperpage}{10} -\indexentry{fp\_cnt\_lsb|hyperpage}{10} -\indexentry{fp\_add|hyperpage}{11} -\indexentry{fp\_sub|hyperpage}{11} -\indexentry{fp\_mul|hyperpage}{11} -\indexentry{fp\_sqr|hyperpage}{11} -\indexentry{fp\_div|hyperpage}{11} -\indexentry{fp\_mod|hyperpage}{11} -\indexentry{fp\_exptmod|hyperpage}{11} -\indexentry{fp\_invmod|hyperpage}{11} -\indexentry{fp\_gcd|hyperpage}{11} -\indexentry{fp\_lcm|hyperpage}{11} -\indexentry{fp\_isprime|hyperpage}{12} diff --git a/tfm.ilg b/tfm.ilg deleted file mode 100644 index cf7dd87..0000000 --- a/tfm.ilg +++ /dev/null @@ -1,6 +0,0 @@ -This is makeindex, version 2.14 [02-Oct-2002] (kpathsea + Thai support). -Scanning input file tfm.idx....done (29 entries accepted, 0 rejected). -Sorting entries....done (137 comparisons). -Generating output file tfm.ind....done (33 lines written, 0 warnings). -Output written in tfm.ind. -Transcript written in tfm.ilg. diff --git a/tfm.ind b/tfm.ind deleted file mode 100644 index 8a527bd..0000000 --- a/tfm.ind +++ /dev/null @@ -1,33 +0,0 @@ -\begin{theindex} - - \item fp\_abs, \hyperpage{9} - \item fp\_add, \hyperpage{11} - \item fp\_cmp, \hyperpage{10} - \item fp\_cmp\_mag, \hyperpage{10} - \item fp\_cnt\_lsb, \hyperpage{10} - \item fp\_div, \hyperpage{11} - \item fp\_div\_2, \hyperpage{10} - \item fp\_div\_2d, \hyperpage{10} - \item fp\_exptmod, \hyperpage{11} - \item fp\_gcd, \hyperpage{11} - \item fp\_init, \hyperpage{8} - \item fp\_init\_copy, \hyperpage{8} - \item fp\_invmod, \hyperpage{11} - \item fp\_iseven, \hyperpage{9} - \item fp\_isodd, \hyperpage{9} - \item fp\_isprime, \hyperpage{12} - \item fp\_iszero, \hyperpage{9} - \item fp\_lcm, \hyperpage{11} - \item fp\_lshd, \hyperpage{10} - \item fp\_mod, \hyperpage{11} - \item fp\_mod\_2d, \hyperpage{10} - \item fp\_mul, \hyperpage{11} - \item fp\_mul\_2, \hyperpage{10} - \item fp\_mul\_2d, \hyperpage{10} - \item fp\_neg, \hyperpage{9} - \item fp\_rshd, \hyperpage{10} - \item fp\_set, \hyperpage{8} - \item fp\_sqr, \hyperpage{11} - \item fp\_sub, \hyperpage{11} - -\end{theindex} diff --git a/tfm.lof b/tfm.lof deleted file mode 100644 index ab265b9..0000000 --- a/tfm.lof +++ /dev/null @@ -1,5 +0,0 @@ -\addvspace {10\p@ } -\contentsline {figure}{\numberline {1.1}{\ignorespaces Recommended Build Modes}}{5}{figure.1.1} -\addvspace {10\p@ } -\addvspace {10\p@ } -\addvspace {10\p@ } diff --git a/tfm.log b/tfm.log deleted file mode 100644 index 1462bf9..0000000 --- a/tfm.log +++ /dev/null @@ -1,336 +0,0 @@ -This is pdfeTeX, Version 3.141592-1.30.5-2.2 (Web2C 7.5.5) (format=latex 2006.9.19) 14 MAR 2007 19:58 -entering extended mode -**tfm -(./tfm.tex -LaTeX2e <2003/12/01> -Babel and hyphenation patterns for american, french, german, ngerman, b -ahasa, basque, bulgarian, catalan, croatian, czech, danish, dutch, esperanto, e -stonian, finnish, greek, icelandic, irish, italian, latin, magyar, norsk, polis -h, portuges, romanian, russian, serbian, slovak, slovene, spanish, swedish, tur -kish, ukrainian, nohyphenation, loaded. -(/usr/share/texmf/tex/latex/base/book.cls -Document Class: book 2004/02/16 v1.4f Standard LaTeX document class -(/usr/share/texmf/tex/latex/base/bk10.clo -File: bk10.clo 2004/02/16 v1.4f Standard LaTeX file (size option) -) -\c@part=\count79 -\c@chapter=\count80 -\c@section=\count81 -\c@subsection=\count82 -\c@subsubsection=\count83 -\c@paragraph=\count84 -\c@subparagraph=\count85 -\c@figure=\count86 -\c@table=\count87 -\abovecaptionskip=\skip41 -\belowcaptionskip=\skip42 -\bibindent=\dimen102 -) -(/usr/share/texmf/tex/latex/hyperref/hyperref.sty -Package: hyperref 2003/11/30 v6.74m Hypertext links for LaTeX - -(/usr/share/texmf/tex/latex/graphics/keyval.sty -Package: keyval 1999/03/16 v1.13 key=value parser (DPC) -\KV@toks@=\toks14 -) -\@linkdim=\dimen103 -\Hy@linkcounter=\count88 -\Hy@pagecounter=\count89 - -(/usr/share/texmf/tex/latex/hyperref/pd1enc.def -File: pd1enc.def 2003/11/30 v6.74m Hyperref: PDFDocEncoding definition (HO) -) -(/usr/share/texmf/tex/latex/hyperref/hyperref.cfg -File: hyperref.cfg 2002/06/06 v1.2 hyperref configuration of TeXLive and teTeX -) -Package hyperref Info: Hyper figures OFF on input line 1880. -Package hyperref Info: Link nesting OFF on input line 1885. -Package hyperref Info: Hyper index ON on input line 1888. -Package hyperref Info: Plain pages ON on input line 1893. -Package hyperref Info: Backreferencing OFF on input line 1900. - -Implicit mode ON; LaTeX internals redefined -Package hyperref Info: Bookmarks ON on input line 2004. -(/usr/share/texmf/tex/latex/html/url.sty -Package: url 1999/03/02 ver 1.4 Verb mode for urls, email addresses, and file - names -) -LaTeX Info: Redefining \url on input line 2143. -\Fld@menulength=\count90 -\Field@Width=\dimen104 -\Fld@charsize=\dimen105 -\Choice@toks=\toks15 -\Field@toks=\toks16 -Package hyperref Info: Hyper figures OFF on input line 2618. -Package hyperref Info: Link nesting OFF on input line 2623. -Package hyperref Info: Hyper index ON on input line 2626. -Package hyperref Info: backreferencing OFF on input line 2633. -Package hyperref Info: Link coloring OFF on input line 2638. -\c@Item=\count91 -\c@Hfootnote=\count92 -) -*hyperref using default driver hypertex* -(/usr/share/texmf/tex/latex/hyperref/hypertex.def -File: hypertex.def 2003/11/30 v6.74m Hyperref driver for HyperTeX specials -) -(/usr/share/texmf/tex/latex/base/makeidx.sty -Package: makeidx 2000/03/29 v1.0m Standard LaTeX package -) -(/usr/share/texmf/tex/latex/amsfonts/amssymb.sty -Package: amssymb 2002/01/22 v2.2d - -(/usr/share/texmf/tex/latex/amsfonts/amsfonts.sty -Package: amsfonts 2001/10/25 v2.2f -\@emptytoks=\toks17 -\symAMSa=\mathgroup4 -\symAMSb=\mathgroup5 -LaTeX Font Info: Overwriting math alphabet `\mathfrak' in version `bold' -(Font) U/euf/m/n --> U/euf/b/n on input line 132. -)) -(/usr/share/texmf/tex/latex/graphics/color.sty -Package: color 1999/02/16 v1.0i Standard LaTeX Color (DPC) - -(/usr/share/texmf/tex/latex/graphics/color.cfg -File: color.cfg 2005/02/03 v1.3 color configuration of teTeX/TeXLive -) -Package color Info: Driver file: dvips.def on input line 125. - -(/usr/share/texmf/tex/latex/graphics/dvips.def -File: dvips.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR) -) -(/usr/share/texmf/tex/latex/graphics/dvipsnam.def -File: dvipsnam.def 1999/02/16 v3.0i Driver-dependant file (DPC,SPQR) -)) -(/usr/share/texmf/tex/latex/base/alltt.sty -Package: alltt 1997/06/16 v2.0g defines alltt environment -) -(/usr/share/texmf/tex/latex/graphics/graphicx.sty -Package: graphicx 1999/02/16 v1.0f Enhanced LaTeX Graphics (DPC,SPQR) - -(/usr/share/texmf/tex/latex/graphics/graphics.sty -Package: graphics 2001/07/07 v1.0n Standard LaTeX Graphics (DPC,SPQR) - -(/usr/share/texmf/tex/latex/graphics/trig.sty -Package: trig 1999/03/16 v1.09 sin cos tan (DPC) -) -(/usr/share/texmf/tex/latex/graphics/graphics.cfg -File: graphics.cfg 2005/02/03 v1.3 graphics configuration of teTeX/TeXLive -) -Package graphics Info: Driver file: dvips.def on input line 80. -) -\Gin@req@height=\dimen106 -\Gin@req@width=\dimen107 -) -(/usr/share/texmf/tex/latex/tools/layout.sty -Package: layout 2000/09/25 v1.2c Show layout parameters -\oneinch=\count93 -\cnt@paperwidth=\count94 -\cnt@paperheight=\count95 -\cnt@hoffset=\count96 -\cnt@voffset=\count97 -\cnt@textheight=\count98 -\cnt@textwidth=\count99 -\cnt@topmargin=\count100 -\cnt@oddsidemargin=\count101 -\cnt@evensidemargin=\count102 -\cnt@headheight=\count103 -\cnt@headsep=\count104 -\cnt@marginparsep=\count105 -\cnt@marginparwidth=\count106 -\cnt@marginparpush=\count107 -\cnt@footskip=\count108 -\fheight=\count109 -\ref@top=\count110 -\ref@hoffset=\count111 -\ref@voffset=\count112 -\ref@head=\count113 -\ref@body=\count114 -\ref@foot=\count115 -\ref@margin=\count116 -\ref@marginwidth=\count117 -\ref@marginpar=\count118 -\Interval=\count119 -\ExtraYPos=\count120 -\PositionX=\count121 -\PositionY=\count122 -\ArrowLength=\count123 -) -\@indexfile=\write3 -\openout3 = `tfm.idx'. - - -Writing index file tfm.idx -(./tfm.aux) -\openout1 = `tfm.aux'. - -LaTeX Font Info: Checking defaults for OML/cmm/m/it on input line 49. -LaTeX Font Info: ... okay on input line 49. -LaTeX Font Info: Checking defaults for T1/cmr/m/n on input line 49. -LaTeX Font Info: ... okay on input line 49. -LaTeX Font Info: Checking defaults for OT1/cmr/m/n on input line 49. -LaTeX Font Info: ... okay on input line 49. -LaTeX Font Info: Checking defaults for OMS/cmsy/m/n on input line 49. -LaTeX Font Info: ... okay on input line 49. -LaTeX Font Info: Checking defaults for OMX/cmex/m/n on input line 49. -LaTeX Font Info: ... okay on input line 49. -LaTeX Font Info: Checking defaults for U/cmr/m/n on input line 49. -LaTeX Font Info: ... okay on input line 49. -LaTeX Font Info: Checking defaults for PD1/pdf/m/n on input line 49. -LaTeX Font Info: ... okay on input line 49. -Package hyperref Info: Link coloring OFF on input line 49. - (/usr/share/texmf/tex/latex/hyperref/nameref.sty -Package: nameref 2003/12/03 v2.21 Cross-referencing by name of section -\c@section@level=\count124 -) -LaTeX Info: Redefining \ref on input line 49. -LaTeX Info: Redefining \pageref on input line 49. -LaTeX Font Info: Try loading font information for U+msa on input line 55. - -(/usr/share/texmf/tex/latex/amsfonts/umsa.fd -File: umsa.fd 2002/01/19 v2.2g AMS font definitions -) -LaTeX Font Info: Try loading font information for U+msb on input line 55. - -(/usr/share/texmf/tex/latex/amsfonts/umsb.fd -File: umsb.fd 2002/01/19 v2.2g AMS font definitions -) [1 - - - -] [2] (./tfm.toc [3 - -]) -\tf@toc=\write4 -\openout4 = `tfm.toc'. - - [4] -(./tfm.lof) -\tf@lof=\write5 -\openout5 = `tfm.lof'. - - [5 - -] [6 - -] -Chapter 1. -[1 - -] [2] [3] - -LaTeX Warning: `h' float specifier changed to `ht'. - -[4] [5] [6] -Chapter 2. - -Underfull \vbox (badness 7649) has occurred while \output is active [] - - [7 - -] -[8] -Chapter 3. -[9 - -] [10] [11] [12] -Chapter 4. -[13 - -] [14] [15] -Overfull \hbox (74.99634pt too wide) in paragraph at lines 578--578 -[]\OT1/cmtt/m/n/10 #define SQRADDSC(i, j) - \[] - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 578--578 -[] \OT1/cmtt/m/n/10 do { fp_word t; - \[] - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 578--578 -[] \OT1/cmtt/m/n/10 t = ((fp_word)i) * ((fp_word)j); - \[] - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 578--578 -[] \OT1/cmtt/m/n/10 sc0 = (fp_digit)t; sc1 = (t >> DIGIT_BIT); sc2 = 0; - \[] - [] - - -Overfull \hbox (25.129pt too wide) in paragraph at lines 579--580 -\OT1/cmr/m/n/10 This com-putes a prod-uct and stores it in the ``sec-ondary'' c -arry reg-is-ters $[]$. - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 587--587 -[]\OT1/cmtt/m/n/10 #define SQRADDAC(i, j) - \[] - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 587--587 -[] \OT1/cmtt/m/n/10 do { fp_word t; - \[] - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 587--587 -[] \OT1/cmtt/m/n/10 t = sc0 + ((fp_word)i) * ((fp_word)j); sc0 = t; - \[] - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 587--587 -[] \OT1/cmtt/m/n/10 t = sc1 + (t >> DIGIT_BIT); sc1 = t; sc2 += t - >> DIGIT_BIT; \[] - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 597--597 -[]\OT1/cmtt/m/n/10 #define SQRADDDB - \[] - [] - - -Overfull \hbox (74.99634pt too wide) in paragraph at lines 597--597 -[] \OT1/cmtt/m/n/10 do { fp_word t; - \[] - [] - - -Overfull \hbox (190.49533pt too wide) in paragraph at lines 597--597 -[] \OT1/cmtt/m/n/10 t = ((fp_word)sc0) + ((fp_word)sc0) + c0; c0 = t; - \[] - [] - - -Overfull \hbox (190.49533pt too wide) in paragraph at lines 597--597 -[] \OT1/cmtt/m/n/10 t = ((fp_word)sc1) + ((fp_word)sc1) + c1 + (t >> DIGIT_BI -T); c1 = t; \[] - [] - - -Overfull \hbox (190.49533pt too wide) in paragraph at lines 597--597 -[] \OT1/cmtt/m/n/10 c2 = c2 + ((fp_word)sc2) + ((fp_word)sc2) + (t >> DIGIT_B -IT); \[] - [] - -[16] [17] (./tfm.ind [18] [19 - - -]) (./tfm.aux) ) -Here is how much of TeX's memory you used: - 2714 strings out of 94433 - 35914 string characters out of 1175589 - 81342 words of memory out of 1000000 - 5899 multiletter control sequences out of 10000+50000 - 15453 words of font info for 59 fonts, out of 500000 for 2000 - 580 hyphenation exceptions out of 1000 - 25i,9n,25p,195b,321s stack positions out of 1500i,500n,5000p,200000b,5000s - -Output written on tfm.dvi (25 pages, 54212 bytes). diff --git a/tfm.toc b/tfm.toc deleted file mode 100644 index dc658f6..0000000 --- a/tfm.toc +++ /dev/null @@ -1,38 +0,0 @@ -\contentsline {chapter}{\numberline {1}Introduction}{1}{chapter.1} -\contentsline {section}{\numberline {1.1}What is TomsFastMath?}{1}{section.1.1} -\contentsline {section}{\numberline {1.2}License}{2}{section.1.2} -\contentsline {section}{\numberline {1.3}Building}{2}{section.1.3} -\contentsline {subsection}{\numberline {1.3.1}Intel CC}{2}{subsection.1.3.1} -\contentsline {subsection}{\numberline {1.3.2}MSVC}{2}{subsection.1.3.2} -\contentsline {subsection}{\numberline {1.3.3}Build Limitations}{3}{subsection.1.3.3} -\contentsline {subsection}{\numberline {1.3.4}Optimization Configuration}{3}{subsection.1.3.4} -\contentsline {subsubsection}{x86--32}{3}{section*.3} -\contentsline {subsubsection}{SSE2}{3}{section*.4} -\contentsline {subsubsection}{x86--64}{4}{section*.5} -\contentsline {subsubsection}{ARM}{4}{section*.6} -\contentsline {subsubsection}{PPC32}{4}{section*.7} -\contentsline {subsubsection}{PPC64}{4}{section*.8} -\contentsline {subsubsection}{AVR32}{4}{section*.9} -\contentsline {subsubsection}{Future Releases}{4}{section*.10} -\contentsline {subsection}{\numberline {1.3.5}Build Configurations}{5}{subsection.1.3.5} -\contentsline {subsection}{\numberline {1.3.6}Precision Configuration}{5}{subsection.1.3.6} -\contentsline {chapter}{\numberline {2}Getting Started}{7}{chapter.2} -\contentsline {section}{\numberline {2.1}Data Types}{7}{section.2.1} -\contentsline {section}{\numberline {2.2}Initialization}{8}{section.2.2} -\contentsline {subsection}{\numberline {2.2.1}Simple Initialization}{8}{subsection.2.2.1} -\contentsline {subsection}{\numberline {2.2.2}Initialize Small Constants}{8}{subsection.2.2.2} -\contentsline {subsection}{\numberline {2.2.3}Initialize Copy}{8}{subsection.2.2.3} -\contentsline {chapter}{\numberline {3}Arithmetic Operations}{9}{chapter.3} -\contentsline {section}{\numberline {3.1}Odds and Evens}{9}{section.3.1} -\contentsline {section}{\numberline {3.2}Sign Manipulation}{9}{section.3.2} -\contentsline {section}{\numberline {3.3}Comparisons}{10}{section.3.3} -\contentsline {section}{\numberline {3.4}Shifting}{10}{section.3.4} -\contentsline {section}{\numberline {3.5}Basic Algebra}{11}{section.3.5} -\contentsline {section}{\numberline {3.6}Modular Exponentiation}{11}{section.3.6} -\contentsline {section}{\numberline {3.7}Number Theoretic}{11}{section.3.7} -\contentsline {section}{\numberline {3.8}Prime Numbers}{12}{section.3.8} -\contentsline {chapter}{\numberline {4}Porting TomsFastMath}{13}{chapter.4} -\contentsline {section}{\numberline {4.1}Getting Started}{13}{section.4.1} -\contentsline {section}{\numberline {4.2}Multiply with Comba}{13}{section.4.2} -\contentsline {section}{\numberline {4.3}Squaring with Comba}{15}{section.4.3} -\contentsline {section}{\numberline {4.4}Montgomery with Comba}{17}{section.4.4}