[PATCH] ARM: generation of .ARM.exidx/.ARM.extab sections
Rui Ueyama
ruiu at google.com
Tue Apr 28 12:38:08 PDT 2015
LGTM with nits
REPOSITORY
rL LLVM
================
Comment at: lib/ReaderWriter/ELF/ARM/ARMELFFile.h:29
@@ +28,3 @@
+ return _permissions;
+
+ if (_section->sh_type == llvm::ELF::SHT_ARM_EXIDX)
----------------
nit: I'd remove this blank line (and other two lines below after dangling if).
================
Comment at: lib/ReaderWriter/ELF/ARM/ARMExecutableWriter.h:70
@@ -69,2 +69,3 @@
}
- // TODO: resolve addresses of __exidx_start/_end atoms
+
+ if (auto ehdr = _armLayout.findAbsoluteAtom("__ehdr_start"))
----------------
Can you keep and update the comment, so that it's clear what we are doing here?
================
Comment at: lib/ReaderWriter/ELF/ARM/ARMTargetHandler.h:23
@@ -22,1 +22,3 @@
+class ARMExidxSection : public AtomSection<ELF32LE> {
+ typedef AtomSection<ELF32LE> Base;
----------------
A brief comment about what this class is for would be needed.
================
Comment at: lib/ReaderWriter/ELF/ARM/ARMTargetHandler.h:81
@@ +80,3 @@
+ .StartsWith(".ARM.extab", ".ARM.extab")
+ .Default(TargetLayout<ELF32LE>::getOutputSectionName(
+ archivePath, memberPath, inputSectionName));
----------------
Does just "TargetLayout" (without <>) work?
================
Comment at: lib/ReaderWriter/ELF/ARM/ARMTargetHandler.h:90
@@ +89,3 @@
+ default:
+ return TargetLayout<ELF32LE>::getSegmentType(section);
+ }
----------------
Ditto
http://reviews.llvm.org/D9324
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list