mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
[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
a458870688
commit
0141652683
@ -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
Block a user