From 5788d1a169db3346a612a13113348d2709bdd15b Mon Sep 17 00:00:00 2001 From: Evan Cheng Date: Wed, 10 Dec 2008 02:32:19 +0000 Subject: Fix MachineCodeEmitter to use uintptr_t instead of intptr_t. This avoids some overflow issues. Patch by Thomas Jablin. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60828 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/CodeGen/MachineRelocation.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'include/llvm/CodeGen/MachineRelocation.h') diff --git a/include/llvm/CodeGen/MachineRelocation.h b/include/llvm/CodeGen/MachineRelocation.h index 2181e20aeb..c5397819ae 100644 --- a/include/llvm/CodeGen/MachineRelocation.h +++ b/include/llvm/CodeGen/MachineRelocation.h @@ -49,7 +49,7 @@ class MachineRelocation { /// Offset - This is the offset from the start of the code buffer of the /// relocation to perform. - intptr_t Offset; + uintptr_t Offset; /// ConstantVal - A field that may be used by the target relocation type. intptr_t ConstantVal; @@ -79,7 +79,7 @@ public: /// MachineRelocation::getGV - Return a relocation entry for a GlobalValue. /// - static MachineRelocation getGV(intptr_t offset, unsigned RelocationType, + static MachineRelocation getGV(uintptr_t offset, unsigned RelocationType, GlobalValue *GV, intptr_t cst = 0, bool NeedStub = 0, bool GOTrelative = 0) { @@ -98,7 +98,7 @@ public: /// MachineRelocation::getIndirectSymbol - Return a relocation entry for an /// indirect symbol. - static MachineRelocation getIndirectSymbol(intptr_t offset, + static MachineRelocation getIndirectSymbol(uintptr_t offset, unsigned RelocationType, GlobalValue *GV, intptr_t cst = 0, bool NeedStub = 0, @@ -118,7 +118,7 @@ public: /// MachineRelocation::getBB - Return a relocation entry for a BB. /// - static MachineRelocation getBB(intptr_t offset,unsigned RelocationType, + static MachineRelocation getBB(uintptr_t offset,unsigned RelocationType, MachineBasicBlock *MBB, intptr_t cst = 0) { assert((RelocationType & ~63) == 0 && "Relocation type too large!"); MachineRelocation Result; @@ -136,7 +136,7 @@ public: /// MachineRelocation::getExtSym - Return a relocation entry for an external /// symbol, like "free". /// - static MachineRelocation getExtSym(intptr_t offset, unsigned RelocationType, + static MachineRelocation getExtSym(uintptr_t offset, unsigned RelocationType, const char *ES, intptr_t cst = 0, bool GOTrelative = 0) { assert((RelocationType & ~63) == 0 && "Relocation type too large!"); @@ -155,7 +155,7 @@ public: /// MachineRelocation::getConstPool - Return a relocation entry for a constant /// pool entry. /// - static MachineRelocation getConstPool(intptr_t offset,unsigned RelocationType, + static MachineRelocation getConstPool(uintptr_t offset,unsigned RelocationType, unsigned CPI, intptr_t cst = 0, bool letTargetResolve = false) { assert((RelocationType & ~63) == 0 && "Relocation type too large!"); @@ -174,7 +174,7 @@ public: /// MachineRelocation::getJumpTable - Return a relocation entry for a jump /// table entry. /// - static MachineRelocation getJumpTable(intptr_t offset,unsigned RelocationType, + static MachineRelocation getJumpTable(uintptr_t offset,unsigned RelocationType, unsigned JTI, intptr_t cst = 0, bool letTargetResolve = false) { assert((RelocationType & ~63) == 0 && "Relocation type too large!"); -- cgit v1.2.3