[clang] [lld] [lld][LoongArch] Enable relaxation when --relax option is passed (PR #111488)

Lu Weining via cfe-commits cfe-commits at lists.llvm.org
Sun Oct 13 18:01:42 PDT 2024


================
@@ -1462,6 +1462,8 @@ template <class ELFT> void Writer<ELFT>::finalizeAddressDependentContent() {
   for (;;) {
     bool changed = ctx.target->needsThunks
                        ? tc.createThunks(pass, ctx.outputSections)
+                   : ctx.arg.emachine == EM_LOONGARCH && !ctx.arg.relax
----------------
SixWeining wrote:

> ctx.arg.relax is used here because we want to determine whether or not to apply relaxation based on the parameters passed at the time of linking.

I don't think so. R_LARCH_ALIGN should be handled unconditionally, otherwise the code may be unaligned.

https://github.com/llvm/llvm-project/pull/111488


More information about the cfe-commits mailing list