Go patch committed: Define builtin functions
Checks
Commit Message
This patch by Andrew Pinski defines two builtin functions that are
used by the middle-end. This fixes PR 108426. Bootstrapped and
tested on x86_64-pc-linux-gnu. Committed to mainline.
Ian
PR go/108426
* go-gcc.cc (Gcc_backend::Gcc_backend): Define __builtin_ctzl and
__builtin_clzl. Patch by Andrew Pinski.
2bee478038d75487b52e35e29e54c70e4bfa1e2b
@@ -627,6 +627,11 @@ Gcc_backend::Gcc_backend()
unsigned_type_node,
NULL_TREE),
builtin_const);
+ this->define_builtin(BUILT_IN_CTZL, "__builtin_ctzl", "ctzl",
+ build_function_type_list(integer_type_node,
+ long_unsigned_type_node,
+ NULL_TREE),
+ builtin_const);
this->define_builtin(BUILT_IN_CTZLL, "__builtin_ctzll", "ctzll",
build_function_type_list(integer_type_node,
long_long_unsigned_type_node,
@@ -637,6 +642,11 @@ Gcc_backend::Gcc_backend()
unsigned_type_node,
NULL_TREE),
builtin_const);
+ this->define_builtin(BUILT_IN_CLZL, "__builtin_clzl", "clzl",
+ build_function_type_list(integer_type_node,
+ long_unsigned_type_node,
+ NULL_TREE),
+ builtin_const);
this->define_builtin(BUILT_IN_CLZLL, "__builtin_clzll", "clzll",
build_function_type_list(integer_type_node,
long_long_unsigned_type_node,