[lld] [LLD][COFF] Move delay IAT into its own .didat section. (PR #137100)

via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 24 11:23:39 PDT 2025


================
@@ -1083,7 +1083,7 @@ void Writer::createSections() {
   pdataSec = createSection(".pdata", data | r);
   idataSec = createSection(".idata", data | r);
   edataSec = createSection(".edata", data | r);
-  didatSec = createSection(".didat", data | r);
+  didatSec = createSection(".didat", data | r | w);
----------------
jeremyd2019 wrote:

MSVC dloadsup.h sayeth:
> ```c++
>            // This delay load helper module does not support merging the delay
>            // load section to a read only section because memory management
>            // would not guarantee that there is commit available - and thus a
>            // low memory failure path where the delay load failure hook could
>            // not be safely invoked (the delay load section would still be
>            // read only) might be encountered.
>            //
>            // It is a build time configuration problem to produce such a
>            // binary so abort here and now so that the problem can be
>            // identified & fixed.
> ```

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


More information about the llvm-commits mailing list