* Florian Weimer:
* Fabio Valentini:
> Go has supported -buildmode=shared on all major architectures for some
> time. I'm curious why nobody uses that yet.
There is no ABI document like this one for Go:
<
https://github.com/itanium-cxx-abi/cxx-abi>
I assume that the Go compiler changes ABI between releases, just like
GCC for C++ did before GCC 3.4 or thereabouts.
Here's a recent example of such a change:
| This patch by Cherry Zhang changes the Go frontend and libgo to pass
| the old slice's ptr/len/cap by value to growslice. In the C calling
| convention, on AMD64, and probably a number of other architectures,
| a 3-word struct argument is passed on stack. This is less efficient
| than passing in three registers. Further, this may affect the code
| generation in other part of the program, even if the function is not
| actually called.
<
https://gcc.gnu.org/ml/gcc-patches/2019-03/msg00948.html>