================
@@ -1436,6 +1436,8 @@ static void readConfigs(opt::InputArgList &args) {
   config->zInterpose = hasZOption(args, "interpose");
   config->zKeepTextSectionPrefix = getZFlag(
       args, "keep-text-section-prefix", "nokeep-text-section-prefix", false);
+  config->zLrodataAfterBss =
+      getZFlag(args, "lrodata-after-bss", "nolrodata-after-bss", false);
----------------
aeubanks wrote:

> With -z separate-code and a large max-page-size, one extra PT_LOAD can have a 
> significant waste.

This makes sense for the more common `-pie` case.

But *everybody* who's linking with `-no-pie` on x86-64 and has large sections 
is going to need `.lrodata` at the end of the binary so it doesn't affect small 
data relocations. This basically forces the user to pass `-z lrodata-after-bss` 
if they're passing `-no-pie`, which seems like a pointless burden on the user. 
I don't think people are generally concerned about exactly where `.lrodata` is 
in the binary, the whole point is that it's *somewhere* far away, doesn't 
really matter where.

https://github.com/llvm/llvm-project/pull/81224
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to