Implementation notes: amd64, sand, crypto_hash/fugue384

Computer: sand
Architecture: amd64
CPU ID: GenuineIntel-000506e3-bfebfbff
SUPERCOP version: 20171218
Operation: crypto_hash
Primitive: fugue384
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
34944? ? ?? ? ?ccalik/aesniclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2018041320171218
34988? ? ?? ? ?ccalik/aesniclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018041320171218
41072? ? ?? ? ?ccalik/vpermclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments2018041320171218
41082? ? ?? ? ?ccalik/vpermclang_-O3_-fwrapv_-march=native_-fomit-frame-pointer_-Qunused-arguments2018041320171218

Compiler output

Implementation: crypto_hash/fugue384/ccalik/vperm
Compiler: cc
hash.c: hash.c:448:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: TIX256(pmsg, ctx->state[1], ctx->state[0], ctx->state[6], ctx->state[8], _t0, _t1, _t2);
hash.c: ^
hash.c: hash.c:169:2: note: expanded from macro 'TIX256'
hash.c: TRANSFORM(t1, _k_ipt, t2, t3);\
hash.c: ^
hash.c: ./vperm.h:52:7: note: expanded from macro 'TRANSFORM'
hash.c: t1 = _mm_shuffle_epi8(*((__m128i*)table + 1), t1);\
hash.c: ^
hash.c: hash.c:448:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: hash.c:169:2: note: expanded from macro 'TIX256'
hash.c: TRANSFORM(t1, _k_ipt, t2, t3);\
hash.c: ^
hash.c: ./vperm.h:53:7: note: expanded from macro 'TRANSFORM'
hash.c: x = _mm_shuffle_epi8(*((__m128i*)table + 0), x);\
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:265:20: note: expanded from macro 'SUBSTITUTE'
hash.c: #define SUBSTITUTE SUBSTITUTE_VPERM_CORE
hash.c: ^
hash.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
cc ccalik/vperm
clang -O3 -fomit-frame-pointer -Qunused-arguments ccalik/vperm
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/vperm
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/vperm
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/vperm

Compiler output

Implementation: crypto_hash/fugue384/ccalik/aesni
Compiler: cc
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: SUBROUND256_2(ctx->state[8], ctx->state[9], ctx->state[7], ctx->state[2], ctx->state[7], ctx->state[8], ctx->state[6], ctx->state[1]);
hash.c: ^
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:249:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_shuffle_epi8(r0, M128(_inv_shift_rows));\
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_aesenclast_si128' requires target feature 'aes', but would be inlined into function 'Compress256' that is compiled without support for 'aes'
hash.c: hash.c:340:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUBSTITUTE(r0, _t1, _t2, _t3, _t0);\
hash.c: ^
hash.c: hash.c:250:10: note: expanded from macro 'SUBSTITUTE'
hash.c: _t2 = _mm_aesenclast_si128(_t2, M128(_zero))
hash.c: ^
hash.c: hash.c:449:4: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'Compress256' that is compiled without support for 'ssse3'
hash.c: hash.c:341:2: note: expanded from macro 'SUBROUND256_2'
hash.c: SUPERMIX(_t2, _t3, _t0, _t1, r0);\
hash.c: ^
hash.c: hash.c:253:2: note: expanded from macro 'SUPERMIX'
hash.c: PRESUPERMIX(t0, t1, t2, t3, t4);\
hash.c: ^
hash.c: hash.c:245:25: note: expanded from macro 'PRESUPERMIX'
hash.c: s2 = _mm_xor_si128(s2, _mm_shuffle_epi8(M128(_mul2mask), t1));\
hash.c: ...

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
cc ccalik/aesni
clang -O3 -fomit-frame-pointer -Qunused-arguments ccalik/aesni
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/aesni
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/aesni
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/aesni

Compiler output

Implementation: crypto_hash/fugue384/ccalik/aesni
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: /tmp/try-anything-c97005.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: random() may return deterministic values, is that what you want?
try.c: /tmp/try-anything-28cdbf.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ccalik/aesni

Compiler output

Implementation: crypto_hash/fugue384/ccalik/vperm
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: /tmp/try-anything-e853c0.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: random() may return deterministic values, is that what you want?
try.c: /tmp/try-anything-ec6ea7.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments ccalik/vperm

Compiler output

Implementation: crypto_hash/fugue384/ccalik/aesni
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-7578c0.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: random() may return deterministic values, is that what you want?
try.c: /tmp/try-anything-2a418e.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/aesni

Compiler output

Implementation: crypto_hash/fugue384/ccalik/vperm
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: /tmp/try-anything-de2c6c.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: random() may return deterministic values, is that what you want?
try.c: /tmp/try-anything-0a8943.o: In function `alignedcalloc':
try.c: try-anything.c:(.text+0x...): warning: random() may return deterministic values, is that what you want?

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments ccalik/vperm

Compiler output

Implementation: crypto_hash/fugue384/ccalik/vperm
Compiler: gcc
hash.c: In file included from hash.c:20:
hash.c: hash_api.h:29:23: error: tmmintrin.h: No such file or directory
hash.c: In file included from hash.c:20:
hash.c: hash_api.h:35: error: expected specifier-qualifier-list before '__m128i'
hash.c: hash.c: In function 'Compress256':
hash.c: hash.c:442: error: '__m128i' undeclared (first use in this function)
hash.c: hash.c:442: error: (Each undeclared identifier is reported only once
hash.c: hash.c:442: error: for each function it appears in.)
hash.c: hash.c:442: error: expected ';' before '_t0'
hash.c: hash.c:445: error: 'hashState' has no member named 'base'
hash.c: hash.c:448: error: '_t0' undeclared (first use in this function)
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: '_t1' undeclared (first use in this function)
hash.c: hash.c:448: error: expected expression before ')' token
hash.c: hash.c:448: error: expected expression before ')' token
hash.c: hash.c:448: error: expected expression before ')' token
hash.c: hash.c:448: error: expected expression before ')' token
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: ...

Number of similar (compiler,implementation) pairs: 66, namely:
CompilerImplementations
gcc ccalik/vperm
gcc -O2 -fomit-frame-pointer ccalik/vperm
gcc -O3 -fomit-frame-pointer ccalik/vperm
gcc -O -fomit-frame-pointer ccalik/vperm
gcc -Os -fomit-frame-pointer ccalik/vperm
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ccalik/vperm
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ccalik/vperm
gcc -fno-schedule-insns -O -fomit-frame-pointer ccalik/vperm
gcc -fno-schedule-insns -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops ccalik/vperm
gcc -funroll-loops -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ccalik/vperm
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ccalik/vperm
gcc -m64 -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -O3 -fomit-frame-pointer ccalik/vperm
gcc -m64 -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -Os -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=k8 -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=k8 -Os -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=nocona -O -fomit-frame-pointer ccalik/vperm
gcc -m64 -march=nocona -Os -fomit-frame-pointer ccalik/vperm
gcc -march=k8 -O2 -fomit-frame-pointer ccalik/vperm
gcc -march=k8 -O3 -fomit-frame-pointer ccalik/vperm
gcc -march=k8 -O -fomit-frame-pointer ccalik/vperm
gcc -march=k8 -Os -fomit-frame-pointer ccalik/vperm
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ccalik/vperm
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ccalik/vperm
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ccalik/vperm
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ccalik/vperm
gcc -march=nocona -O2 -fomit-frame-pointer ccalik/vperm
gcc -march=nocona -O3 -fomit-frame-pointer ccalik/vperm
gcc -march=nocona -O -fomit-frame-pointer ccalik/vperm
gcc -march=nocona -Os -fomit-frame-pointer ccalik/vperm

Compiler output

Implementation: crypto_hash/fugue384/ccalik/aesni
Compiler: gcc
hash.c: In file included from hash.c:20:
hash.c: hash_api.h:29:23: error: tmmintrin.h: No such file or directory
hash.c: In file included from hash.c:20:
hash.c: hash_api.h:35: error: expected specifier-qualifier-list before '__m128i'
hash.c: hash.c:26:23: error: wmmintrin.h: No such file or directory
hash.c: hash.c: In function 'Compress256':
hash.c: hash.c:442: error: '__m128i' undeclared (first use in this function)
hash.c: hash.c:442: error: (Each undeclared identifier is reported only once
hash.c: hash.c:442: error: for each function it appears in.)
hash.c: hash.c:442: error: expected ';' before '_t0'
hash.c: hash.c:445: error: 'hashState' has no member named 'base'
hash.c: hash.c:448: error: '_t0' undeclared (first use in this function)
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:448: error: 'hashState' has no member named 'state'
hash.c: hash.c:449: error: 'hashState' has no member named 'state'
hash.c: hash.c:449: error: '_t1' undeclared (first use in this function)
hash.c: hash.c:449: error: 'hashState' has no member named 'state'
hash.c: ...

Number of similar (compiler,implementation) pairs: 66, namely:
CompilerImplementations
gcc ccalik/aesni
gcc -O2 -fomit-frame-pointer ccalik/aesni
gcc -O3 -fomit-frame-pointer ccalik/aesni
gcc -O -fomit-frame-pointer ccalik/aesni
gcc -Os -fomit-frame-pointer ccalik/aesni
gcc -fno-schedule-insns -O2 -fomit-frame-pointer ccalik/aesni
gcc -fno-schedule-insns -O3 -fomit-frame-pointer ccalik/aesni
gcc -fno-schedule-insns -O -fomit-frame-pointer ccalik/aesni
gcc -fno-schedule-insns -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops ccalik/aesni
gcc -funroll-loops -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer ccalik/aesni
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=k8 -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=k8 -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=k8 -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=k8 -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=native -mtune=native -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=native -mtune=native -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=native -mtune=native -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=native -mtune=native -Os -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=nocona -O2 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=nocona -O3 -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=nocona -O -fomit-frame-pointer ccalik/aesni
gcc -m64 -march=nocona -Os -fomit-frame-pointer ccalik/aesni
gcc -march=k8 -O2 -fomit-frame-pointer ccalik/aesni
gcc -march=k8 -O3 -fomit-frame-pointer ccalik/aesni
gcc -march=k8 -O -fomit-frame-pointer ccalik/aesni
gcc -march=k8 -Os -fomit-frame-pointer ccalik/aesni
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv ccalik/aesni
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv ccalik/aesni
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv ccalik/aesni
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv ccalik/aesni
gcc -march=nocona -O2 -fomit-frame-pointer ccalik/aesni
gcc -march=nocona -O3 -fomit-frame-pointer ccalik/aesni
gcc -march=nocona -O -fomit-frame-pointer ccalik/aesni
gcc -march=nocona -Os -fomit-frame-pointer ccalik/aesni