diff options
Diffstat (limited to 'src/Specific/solinas64_2e511m187')
-rwxr-xr-x | src/Specific/solinas64_2e511m187/compiler.sh | 2 | ||||
-rwxr-xr-x | src/Specific/solinas64_2e511m187/compilerxx.sh | 2 | ||||
-rw-r--r-- | src/Specific/solinas64_2e511m187/feadd.v | 14 | ||||
-rw-r--r-- | src/Specific/solinas64_2e511m187/feaddDisplay.v | 4 | ||||
-rw-r--r-- | src/Specific/solinas64_2e511m187/fesub.v | 14 | ||||
-rw-r--r-- | src/Specific/solinas64_2e511m187/fesubDisplay.v | 4 |
6 files changed, 38 insertions, 2 deletions
diff --git a/src/Specific/solinas64_2e511m187/compiler.sh b/src/Specific/solinas64_2e511m187/compiler.sh index dee8f1f06..cde957ebd 100755 --- a/src/Specific/solinas64_2e511m187/compiler.sh +++ b/src/Specific/solinas64_2e511m187/compiler.sh @@ -1,4 +1,4 @@ #!/bin/sh set -eu -gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_limbs='10' -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dq_mpz='(1_mpz<<511) - 187' "$@" +gcc -march=native -mtune=native -std=gnu11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@" diff --git a/src/Specific/solinas64_2e511m187/compilerxx.sh b/src/Specific/solinas64_2e511m187/compilerxx.sh index ee13b371d..f7e6dcbbd 100755 --- a/src/Specific/solinas64_2e511m187/compilerxx.sh +++ b/src/Specific/solinas64_2e511m187/compilerxx.sh @@ -1,4 +1,4 @@ #!/bin/sh set -eu -g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_limbs='10' -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' -Dq_mpz='(1_mpz<<511) - 187' "$@" +g++ -march=native -mtune=native -std=gnu++11 -O3 -flto -fomit-frame-pointer -fwrapv -Wno-attributes -Dmodulus_bytes_val='51.1' -Dlimb_t=uint64_t -Dq_mpz='(1_mpz<<511) - 187' -Dmodulus_limbs='10' -Dlimb_weight_gaps_array='{52,51,51,51,51,51,51,51,51,51}' -Dmodulus_array='{0x7f,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x45}' "$@" diff --git a/src/Specific/solinas64_2e511m187/feadd.v b/src/Specific/solinas64_2e511m187/feadd.v new file mode 100644 index 000000000..2f2b66bbc --- /dev/null +++ b/src/Specific/solinas64_2e511m187/feadd.v @@ -0,0 +1,14 @@ +Require Import Crypto.Arithmetic.PrimeFieldTheorems. +Require Import Crypto.Specific.solinas64_2e511m187.Synthesis. + +(* TODO : change this to field once field isomorphism happens *) +Definition add : + { add : feBW_tight -> feBW_tight -> feBW_loose + | forall a b, phiBW_loose (add a b) = F.add (phiBW_tight a) (phiBW_tight b) }. +Proof. + Set Ltac Profiling. + Time synthesize_add (). + Show Ltac Profile. +Time Defined. + +Print Assumptions add. diff --git a/src/Specific/solinas64_2e511m187/feaddDisplay.v b/src/Specific/solinas64_2e511m187/feaddDisplay.v new file mode 100644 index 000000000..cd0b43034 --- /dev/null +++ b/src/Specific/solinas64_2e511m187/feaddDisplay.v @@ -0,0 +1,4 @@ +Require Import Crypto.Specific.solinas64_2e511m187.feadd. +Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon. + +Check display add. diff --git a/src/Specific/solinas64_2e511m187/fesub.v b/src/Specific/solinas64_2e511m187/fesub.v new file mode 100644 index 000000000..fc8693275 --- /dev/null +++ b/src/Specific/solinas64_2e511m187/fesub.v @@ -0,0 +1,14 @@ +Require Import Crypto.Arithmetic.PrimeFieldTheorems. +Require Import Crypto.Specific.solinas64_2e511m187.Synthesis. + +(* TODO : change this to field once field isomorphism happens *) +Definition sub : + { sub : feBW_tight -> feBW_tight -> feBW_loose + | forall a b, phiBW_loose (sub a b) = F.sub (phiBW_tight a) (phiBW_tight b) }. +Proof. + Set Ltac Profiling. + Time synthesize_sub (). + Show Ltac Profile. +Time Defined. + +Print Assumptions sub. diff --git a/src/Specific/solinas64_2e511m187/fesubDisplay.v b/src/Specific/solinas64_2e511m187/fesubDisplay.v new file mode 100644 index 000000000..9aefe630c --- /dev/null +++ b/src/Specific/solinas64_2e511m187/fesubDisplay.v @@ -0,0 +1,4 @@ +Require Import Crypto.Specific.solinas64_2e511m187.fesub. +Require Import Crypto.Specific.Framework.IntegrationTestDisplayCommon. + +Check display sub. |