Implementation notes: mipso32, loongson, crypto_dh/ed448goldilocks

Computer: loongson
Architecture: mipso32
CPU ID: unknown CPU ID
SUPERCOP version: 20161026
Operation: crypto_dh
Primitive: ed448goldilocks
TimeImplementationCompilerBenchmark dateSUPERCOP version
596932864gcc -funroll-loops -march=loongson2f -mabi=n32 -O32016122120161026
629489464gcc -march=loongson2f -mabi=n32 -O32016122120161026
749098264gcc -funroll-loops -march=loongson2f -mabi=n32 -O22016122120161026
817160864gcc -funroll-loops -march=loongson2f -mabi=n32 -Os2016122120161026
840009664gcc -march=loongson2f -mabi=n32 -Os2016122120161026
913828064gcc -march=loongson2f -mabi=n32 -O22016122120161026
15107796arm32gcc -funroll-loops -march=loongson2f -mabi=n32 -O32016122120161026
15735694arm32gcc -march=loongson2f -mabi=n32 -O32016122120161026
16350594arm32gcc -funroll-loops -march=loongson2f -mabi=n32 -O22016122120161026
18224316arm32gcc -march=loongson2f -mabi=n32 -O22016122120161026
18662314arm32gcc -funroll-loops -march=loongson2f -mabi=n32 -Os2016122120161026
18907136arm32gcc -march=loongson2f -mabi=n32 -Os2016122120161026
2443783832gcc -march=loongson2f -mabi=n32 -O32016122120161026
2493472632gcc -funroll-loops -march=loongson2f -mabi=n32 -O32016122120161026
2649258032gcc -funroll-loops -march=loongson2f -mabi=n32 -O22016122120161026
2799484032gcc -march=loongson2f -mabi=n32 -O22016122120161026
3157512032gcc -funroll-loops -march=loongson2f -mabi=n32 -Os2016122120161026
3195560032gcc -march=loongson2f -mabi=n32 -Os2016122120161026

Compiler output

Implementation: crypto_dh/ed448goldilocks/32
Compiler: gcc -funroll-loops -march=loongson2f -mabi=n32 -O2
ec_point.c: ec_point.c: In function 'elligator_2s_inject':
ec_point.c: ec_point.c:864:5: warning: this decimal constant is unsigned only in ISO C90
ec_point.c: p448_mulw ( &L3, &L2, 3054649120 );
ec_point.c: ^

Number of similar (compiler,implementation) pairs: 18, namely:
CompilerImplementations
gcc -funroll-loops -march=loongson2f -mabi=n32 -O2 32 64 arm32
gcc -funroll-loops -march=loongson2f -mabi=n32 -O3 32 64 arm32
gcc -funroll-loops -march=loongson2f -mabi=n32 -Os 32 64 arm32
gcc -march=loongson2f -mabi=n32 -O2 32 64 arm32
gcc -march=loongson2f -mabi=n32 -O3 32 64 arm32
gcc -march=loongson2f -mabi=n32 -Os 32 64 arm32

Compiler output

Implementation: crypto_dh/ed448goldilocks/amd64
Compiler: gcc -funroll-loops -march=loongson2f -mabi=n32 -O2
ec_point.c: ec_point.c: In function 'elligator_2s_inject':
ec_point.c: ec_point.c:864:5: warning: this decimal constant is unsigned only in ISO C90
ec_point.c: p448_mulw ( &L3, &L2, 3054649120 );
ec_point.c: ^
p448.c: In file included from p448.c:6:0:
p448.c: x86-64-arith.h: In function 'p448_mul':
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rdx' in 'asm'
p448.c: __asm__ volatile
p448.c: ^
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rax' in 'asm'
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rdx' in 'asm'
p448.c: __asm__ volatile
p448.c: ^
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rax' in 'asm'
p448.c: ...
p448.c: ^
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rax' in 'asm'
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rdx' in 'asm'
p448.c: __asm__ volatile
p448.c: ^
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rax' in 'asm'
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rdx' in 'asm'
p448.c: __asm__ volatile
p448.c: ^
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rax' in 'asm'

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -funroll-loops -march=loongson2f -mabi=n32 -O2 amd64
gcc -funroll-loops -march=loongson2f -mabi=n32 -O3 amd64
gcc -march=loongson2f -mabi=n32 -O2 amd64
gcc -march=loongson2f -mabi=n32 -O3 amd64

Compiler output

Implementation: crypto_dh/ed448goldilocks/amd64
Compiler: gcc -funroll-loops -march=loongson2f -mabi=n32 -Os
ec_point.c: ec_point.c: In function 'elligator_2s_inject':
ec_point.c: ec_point.c:864:5: warning: this decimal constant is unsigned only in ISO C90
ec_point.c: p448_mulw ( &L3, &L2, 3054649120 );
ec_point.c: ^
p448.c: In file included from p448.c:6:0:
p448.c: x86-64-arith.h: In function 'mac':
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rdx' in 'asm'
p448.c: __asm__ volatile
p448.c: ^
p448.c: x86-64-arith.h:94:3: error: unknown register name 'rax' in 'asm'
p448.c: x86-64-arith.h: In function 'mac_rm':
p448.c: x86-64-arith.h:153:3: error: unknown register name 'rdx' in 'asm'
p448.c: __asm__ volatile
p448.c: ^
p448.c: ...
p448.c: x86-64-arith.h:208:3: error: unknown register name 'rax' in 'asm'
p448.c: x86-64-arith.h: In function 'p448_sqr':
p448.c: x86-64-arith.h:234:3: error: unknown register name 'rdx' in 'asm'
p448.c: __asm__ volatile
p448.c: ^
p448.c: x86-64-arith.h:234:3: error: unknown register name 'rax' in 'asm'
p448.c: x86-64-arith.h:234:3: error: unknown register name 'rdx' in 'asm'
p448.c: __asm__ volatile
p448.c: ^
p448.c: x86-64-arith.h:234:3: error: unknown register name 'rax' in 'asm'

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc -funroll-loops -march=loongson2f -mabi=n32 -Os amd64
gcc -march=loongson2f -mabi=n32 -Os amd64