Thanks for the information. It was very helpful.
I have now written some code (Seperate to gcc) that makes use of the
builtins.def and associated def files to generate a list of all builtin
functions as i require with the full prototypes as would be declared in
say a header file. Are there also frontend specific builtins that I will
need to handle in addition to those builtins defined in builtins.def?
I am using the C++ front end and could not find any def files for C++
frontend builtins but your comment seemed to imply that front-ends could
define their own set of builtin functions.
As for the libsupc++.a and libgcc*.* libraries. Are they compiled with
the newly generated gcc/g++ compilers or are they compiled with the
compiler used to build gcc and g++?
Thanks,
Brendon.
Well, there is the documentation, e.g.:
http://gcc.gnu.org/onlinedocs/gcc-4.0.3/gcc/Other-Builtins.html
Or if you want to look at the source code, look at builtins.def and
look for calls to add_builtin_function or lang_hooks.builtin_function
in config/CPU/*.c.
Well, that will tell you about functions like __builtin_memset:
functions which are specially recognized and handled by the compiler.
__cxa_begin_catch is a different sort of function, it is a support
function which is called by the compiler. For the complete set of
those functions, look at libgcc*.* and libsupc++.a in the installed
tree (generally under lib/gcc/TARGET/VERSION). Those functions
generally have no user-level documentation.
Ian