[llvm-commits] [llvm] r99228 - /llvm/trunk/lib/MC/MachObjectWriter.cpp
Daniel Dunbar
daniel at zuster.org
Mon Mar 22 16:16:43 PDT 2010
Author: ddunbar
Date: Mon Mar 22 18:16:43 2010
New Revision: 99228
URL: http://llvm.org/viewvc/llvm-project?rev=99228&view=rev
Log:
Add a FIXME.
Modified:
llvm/trunk/lib/MC/MachObjectWriter.cpp
Modified: llvm/trunk/lib/MC/MachObjectWriter.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/MC/MachObjectWriter.cpp?rev=99228&r1=99227&r2=99228&view=diff
==============================================================================
--- llvm/trunk/lib/MC/MachObjectWriter.cpp (original)
+++ llvm/trunk/lib/MC/MachObjectWriter.cpp Mon Mar 22 18:16:43 2010
@@ -437,6 +437,20 @@
Write32(Address);
}
+ // FIXME: We really need to improve the relocation validation. Basically, we
+ // want to implement a separate computation which evaluates the relocation
+ // entry as the linker would, and verifies that the resultant fixup value is
+ // exactly what the encoder wanted. This will catch several classes of
+ // problems:
+ //
+ // - Relocation entry bugs, the two algorithms are unlikely to have the same
+ // exact bug.
+ //
+ // - Relaxation issues, where we forget to relax something.
+ //
+ // - Input errors, where something cannot be correctly encoded. 'as' allows
+ // these through in many cases.
+
void RecordX86_64Relocation(const MCAssembler &Asm,
const MCFragment *Fragment,
const MCAsmFixup &Fixup, MCValue Target,
More information about the llvm-commits
mailing list