Implementation notes: armeabi, bblack, crypto_hash/fugue256

Computer: bblack
Microarchitecture: armeabi; Cortex-A8 (413fc082)
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20240425
Operation: crypto_hash
Primitive: fugue256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
9628829530 0 036687 440 704T:sphlibgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
9887245524 0 053234 448 704T:ANSI_opt32gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
9903645568 0 054310 448 704T:ANSI_opt32gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
10245250524 0 070735 412 720T:ANSI_opt32clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
10528850400 0 059477 408 704T:ANSI_opt32clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
10532850536 0 061951 412 712T:ANSI_opt32clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
10537250504 0 061215 412 704T:ANSI_opt32clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
10541250504 0 061215 412 704T:ANSI_opt32clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
10749637976 0 046614 440 704T:ANSI_opt32gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
10999240768 0 049715 412 704T:sphlibclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
11012041024 0 051605 416 704T:sphlibclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
11012041024 0 051605 416 704T:sphlibclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
11037241100 0 052389 416 712T:sphlibclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
11158042072 0 062157 416 720T:sphlibclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
11520036032 0 044660 452 704T:sphlibgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
12274435728 0 043275 448 704T:sphlibgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
13341230498 0 037995 448 704T:sphlibgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
13899240800 0 048298 448 704T:ANSI_opt32gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
15654089040 0 0100455 412 712T:ANSI_opt64clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
15674089040 0 099751 412 704T:ANSI_opt64clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
15749289268 0 0109479 412 720T:ANSI_opt64clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
15757688564 0 097637 408 704T:ANSI_opt64clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425
16645268184 0 076826 440 704T:ANSI_opt64gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
16987279928 0 087646 448 704T:ANSI_opt64gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
17020079968 0 088710 448 704T:ANSI_opt64gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
18345271284 0 078790 448 704T:ANSI_opt64gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024050420240425
20374489040 0 099751 412 704T:ANSI_opt64clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024050420240425

Compiler output


hash.c: hash.c:32:27: warning: signed shift result (0x6671135F000000) requires 56 bits to represent, but 'int' only has 32 bits [-Wshift-overflow]
hash.c:                            HO2BE_4(0xe952bdde),HO2BE_4(0x6671135f),HO2BE_4(0xe0d4f668),HO2BE_4(0xd2b0b594),
hash.c:                                                ^~~~~~~~~~~~~~~~~~~
hash.c: ./aestab_t.h:19:26: note: expanded from macro 'HO2BE_4'
hash.c: #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                        ~~^ ~~
hash.c: hash.c:32:27: warning: signed shift result (0x6671135F00) requires 40 bits to represent, but 'int' only has 32 bits [-Wshift-overflow]
hash.c:                            HO2BE_4(0xe952bdde),HO2BE_4(0x6671135f),HO2BE_4(0xe0d4f668),HO2BE_4(0xd2b0b594),
hash.c:                                                ^~~~~~~~~~~~~~~~~~~
hash.c: ./aestab_t.h:19:36: note: expanded from macro 'HO2BE_4'
hash.c: #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                                  ~~^ ~
hash.c: hash.c:33:67: warning: signed shift result (0x34F8C248000000) requires 55 bits to represent, but 'int' only has 32 bits [-Wshift-overflow]
hash.c:                            HO2BE_4(0xf96c621d),HO2BE_4(0xfbf929de),HO2BE_4(0x9149e899),HO2BE_4(0x34f8c248)};
hash.c:                                                                                        ^~~~~~~~~~~~~~~~~~~
hash.c: ./aestab_t.h:19:26: note: expanded from macro 'HO2BE_4'
hash.c: #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                        ~~^ ~~
hash.c: hash.c:33:67: warning: signed shift result (0x34F8C24800) requires 39 bits to represent, but 'int' only has 32 bits [-Wshift-overflow]
hash.c:                            HO2BE_4(0xf96c621d),HO2BE_4(0xfbf929de),HO2BE_4(0x9149e899),HO2BE_4(0x34f8c248)};
hash.c:                                                                                        ^~~~~~~~~~~~~~~~~~~
hash.c: ./aestab_t.h:19:36: note: expanded from macro 'HO2BE_4'
hash.c: #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                                  ~~^ ~
hash.c: 4 warnings generated.

Number of similar (implementation,compiler) pairs: 10, namely:
ImplementationCompiler
T:ANSI_opt32clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt32clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt32clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt32clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt32clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt64clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt64clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt64clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt64clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:ANSI_opt64clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


hash.c: In file included from aestab.h:4,
hash.c:                  from fugue_256_code.h:13,
hash.c:                  from hash.c:7:
hash.c: hash.c: In function 'crypto_hash_fugue256_ANSI_opt32_timingleaks':
hash.c: aestab_t.h:19:26: warning: result of '1718686559 << 24' requires 56 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=]
hash.c:  #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                           ^~
hash.c: hash.c:32:27: note: in expansion of macro 'HO2BE_4'
hash.c:        HO2BE_4(0xe952bdde),HO2BE_4(0x6671135f),HO2BE_4(0xe0d4f668),HO2BE_4(0xd2b0b594),
hash.c:                            ^~~~~~~
hash.c: aestab_t.h:19:36: warning: result of '1718686559 << 8' requires 40 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=]
hash.c:  #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                                     ^~
hash.c: hash.c:32:27: note: in expansion of macro 'HO2BE_4'
hash.c:        HO2BE_4(0xe952bdde),HO2BE_4(0x6671135f),HO2BE_4(0xe0d4f668),HO2BE_4(0xd2b0b594),
hash.c:                            ^~~~~~~
hash.c: aestab_t.h:19:26: warning: result of '888717896 << 24' requires 55 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=]
hash.c:  #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                           ^~
hash.c: hash.c:33:67: note: in expansion of macro 'HO2BE_4'
hash.c:        HO2BE_4(0xf96c621d),HO2BE_4(0xfbf929de),HO2BE_4(0x9149e899),HO2BE_4(0x34f8c248)};
hash.c:                                                                    ^~~~~~~
hash.c: aestab_t.h:19:36: warning: result of '888717896 << 8' requires 39 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=]
hash.c:  #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                                     ^~
hash.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:ANSI_opt32gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:ANSI_opt32gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:ANSI_opt32gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:ANSI_opt32gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Compiler output


hash.c: In file included from aestab.h:4,
hash.c:                  from fugue_256_code.h:13,
hash.c:                  from hash.c:7:
hash.c: hash.c: In function 'crypto_hash_fugue256_ANSI_opt64_timingleaks':
hash.c: aestab_t.h:19:26: warning: result of '1718686559 << 24' requires 56 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=]
hash.c:  #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                           ^~
hash.c: hash.c:32:27: note: in expansion of macro 'HO2BE_4'
hash.c:        HO2BE_4(0xe952bdde),HO2BE_4(0x6671135f),HO2BE_4(0xe0d4f668),HO2BE_4(0xd2b0b594),
hash.c:                            ^~~~~~~
hash.c: aestab_t.h:19:36: warning: result of '1718686559 << 8' requires 40 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=]
hash.c:  #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                                     ^~
hash.c: hash.c:32:27: note: in expansion of macro 'HO2BE_4'
hash.c:        HO2BE_4(0xe952bdde),HO2BE_4(0x6671135f),HO2BE_4(0xe0d4f668),HO2BE_4(0xd2b0b594),
hash.c:                            ^~~~~~~
hash.c: aestab_t.h:19:26: warning: result of '888717896 << 24' requires 55 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=]
hash.c:  #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                           ^~
hash.c: hash.c:33:67: note: in expansion of macro 'HO2BE_4'
hash.c:        HO2BE_4(0xf96c621d),HO2BE_4(0xfbf929de),HO2BE_4(0x9149e899),HO2BE_4(0x34f8c248)};
hash.c:                                                                    ^~~~~~~
hash.c: aestab_t.h:19:36: warning: result of '888717896 << 8' requires 39 bits to represent, but 'int' only has 32 bits [-Wshift-overflow=]
hash.c:  #define HO2BE_4(_x)  ((_x<<24)|((_x<<8)&0xff0000)|((_x>>8)&0xff00)|(_x>>24))
hash.c:                                     ^~
hash.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:ANSI_opt64gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:ANSI_opt64gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:ANSI_opt64gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:ANSI_opt64gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)

Namespace violations


fugue.o sph_fugue224 T
fugue.o sph_fugue224_addbits_and_close T
fugue.o sph_fugue224_close T
fugue.o sph_fugue224_init T
fugue.o sph_fugue256 T
fugue.o sph_fugue256_addbits_and_close T
fugue.o sph_fugue256_close T
fugue.o sph_fugue256_init T
fugue.o sph_fugue384 T
fugue.o sph_fugue384_addbits_and_close T
fugue.o sph_fugue384_close T
fugue.o sph_fugue384_init T
fugue.o sph_fugue512 T
fugue.o sph_fugue512_addbits_and_close T
fugue.o sph_fugue512_close T
fugue.o sph_fugue512_init T

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:sphlibclang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibclang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibclang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibclang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibclang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:sphlibgcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlibgcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlibgcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)
T:sphlibgcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE (8.3.0)