COFF: include relocation type in unsupported relocation message
Summary: When we encouter a relocation type we don't know how to handle, this change causes us to print out the hexadecimal value of the relocation type. This makes troubleshooting a little easier. Reviewers: ruiu, zturner Differential Revision: https://reviews.llvm.org/D28576 llvm-svn: 291962
This commit is contained in:
parent
b1e7a12ee8
commit
848c569734
|
|
@ -11,6 +11,7 @@
|
||||||
#include "Error.h"
|
#include "Error.h"
|
||||||
#include "InputFiles.h"
|
#include "InputFiles.h"
|
||||||
#include "Symbols.h"
|
#include "Symbols.h"
|
||||||
|
#include "llvm/ADT/Twine.h"
|
||||||
#include "llvm/Object/COFF.h"
|
#include "llvm/Object/COFF.h"
|
||||||
#include "llvm/Support/COFF.h"
|
#include "llvm/Support/COFF.h"
|
||||||
#include "llvm/Support/Debug.h"
|
#include "llvm/Support/Debug.h"
|
||||||
|
|
@ -61,7 +62,7 @@ void SectionChunk::applyRelX64(uint8_t *Off, uint16_t Type, Defined *Sym,
|
||||||
case IMAGE_REL_AMD64_SECTION: add16(Off, Sym->getSectionIndex()); break;
|
case IMAGE_REL_AMD64_SECTION: add16(Off, Sym->getSectionIndex()); break;
|
||||||
case IMAGE_REL_AMD64_SECREL: add32(Off, Sym->getSecrel()); break;
|
case IMAGE_REL_AMD64_SECREL: add32(Off, Sym->getSecrel()); break;
|
||||||
default:
|
default:
|
||||||
fatal("unsupported relocation type");
|
fatal("unsupported relocation type 0x" + Twine::utohexstr(Type));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -76,7 +77,7 @@ void SectionChunk::applyRelX86(uint8_t *Off, uint16_t Type, Defined *Sym,
|
||||||
case IMAGE_REL_I386_SECTION: add16(Off, Sym->getSectionIndex()); break;
|
case IMAGE_REL_I386_SECTION: add16(Off, Sym->getSectionIndex()); break;
|
||||||
case IMAGE_REL_I386_SECREL: add32(Off, Sym->getSecrel()); break;
|
case IMAGE_REL_I386_SECREL: add32(Off, Sym->getSecrel()); break;
|
||||||
default:
|
default:
|
||||||
fatal("unsupported relocation type");
|
fatal("unsupported relocation type 0x" + Twine::utohexstr(Type));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -136,7 +137,7 @@ void SectionChunk::applyRelARM(uint8_t *Off, uint16_t Type, Defined *Sym,
|
||||||
case IMAGE_REL_ARM_BLX23T: applyBranch24T(Off, S - P - 4); break;
|
case IMAGE_REL_ARM_BLX23T: applyBranch24T(Off, S - P - 4); break;
|
||||||
case IMAGE_REL_ARM_SECREL: add32(Off, Sym->getSecrel()); break;
|
case IMAGE_REL_ARM_SECREL: add32(Off, Sym->getSecrel()); break;
|
||||||
default:
|
default:
|
||||||
fatal("unsupported relocation type");
|
fatal("unsupported relocation type 0x" + Twine::utohexstr(Type));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue