This seems like a tricky extension to deploy to the operating system.
What is the proposed interface for setting GP on application pages? There are several things that seem plausible to me, and I wondered how far planning has gotten.
An mmap/mprotect flag?
An ELF program header PT_ARM_BTI (a-la PT_GNU_RELRO) to direct the loader to set said flag when mapping binaries? Or equivalently, a PF_MASKOS bit that could be set on the normal PT_LOAD header.
An ELF section flag set by the compiler for sections that use -mbti, which are then collected into the PT_GNU_BTI segment by the linker?
That seems like the most plausible way to indicate on a per-binary basis that it has been compiled with the BTI hints in place. But probably there are other ways that make an equal amount of sense.
Is there any coordination going on with Intel wrt their similar gadget protection scheme(s)?
r~