What is this T.3670 function produced by GCC?

When I do differential profiling with cg_diff I see a lot of entries like this:

-333,110  js/src/optg32/../assembler/assembler/AssemblerBuffer.h:T.3670
 333,110  js/src/optg32/../assembler/assembler/AssemblerBuffer.h:T.3703

T.3670 and T.3703 are clearly the same function, one which must be auto-generated by GCC but given different randomized suffixes in different builds.  These entries are uninteresting and I plan to add an option to cg_diff that allows the user to munge function names with a search-and-replace expression so I can get rid of them.

But I’d like to know what the are first, so I can talk about them in the cg_diff documentation.  Does anybody know?  I tried googling, but it’s a very hard thing to find out with a search engine.  (If someone can find something about it with a search engine I’d love to know what search term you used.)

2 Responses to What is this T.3670 function produced by GCC?

  1. I got a similar name in one of my programs, and it referred to a static function.

  2. These can be gcc internal labels or private names. They always include a prefix and a number, but the exact format varies by target and is determined by target macros: http://gcc.gnu.org/onlinedocs/gccint/Label-Output.html#index-ASM_005fGENERATE_005fINTERNAL_005fLABEL-4517