[llvm] [PAC][ELF] Place AUTH constants in .data.rel.ro for position dependent code (PR #150418)
Daniil Kovalev via llvm-commits
llvm-commits at lists.llvm.org
Sun Oct 19 12:27:48 PDT 2025
================
@@ -333,9 +348,10 @@ SectionKind TargetLoweringObjectFile::getKindForGlobal(const GlobalObject *GO,
// mergable section, because the linker doesn't take relocations into
// consideration when it tries to merge entries in the section.
Reloc::Model ReloModel = TM.getRelocationModel();
- if (ReloModel == Reloc::Static || ReloModel == Reloc::ROPI ||
- ReloModel == Reloc::RWPI || ReloModel == Reloc::ROPI_RWPI ||
- !C->needsDynamicRelocation())
+ if ((ReloModel == Reloc::Static || ReloModel == Reloc::ROPI ||
+ ReloModel == Reloc::RWPI || ReloModel == Reloc::ROPI_RWPI ||
+ !C->needsDynamicRelocation()) &&
+ !containsConstantPtrAuth(C))
return SectionKind::getReadOnly();
----------------
kovdan01 wrote:
> [nit] Maybe it would be more readable to organize the checks along the lines
@atrosinenko Applied your suggestion in cafc9df143ea6d302994111a7e1882f346540d80, thanks!
https://github.com/llvm/llvm-project/pull/150418
More information about the llvm-commits
mailing list