1*3f1979aaSAndroid Build Coastguard Worker #ifndef FMV_H 2*3f1979aaSAndroid Build Coastguard Worker 3*3f1979aaSAndroid Build Coastguard Worker #if HAVE_FUNC_ATTRIBUTE_IFUNC 4*3f1979aaSAndroid Build Coastguard Worker #if defined(__has_attribute) 5*3f1979aaSAndroid Build Coastguard Worker #if __has_attribute(target_clones) 6*3f1979aaSAndroid Build Coastguard Worker #if defined(__x86_64) 7*3f1979aaSAndroid Build Coastguard Worker 8*3f1979aaSAndroid Build Coastguard Worker // see https://gcc.gnu.org/wiki/FunctionMultiVersioning 9*3f1979aaSAndroid Build Coastguard Worker #define PF_TARGET_CLONES __attribute__((target_clones("avx","sse4.2","sse3","sse2","sse","default"))) 10*3f1979aaSAndroid Build Coastguard Worker #define HAVE_PF_TARGET_CLONES 1 11*3f1979aaSAndroid Build Coastguard Worker #endif 12*3f1979aaSAndroid Build Coastguard Worker #endif 13*3f1979aaSAndroid Build Coastguard Worker #endif 14*3f1979aaSAndroid Build Coastguard Worker #endif 15*3f1979aaSAndroid Build Coastguard Worker 16*3f1979aaSAndroid Build Coastguard Worker #ifndef PF_TARGET_CLONES 17*3f1979aaSAndroid Build Coastguard Worker #define PF_TARGET_CLONES 18*3f1979aaSAndroid Build Coastguard Worker #endif 19*3f1979aaSAndroid Build Coastguard Worker 20*3f1979aaSAndroid Build Coastguard Worker #endif 21