1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 14:42:11 +02:00

Bug 527959 - Fix argument lists for some builtins

- Add volatile variant for __atomic_clear and __atomic_test_and_set
- Add missing parameters for __builtin_fmax and related

Change-Id: Ib31d1a410b8749f5672d70d7d02ca1dff962c38b
Signed-off-by: Martin Oberhuber <mober.at+eclipse@gmail.com>
This commit is contained in:
Martin Oberhuber 2017-11-30 16:14:07 +01:00 committed by Nathan Ridge
parent a4dcbbaf15
commit abf1b13e6b

View file

@ -177,7 +177,9 @@ public class GCCBuiltinSymbolProvider implements IBuiltinBindingsProvider {
function(type, "__atomic_fetch_nadd", typePtr, type, "int"); function(type, "__atomic_fetch_nadd", typePtr, type, "int");
} }
function("bool", "__atomic_test_and_set", "void*", "int"); function("bool", "__atomic_test_and_set", "void*", "int");
function("bool", "__atomic_test_and_set", "volatile void*", "int");
function("void", "__atomic_clear", "bool*", "int"); function("void", "__atomic_clear", "bool*", "int");
function("void", "__atomic_clear", "volatile bool*", "int");
function("void", "__atomic_thread_fence", "int"); function("void", "__atomic_thread_fence", "int");
function("void", "__atomic_signal_fence", "int"); function("void", "__atomic_signal_fence", "int");
function("bool", "__atomic_always_lock_free", "size_t", "void*"); function("bool", "__atomic_always_lock_free", "size_t", "void*");
@ -263,24 +265,24 @@ public class GCCBuiltinSymbolProvider implements IBuiltinBindingsProvider {
function("double", "__builtin_fabs", "double"); function("double", "__builtin_fabs", "double");
function("float", "__builtin_fabsf", "float"); function("float", "__builtin_fabsf", "float");
function("long double", "__builtin_fabsl", "long double"); function("long double", "__builtin_fabsl", "long double");
function("double", "__builtin_fdim", "double"); function("double", "__builtin_fdim", "double", "double");
function("float", "__builtin_fdimf", "float"); function("float", "__builtin_fdimf", "float", "float");
function("long double", "__builtin_fdiml", "long double"); function("long double", "__builtin_fdiml", "long double", "long double");
function("int", "__builtin_ffs", "unsigned int"); function("int", "__builtin_ffs", "unsigned int");
function("int", "__builtin_ffsl", "unsigned long"); function("int", "__builtin_ffsl", "unsigned long");
function("int", "__builtin_ffsll", "unsigned long long"); function("int", "__builtin_ffsll", "unsigned long long");
function("double", "__builtin_floor", "double"); function("double", "__builtin_floor", "double");
function("float", "__builtin_floorf", "float"); function("float", "__builtin_floorf", "float");
function("long double", "__builtin_floorl", "long double"); function("long double", "__builtin_floorl", "long double");
function("double", "__builtin_fma", "double"); function("double", "__builtin_fma", "double", "double", "double");
function("float", "__builtin_fmaf", "float"); function("float", "__builtin_fmaf", "float", "float", "float");
function("long double", "__builtin_fmal", "long double"); function("long double", "__builtin_fmal", "long double", "long double", "long double");
function("double", "__builtin_fmax", "double"); function("double", "__builtin_fmax", "double", "double");
function("float", "__builtin_fmaxf", "float"); function("float", "__builtin_fmaxf", "float", "float");
function("long double", "__builtin_fmaxl", "long double"); function("long double", "__builtin_fmaxl", "long double", "long double");
function("double", "__builtin_fmin", "double"); function("double", "__builtin_fmin", "double", "double");
function("float", "__builtin_fminf", "float"); function("float", "__builtin_fminf", "float", "float");
function("long double", "__builtin_fminl", "long double"); function("long double", "__builtin_fminl", "long double", "long double");
function("double", "__builtin_fmod", "double", "double"); function("double", "__builtin_fmod", "double", "double");
function("float", "__builtin_fmodf", "float", "float"); function("float", "__builtin_fmodf", "float", "float");
function("long double", "__builtin_fmodl", "long double", "long double"); function("long double", "__builtin_fmodl", "long double", "long double");