forked from OSchip/llvm-project
[MC] Delete an overload of MCExpr::evaluateKnownAbsolute and its associated hack
The hack dated back to 2010 (r121076) and was documented by r122144: // FIXME: The use if InSet = Addrs is a hack. Setting InSet causes us // absolutize differences across sections and that is what the MachO writer // uses Addrs for. llvm-svn: 369337
This commit is contained in:
parent
9e8b011195
commit
2682340cdf
|
@ -46,10 +46,6 @@ private:
|
|||
ExprKind Kind;
|
||||
SMLoc Loc;
|
||||
|
||||
bool evaluateAsAbsolute(int64_t &Res, const MCAssembler *Asm,
|
||||
const MCAsmLayout *Layout,
|
||||
const SectionAddrMap *Addrs) const;
|
||||
|
||||
bool evaluateAsAbsolute(int64_t &Res, const MCAssembler *Asm,
|
||||
const MCAsmLayout *Layout,
|
||||
const SectionAddrMap *Addrs, bool InSet) const;
|
||||
|
|
|
@ -453,26 +453,28 @@ void MCTargetExpr::anchor() {}
|
|||
/* *** */
|
||||
|
||||
bool MCExpr::evaluateAsAbsolute(int64_t &Res) const {
|
||||
return evaluateAsAbsolute(Res, nullptr, nullptr, nullptr);
|
||||
return evaluateAsAbsolute(Res, nullptr, nullptr, nullptr, false);
|
||||
}
|
||||
|
||||
bool MCExpr::evaluateAsAbsolute(int64_t &Res,
|
||||
const MCAsmLayout &Layout) const {
|
||||
return evaluateAsAbsolute(Res, &Layout.getAssembler(), &Layout, nullptr);
|
||||
return evaluateAsAbsolute(Res, &Layout.getAssembler(), &Layout, nullptr, false);
|
||||
}
|
||||
|
||||
bool MCExpr::evaluateAsAbsolute(int64_t &Res,
|
||||
const MCAsmLayout &Layout,
|
||||
const SectionAddrMap &Addrs) const {
|
||||
return evaluateAsAbsolute(Res, &Layout.getAssembler(), &Layout, &Addrs);
|
||||
// Setting InSet causes us to absolutize differences across sections and that
|
||||
// is what the MachO writer uses Addrs for.
|
||||
return evaluateAsAbsolute(Res, &Layout.getAssembler(), &Layout, &Addrs, true);
|
||||
}
|
||||
|
||||
bool MCExpr::evaluateAsAbsolute(int64_t &Res, const MCAssembler &Asm) const {
|
||||
return evaluateAsAbsolute(Res, &Asm, nullptr, nullptr);
|
||||
return evaluateAsAbsolute(Res, &Asm, nullptr, nullptr, false);
|
||||
}
|
||||
|
||||
bool MCExpr::evaluateAsAbsolute(int64_t &Res, const MCAssembler *Asm) const {
|
||||
return evaluateAsAbsolute(Res, Asm, nullptr, nullptr);
|
||||
return evaluateAsAbsolute(Res, Asm, nullptr, nullptr, false);
|
||||
}
|
||||
|
||||
bool MCExpr::evaluateKnownAbsolute(int64_t &Res,
|
||||
|
@ -481,15 +483,6 @@ bool MCExpr::evaluateKnownAbsolute(int64_t &Res,
|
|||
true);
|
||||
}
|
||||
|
||||
bool MCExpr::evaluateAsAbsolute(int64_t &Res, const MCAssembler *Asm,
|
||||
const MCAsmLayout *Layout,
|
||||
const SectionAddrMap *Addrs) const {
|
||||
// FIXME: The use if InSet = Addrs is a hack. Setting InSet causes us
|
||||
// absolutize differences across sections and that is what the MachO writer
|
||||
// uses Addrs for.
|
||||
return evaluateAsAbsolute(Res, Asm, Layout, Addrs, Addrs);
|
||||
}
|
||||
|
||||
bool MCExpr::evaluateAsAbsolute(int64_t &Res, const MCAssembler *Asm,
|
||||
const MCAsmLayout *Layout,
|
||||
const SectionAddrMap *Addrs, bool InSet) const {
|
||||
|
|
Loading…
Reference in New Issue