[PATCH] Linking of shared libraries for MIPS little-endian 32-bit target
Michael Spencer
bigcheesegs at gmail.com
Tue Nov 12 13:49:13 PST 2013
Other than that it looks good here.
================
Comment at: lib/ReaderWriter/ELF/X86/X86TargetHandler.h:18
@@ -17,3 +17,3 @@
namespace elf {
-typedef llvm::object::ELFType<llvm::support::little, 2, false> X86ELFType;
+typedef llvm::object::ELFType<llvm::support::little, 4, false> X86ELFType;
class X86LinkingContext;
----------------
This is an unrelated (and incorrect) change.
================
Comment at: lib/ReaderWriter/ELF/TargetHandler.h:125
@@ +124,3 @@
+ virtual LLD_UNIQUE_BUMP_PTR(DynamicTable<ELFT>)
+ createDynamicTable(llvm::BumpPtrAllocator &alloc,
+ StringRef name, int32_t order) = 0;
----------------
No indentation.
================
Comment at: lib/ReaderWriter/ELF/TargetHandler.h:130
@@ +129,3 @@
+ virtual LLD_UNIQUE_BUMP_PTR(DynamicSymbolTable<ELFT>)
+ createDynamicSymbolTable(llvm::BumpPtrAllocator &alloc,
+ StringRef name, int32_t order) = 0;
----------------
No indentation.
================
Comment at: lib/ReaderWriter/ELF/Mips/MipsLinkingContext.h:39
@@ +38,3 @@
+private:
+ MipsGOT _got;
+};
----------------
This isn't a great place for this as it preserves atom pointers from a specific pass, which are not guaranteed to be stable. It seems that it's only used for the local and global offsets of the got. I think a better option here would be to calculate the offsets in the layout by iterating over the final .got MergedSection.
http://llvm-reviews.chandlerc.com/D2156
More information about the llvm-commits
mailing list