[llvm] r313336 - [Object] Fix missing arguments to getType and getSymbol in Elf_Rel_Impl
Petr Hosek via llvm-commits
llvm-commits at lists.llvm.org
Thu Sep 14 19:59:55 PDT 2017
Author: phosek
Date: Thu Sep 14 19:59:55 2017
New Revision: 313336
URL: http://llvm.org/viewvc/llvm-project?rev=313336&view=rev
Log:
[Object] Fix missing arguments to getType and getSymbol in Elf_Rel_Impl
Somehow this was compiling without these methods having their arguments
passed to them. I used these methods in some code I wrote and it raised
an error on me. It appears no one else has used these methods let (LLD
uses setSymbolAndType however). This change resolves the issue.
Patch by Jake Ehrlich
Differential Revision: https://reviews.llvm.org/D35100
Modified:
llvm/trunk/include/llvm/Object/ELFTypes.h
Modified: llvm/trunk/include/llvm/Object/ELFTypes.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Object/ELFTypes.h?rev=313336&r1=313335&r2=313336&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Object/ELFTypes.h (original)
+++ llvm/trunk/include/llvm/Object/ELFTypes.h Thu Sep 14 19:59:55 2017
@@ -406,10 +406,10 @@ struct Elf_Rel_Impl<ELFType<TargetEndian
return (unsigned char)(this->getRInfo(isMips64EL) & 0x0ff);
}
void setSymbol(uint32_t s, bool IsMips64EL) {
- setSymbolAndType(s, getType(), IsMips64EL);
+ setSymbolAndType(s, getType(IsMips64EL), IsMips64EL);
}
void setType(unsigned char t, bool IsMips64EL) {
- setSymbolAndType(getSymbol(), t, IsMips64EL);
+ setSymbolAndType(getSymbol(IsMips64EL), t, IsMips64EL);
}
void setSymbolAndType(uint32_t s, unsigned char t, bool IsMips64EL) {
this->setRInfo((s << 8) + t, IsMips64EL);
@@ -459,10 +459,10 @@ struct Elf_Rel_Impl<ELFType<TargetEndian
return (uint32_t)(this->getRInfo(isMips64EL) & 0xffffffffL);
}
void setSymbol(uint32_t s, bool IsMips64EL) {
- setSymbolAndType(s, getType(), IsMips64EL);
+ setSymbolAndType(s, getType(IsMips64EL), IsMips64EL);
}
void setType(uint32_t t, bool IsMips64EL) {
- setSymbolAndType(getSymbol(), t, IsMips64EL);
+ setSymbolAndType(getSymbol(IsMips64EL), t, IsMips64EL);
}
void setSymbolAndType(uint32_t s, uint32_t t, bool IsMips64EL) {
this->setRInfo(((uint64_t)s << 32) + (t & 0xffffffffL), IsMips64EL);
More information about the llvm-commits
mailing list