https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113403
--- Comment #10 from Iain Sandoe <iains at gcc dot gnu.org> --- it is an optimisation, yes - but as Richi points out, if we change this it will affect ABI - so it is ideal to do this before the first release that includes it? - IIUC Jakub's suggestion: - remove the functions from libgcc.a - add a spec to gcc/gcc.cc like %{!static:%(!static-libgcc:%(ftrampoline-impl=heap: -shared-libgcc }}} So the symbols would be public and in libgcc_s only (unless a target chooses to do something different).