These patches allow us to handle toplevel assembly referencing symbols.
Previous linux kernel patches needed to mark any such referenced symbols
manually. Currently needed linux patches are here:
https://gitlab.com/mixal_iirec/linux_gcc_lto_patches


First part of these patches allows toplevel assembly to be partitioned.
Seconds part heuristically detects which symbols are referenced from
toplevel assembly and disables optimizations so that they are correctly
partitioned.

It works with 1to1 partitioning. The requirement is that the
partitioning puts local symbols and toplevel assembly from single file
into the same partition by default.
So it cannot work with our default balanced partitioning, but it could
work with nto1 partitioning (similar to cache partitioning) if we
handled identically named local symbols that cannot be renamed.

Reply via email to