-
Philippe Canal authored
This is done by taking the check of fUniqueID and the assignment to fBuits into a separate function and by including this function in the header *but* marking it as "noinline" to prevent its inlining and preserve a way to suppress the valgrind warning. Introducing the macro R__NEVER_INLINE which expands to inline __attribute__((noinline)) The performance degradation is less than 10% for a case doing only creation and destruction of TObjects.
Philippe Canal authoredThis is done by taking the check of fUniqueID and the assignment to fBuits into a separate function and by including this function in the header *but* marking it as "noinline" to prevent its inlining and preserve a way to suppress the valgrind warning. Introducing the macro R__NEVER_INLINE which expands to inline __attribute__((noinline)) The performance degradation is less than 10% for a case doing only creation and destruction of TObjects.