https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71934
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Attachment #51926|0 |1 is obsolete| | --- Comment #23 from Jakub Jelinek <jakub at gcc dot gnu.org> --- Created attachment 51929 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51929&action=edit gcc12-pr71934-reloc-wip2.patch Updated untested patch that incorporates your 2 fixes and uses uleb128 to store the relocation data, which shrinks it to roughly 50% of the previous size (1.01 bytes for one pointer on average).