http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55940
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-01-15 15:22:14 UTC --- You haven't provided the preprocessed testcase, so it is hard to guess, but generally, if you have say a static function and call it also from assembly, you need __attribute__((used)) to prevent the compiler from using different calling conventions. Otherwise, if the compiler can see all possible callers (inline asm doesn't count, then you have to use the used attribute), it can decide not to emit the function at all, or use whatever calling convention it thinks are best for the function.