[PATCH] D59594: [ELF] Change GOT*_FROM_END (relative to end(.got)) to GOTPLT* (start(.got.plt))

Rui Ueyama via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Mar 21 13:24:36 PDT 2019


ruiu added a comment.

I don't remember why we defined _FROM_END relocation types in the first place. That was done by Rafael. It looks to me that this change is looking generally good. I hope there's no hidden reason we did that at that time...



================
Comment at: ELF/Relocations.cpp:1073-1075
+    // These x86 and x86_64 relocation types are relative to GOTPLT but their
+    // description uses GOT (the address of the global offset table), thus also
+    // ensure GOT is created.
----------------
Is this logically x86-64 only? I think it is fine to create a .got when you create .got.plt, but the comment should explain that.


================
Comment at: ELF/Relocations.h:36-39
+  R_GOTPLTONLY_PC,
   R_GOTREL,
-  R_GOTREL_FROM_END,
-  R_GOT_FROM_END,
+  R_GOTPLTREL,
+  R_GOTPLT,
----------------
Sort.


Repository:
  rLLD LLVM Linker

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D59594/new/

https://reviews.llvm.org/D59594





More information about the llvm-commits mailing list