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

Reply via email to