Implementation notes: amd64, oki, crypto_sign/gravitysphincsm

Computer: oki
Architecture: amd64
CPU ID: GenuineIntel-00050654-bfebfbff
SUPERCOP version: 20181123
Operation: crypto_sign
Primitive: gravitysphincsm
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
16700628? ? ?? ? ?fastgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv2019011420181123
16711006? ? ?? ? ?fastgcc_-m64_-march=native_-mtune=native_-O_-fomit-frame-pointer2019011420181123
16804450? ? ?? ? ?fastgcc_-m64_-march=native_-mtune=native_-O2_-fomit-frame-pointer2019011420181123
16882822? ? ?? ? ?fastgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv2019011420181123
16941940? ? ?? ? ?fastgcc_-m64_-march=corei7-avx_-O3_-fomit-frame-pointer2019011420181123
16952994? ? ?? ? ?fastgcc_-m64_-march=core-avx-i_-O3_-fomit-frame-pointer2019011420181123
17054318? ? ?? ? ?fastgcc_-m64_-march=core-avx2_-O3_-fomit-frame-pointer2019011420181123
17179752? ? ?? ? ?fastclang_-O3_-fwrapv_-mavx_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011420181123
17250058? ? ?? ? ?fastgcc_-m64_-march=native_-mtune=native_-Os_-fomit-frame-pointer2019011420181123
17258272? ? ?? ? ?fastgcc_-m64_-march=native_-mtune=native_-O3_-fomit-frame-pointer2019011420181123
17316170? ? ?? ? ?fastgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv2019011420181123
17323516? ? ?? ? ?fastclang_-O3_-fwrapv_-march=x86-64_-mcpu=core-avx2_-mavx2_-maes_-mpclmul_-fomit-frame-pointer_-Qunused-arguments2019011420181123
17360840? ? ?? ? ?fastgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv2019011420181123
17425780? ? ?? ? ?fastgcc_-m64_-march=core-avx-i_-O2_-fomit-frame-pointer2019011420181123
17454702? ? ?? ? ?fastgcc_-m64_-march=corei7-avx_-O2_-fomit-frame-pointer2019011420181123
17503698? ? ?? ? ?fastgcc_-m64_-march=core-avx-i_-O_-fomit-frame-pointer2019011420181123
17517084? ? ?? ? ?fastgcc_-m64_-march=corei7-avx_-O_-fomit-frame-pointer2019011420181123
17613802? ? ?? ? ?fastgcc_-m64_-march=core-avx2_-O_-fomit-frame-pointer2019011420181123
18044706? ? ?? ? ?fastgcc_-m64_-march=core-avx2_-O2_-fomit-frame-pointer2019011420181123
18585240? ? ?? ? ?fastgcc_-m64_-march=core-avx-i_-Os_-fomit-frame-pointer2019011420181123
18623398? ? ?? ? ?fastgcc_-m64_-march=core-avx2_-Os_-fomit-frame-pointer2019011420181123
19013894? ? ?? ? ?fastgcc_-m64_-march=corei7-avx_-Os_-fomit-frame-pointer2019011420181123

Compiler output

Implementation: fast
Security model: unknown
Compiler: cc
aes.c: In file included from aes.c:6:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/include/smmintrin.h:31:3: error: #error "SSE4.1 instruction set not enabled"
aes.c: # error "SSE4.1 instruction set not enabled"
aes.c: ^
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/4.8/include/wmmintrin.h:34:3: error: #error "AES/PCLMUL instructions not enabled"
aes.c: # error "AES/PCLMUL instructions not enabled"
aes.c: ^
aes.c: aes.c: In function 'expand256':
aes.c: aes.c:43:5: error: incompatible type for argument 2 of 'assist256_1'
aes.c: rkeys[2] = s = assist256_1 (s, _mm_aeskeygenassist_si128 (t, 0x01));
aes.c: ^
aes.c: aes.c:12:16: note: expected '__m128i' but argument is of type 'int'
aes.c: static __m128i assist256_1 (__m128i a, __m128i b) {
aes.c: ^
aes.c: aes.c:44:5: error: incompatible type for argument 2 of 'assist256_2'
aes.c: rkeys[3] = t = assist256_2 (t, _mm_aeskeygenassist_si128 (s, 0x01));
aes.c: ^
aes.c: aes.c:25:16: note: expected '__m128i' but argument is of type 'int'
aes.c: static __m128i assist256_2 (__m128i a, __m128i b) {
aes.c: ^
aes.c: aes.c:45:5: error: incompatible type for argument 2 of 'assist256_1'
aes.c: rkeys[4] = s = assist256_1 (s, _mm_aeskeygenassist_si128 (t, 0x02));
aes.c: ^
aes.c: aes.c:12:16: note: expected '__m128i' but argument is of type 'int'
aes.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
cc fast

Compiler output

Implementation: fast
Security model: unknown
Compiler: clang -O3 -fomit-frame-pointer -Qunused-arguments
aes.c: aes.c:89:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: s1 = _mm_aesenc_si128 (s1, rkeys[1]);
aes.c: ^
aes.c: aes.c:90:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: s2 = _mm_aesenc_si128 (s2, rkeys[1]);
aes.c: ^
aes.c: aes.c:91:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: s3 = _mm_aesenc_si128 (s3, rkeys[1]);
aes.c: ^
aes.c: aes.c:92:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: s4 = _mm_aesenc_si128 (s4, rkeys[1]);
aes.c: ^
aes.c: aes.c:93:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: s1 = _mm_aesenc_si128 (s1, rkeys[2]);
aes.c: ^
aes.c: aes.c:94:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: s2 = _mm_aesenc_si128 (s2, rkeys[2]);
aes.c: ^
aes.c: aes.c:95:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: s3 = _mm_aesenc_si128 (s3, rkeys[2]);
aes.c: ^
aes.c: aes.c:96:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: s4 = _mm_aesenc_si128 (s4, rkeys[2]);
aes.c: ^
aes.c: aes.c:97:14: error: always_inline function '_mm_aesenc_si128' requires target feature 'aes', but would be inlined into function 'aesctr256_direct_x4' that is compiled without support for 'aes'
aes.c: ...

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -O3 -fomit-frame-pointer -Qunused-arguments fast
clang -O3 -fwrapv -mavx2 -fomit-frame-pointer -Qunused-arguments fast
clang -O3 -fwrapv -mavx -fomit-frame-pointer -Qunused-arguments fast
clang -mcpu=cortex-a8 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments fast
clang -mcpu=cortex-a9 -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments fast
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments fast

Compiler output

Implementation: fast
Security model: unknown
Compiler: clang -O3 -fwrapv -march=native -fomit-frame-pointer -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0xca7850: v4i64 = X86ISD::VTRUNC 0xca7680
try.c: 0xca7680: v16i32 = vselect 0xcbb870, 0xc3b580, 0xca7550
try.c: 0xcbb870: v4i1 = X86ISD::PCMPGTM 0xca32b0, 0xc3c330
try.c: 0xca32b0: v4i64 = X86ISD::VBROADCAST 0xc3c6c0
try.c: 0xc3c6c0: i64,ch = load<LD8[%uglygep72]> 0xb9cdd0, 0xc57970, undef:i64
try.c: 0xc57970: i64 = add 0xca4190, 0xc1d690
try.c: 0xca4190: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xc9dd20: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xc1d690: i64 = shl 0xc9d4d0, Constant:i8<3>
try.c: 0xc9d4d0: i64,ch = CopyFromReg 0xb9cdd0, Register:i64 %vreg50
try.c: 0xca4650: i64 = Register %vreg50
try.c: 0xc37d50: i8 = Constant<3>
try.c: 0xca1920: i64 = undef
try.c: 0xc3c330: v4i64,ch = CopyFromReg 0xb9cdd0, Register:v4i64 %vreg13
try.c: 0xc62080: v4i64 = Register %vreg13
try.c: 0xc3b580: v16i32 = X86ISD::VBROADCAST 0xc9d730
try.c: 0xc9d730: i32,ch = load<LD4[ConstantPool]> 0xb9cdd0, 0xca71c0, undef:i64
try.c: 0xca71c0: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xc5fba0: i64 = TargetConstantPool<i32 1> 0
try.c: 0xca1920: i64 = undef
try.c: 0xca7550: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0xca7420: i32 = Constant<0>
try.c: 0xca7420: i32 = Constant<0>
try.c: 0xca7420: i32 = Constant<0>
try.c: 0xca7420: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: fast
Security model: unknown
Compiler: clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
try.c: fatal error: error in backend: Cannot select: 0xd93090: v4i64 = X86ISD::VTRUNC 0xd92ec0
try.c: 0xd92ec0: v16i32 = vselect 0xd8fb00, 0xd3d690, 0xd92d90
try.c: 0xd8fb00: v4i1 = X86ISD::PCMPGTM 0xd7c980, 0xd3e440
try.c: 0xd7c980: v4i64 = X86ISD::VBROADCAST 0xd3e7d0
try.c: 0xd3e7d0: i64,ch = load<LD8[%uglygep72]> 0xc76db0, 0xd5c700, undef:i64
try.c: 0xd5c700: i64 = add 0xd7d860, 0xd109f0
try.c: 0xd7d860: i64 = X86ISD::Wrapper TargetGlobalAddress:i64<[64 x i64]* @cycles> 0
try.c: 0xcf90f0: i64 = TargetGlobalAddress<[64 x i64]* @cycles> 0
try.c: 0xd109f0: i64 = shl 0xcf88a0, Constant:i8<3>
try.c: 0xcf88a0: i64,ch = CopyFromReg 0xc76db0, Register:i64 %vreg50
try.c: 0xd7dd20: i64 = Register %vreg50
try.c: 0xd11ff0: i8 = Constant<3>
try.c: 0xd7aff0: i64 = undef
try.c: 0xd3e440: v4i64,ch = CopyFromReg 0xc76db0, Register:v4i64 %vreg13
try.c: 0xd17640: v4i64 = Register %vreg13
try.c: 0xd3d690: v16i32 = X86ISD::VBROADCAST 0xcf8b00
try.c: 0xcf8b00: i32,ch = load<LD4[ConstantPool]> 0xc76db0, 0xd92a00, undef:i64
try.c: 0xd92a00: i64 = X86ISD::Wrapper TargetConstantPool:i64<i32 1> 0
try.c: 0xd15160: i64 = TargetConstantPool<i32 1> 0
try.c: 0xd7aff0: i64 = undef
try.c: 0xd92d90: v16i32 = BUILD_VECTOR Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>, Constant:i32<0>
try.c: 0xd92c60: i32 = Constant<0>
try.c: 0xd92c60: i32 = Constant<0>
try.c: 0xd92c60: i32 = Constant<0>
try.c: 0xd92c60: i32 = Constant<0>
try.c: ...

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

Compiler output

Implementation: fast
Security model: unknown
Compiler: gcc
aes.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/smmintrin.h:32:0,
aes.c: from aes.c:6:
aes.c: aes.c: In function 'increment_be':
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
aes.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:63:7: note: called from here
aes.c: x = _mm_shuffle_epi8 (x, swap);
aes.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/smmintrin.h:32:0,
aes.c: from aes.c:6:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
aes.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:61:7: note: called from here
aes.c: x = _mm_shuffle_epi8 (x, swap);
aes.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from /usr/lib64/gcc/x86_64-suse-linux/7/include/smmintrin.h:32:0,
aes.c: from aes.c:6:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/tmmintrin.h:136:1: error: inlining failed in call to always_inline '_mm_shuffle_epi8': target specific option mismatch
aes.c: _mm_shuffle_epi8 (__m128i __X, __m128i __Y)
aes.c: ^~~~~~~~~~~~~~~~
aes.c: aes.c:61:7: note: called from here
aes.c: x = _mm_shuffle_epi8 (x, swap);
aes.c: ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: ...

Number of similar (compiler,implementation) pairs: 2, namely:
CompilerImplementations
gcc fast
gcc -funroll-loops fast

Compiler output

Implementation: fast
Security model: unknown
Compiler: gcc -O2 -fomit-frame-pointer
aes.c: In file included from aes.c:9:0:
aes.c: aes.c: In function 'expand256':
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:55:21: note: called from here
aes.c: rkeys[14] = s = assist256_1 (s, _mm_aeskeygenassist_si128 (t, 0x40));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:54:21: note: called from here
aes.c: rkeys[13] = t = assist256_2 (t, _mm_aeskeygenassist_si128 (s, 0x20));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:53:21: note: called from here
aes.c: rkeys[12] = s = assist256_1 (s, _mm_aeskeygenassist_si128 (t, 0x20));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ...

Number of similar (compiler,implementation) pairs: 84, namely:
CompilerImplementations
gcc -O2 -fomit-frame-pointer fast
gcc -O3 -fomit-frame-pointer fast
gcc -O -fomit-frame-pointer fast
gcc -Os -fomit-frame-pointer fast
gcc -fno-schedule-insns -O2 -fomit-frame-pointer fast
gcc -fno-schedule-insns -O3 -fomit-frame-pointer fast
gcc -fno-schedule-insns -O -fomit-frame-pointer fast
gcc -fno-schedule-insns -Os -fomit-frame-pointer fast
gcc -funroll-loops -O2 -fomit-frame-pointer fast
gcc -funroll-loops -O3 -fomit-frame-pointer fast
gcc -funroll-loops -O -fomit-frame-pointer fast
gcc -funroll-loops -Os -fomit-frame-pointer fast
gcc -funroll-loops -fno-schedule-insns -O2 -fomit-frame-pointer fast
gcc -funroll-loops -fno-schedule-insns -O3 -fomit-frame-pointer fast
gcc -funroll-loops -fno-schedule-insns -O -fomit-frame-pointer fast
gcc -funroll-loops -fno-schedule-insns -Os -fomit-frame-pointer fast
gcc -funroll-loops -m64 -O2 -fomit-frame-pointer fast
gcc -funroll-loops -m64 -O3 -fomit-frame-pointer fast
gcc -funroll-loops -m64 -O -fomit-frame-pointer fast
gcc -funroll-loops -m64 -Os -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=barcelona -O2 -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=barcelona -O3 -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=barcelona -O -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=barcelona -Os -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=k8 -O2 -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=k8 -O3 -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=k8 -O -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=k8 -Os -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=nocona -O2 -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=nocona -O3 -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=nocona -O -fomit-frame-pointer fast
gcc -funroll-loops -m64 -march=nocona -Os -fomit-frame-pointer fast
gcc -funroll-loops -march=barcelona -O2 -fomit-frame-pointer fast
gcc -funroll-loops -march=barcelona -O3 -fomit-frame-pointer fast
gcc -funroll-loops -march=barcelona -O -fomit-frame-pointer fast
gcc -funroll-loops -march=barcelona -Os -fomit-frame-pointer fast
gcc -funroll-loops -march=k8 -O2 -fomit-frame-pointer fast
gcc -funroll-loops -march=k8 -O3 -fomit-frame-pointer fast
gcc -funroll-loops -march=k8 -O -fomit-frame-pointer fast
gcc -funroll-loops -march=k8 -Os -fomit-frame-pointer fast
gcc -funroll-loops -march=nocona -O2 -fomit-frame-pointer fast
gcc -funroll-loops -march=nocona -O3 -fomit-frame-pointer fast
gcc -funroll-loops -march=nocona -O -fomit-frame-pointer fast
gcc -funroll-loops -march=nocona -Os -fomit-frame-pointer fast
gcc -m64 -O2 -fomit-frame-pointer fast
gcc -m64 -O3 -fomit-frame-pointer fast
gcc -m64 -O -fomit-frame-pointer fast
gcc -m64 -Os -fomit-frame-pointer fast
gcc -m64 -march=core2 -O2 -fomit-frame-pointer fast
gcc -m64 -march=core2 -O3 -fomit-frame-pointer fast
gcc -m64 -march=core2 -O -fomit-frame-pointer fast
gcc -m64 -march=core2 -Os -fomit-frame-pointer fast
gcc -m64 -march=core2 -msse4.1 -O2 -fomit-frame-pointer fast
gcc -m64 -march=core2 -msse4.1 -O3 -fomit-frame-pointer fast
gcc -m64 -march=core2 -msse4.1 -O -fomit-frame-pointer fast
gcc -m64 -march=core2 -msse4.1 -Os -fomit-frame-pointer fast
gcc -m64 -march=core2 -msse4 -O2 -fomit-frame-pointer fast
gcc -m64 -march=core2 -msse4 -O3 -fomit-frame-pointer fast
gcc -m64 -march=core2 -msse4 -O -fomit-frame-pointer fast
gcc -m64 -march=core2 -msse4 -Os -fomit-frame-pointer fast
gcc -m64 -march=corei7 -O2 -fomit-frame-pointer fast
gcc -m64 -march=corei7 -O3 -fomit-frame-pointer fast
gcc -m64 -march=corei7 -O -fomit-frame-pointer fast
gcc -m64 -march=corei7 -Os -fomit-frame-pointer fast
gcc -m64 -march=k8 -O2 -fomit-frame-pointer fast
gcc -m64 -march=k8 -O3 -fomit-frame-pointer fast
gcc -m64 -march=k8 -O -fomit-frame-pointer fast
gcc -m64 -march=k8 -Os -fomit-frame-pointer fast
gcc -m64 -march=nocona -O2 -fomit-frame-pointer fast
gcc -m64 -march=nocona -O3 -fomit-frame-pointer fast
gcc -m64 -march=nocona -O -fomit-frame-pointer fast
gcc -m64 -march=nocona -Os -fomit-frame-pointer fast
gcc -march=barcelona -O2 -fomit-frame-pointer fast
gcc -march=barcelona -O3 -fomit-frame-pointer fast
gcc -march=barcelona -O -fomit-frame-pointer fast
gcc -march=barcelona -Os -fomit-frame-pointer fast
gcc -march=k8 -O2 -fomit-frame-pointer fast
gcc -march=k8 -O3 -fomit-frame-pointer fast
gcc -march=k8 -O -fomit-frame-pointer fast
gcc -march=k8 -Os -fomit-frame-pointer fast
gcc -march=nocona -O2 -fomit-frame-pointer fast
gcc -march=nocona -O3 -fomit-frame-pointer fast
gcc -march=nocona -O -fomit-frame-pointer fast
gcc -march=nocona -Os -fomit-frame-pointer fast

Compiler output

Implementation: fast
Security model: unknown
Compiler: gcc -m64 -march=barcelona -O2 -fomit-frame-pointer
aes.c: In file included from aes.c:9:0:
aes.c: aes.c: In function 'expand256':
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:55:21: note: called from here
aes.c: rkeys[14] = s = assist256_1 (s, _mm_aeskeygenassist_si128 (t, 0x40));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:54:21: note: called from here
aes.c: rkeys[13] = t = assist256_2 (t, _mm_aeskeygenassist_si128 (s, 0x20));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:53:21: note: called from here
aes.c: rkeys[12] = s = assist256_1 (s, _mm_aeskeygenassist_si128 (t, 0x20));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ...
aes.c: In file included from aes.c:9:0:
aes.c: aes.c: In function 'expand256':
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:55:21: note: called from here
aes.c: rkeys[14] = s = assist256_1 (s, _mm_aeskeygenassist_si128 (t, 0x40));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:54:21: note: called from here
aes.c: rkeys[13] = t = assist256_2 (t, _mm_aeskeygenassist_si128 (s, 0x20));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: aes.c:53:21: note: called from here
aes.c: rkeys[12] = s = assist256_1 (s, _mm_aeskeygenassist_si128 (t, 0x20));
aes.c: ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
aes.c: In file included from aes.c:9:0:
aes.c: /usr/lib64/gcc/x86_64-suse-linux/7/include/wmmintrin.h:87:1: error: inlining failed in call to always_inline '_mm_aeskeygenassist_si128': target specific option mismatch
aes.c: _mm_aeskeygenassist_si128 (__m128i __X, const int __C)
aes.c: ...

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -m64 -march=barcelona -O2 -fomit-frame-pointer fast
gcc -m64 -march=barcelona -O3 -fomit-frame-pointer fast
gcc -m64 -march=barcelona -O -fomit-frame-pointer fast
gcc -m64 -march=barcelona -Os -fomit-frame-pointer fast