diff options
author | Daniel Dunbar <daniel@zuster.org> | 2010-12-17 01:07:31 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2010-12-17 01:07:31 +0000 |
commit | 92c66c7bf9533d0ab7cece9532c5060e7d3db6ca (patch) | |
tree | b06bf836a363c1572c3ab3e67bf5ba2a29381d9c | |
parent | 204e3b65eba7f8205a4160865224ffb0a471cd97 (diff) |
MC: Remove dead MCAssembler argument -- Rafael, can you check the FIXME I added
here?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@122012 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/llvm/MC/MCExpr.h | 3 | ||||
-rw-r--r-- | lib/MC/MCExpr.cpp | 21 |
2 files changed, 10 insertions, 14 deletions
diff --git a/include/llvm/MC/MCExpr.h b/include/llvm/MC/MCExpr.h index da3cebe414..5a1ca10dd9 100644 --- a/include/llvm/MC/MCExpr.h +++ b/include/llvm/MC/MCExpr.h @@ -50,8 +50,7 @@ private: protected: explicit MCExpr(ExprKind _Kind) : Kind(_Kind) {} - bool EvaluateAsRelocatableImpl(MCValue &Res, const MCAssembler *Asm, - const MCAsmLayout *Layout, + bool EvaluateAsRelocatableImpl(MCValue &Res, const MCAsmLayout *Layout, const SectionAddrMap *Addrs, bool InSet) const; public: diff --git a/lib/MC/MCExpr.cpp b/lib/MC/MCExpr.cpp index 3e43cd8d97..eb556937b6 100644 --- a/lib/MC/MCExpr.cpp +++ b/lib/MC/MCExpr.cpp @@ -267,7 +267,8 @@ bool MCExpr::EvaluateAsAbsolute(int64_t &Res, const MCAssembler *Asm, return true; } - if (!EvaluateAsRelocatableImpl(Value, Asm, Layout, Addrs, Addrs) || + // FIXME: This use of Addrs is wrong, right? + if (!EvaluateAsRelocatableImpl(Value, Layout, Addrs, /*InSet=*/Addrs) || !Value.isAbsolute()) { // EvaluateAsAbsolute is defined to return the "current value" of // the expression if we are given a Layout object, even in cases @@ -377,14 +378,12 @@ static bool EvaluateSymbolicAdd(const MCAsmLayout *Layout, bool MCExpr::EvaluateAsRelocatable(MCValue &Res, const MCAsmLayout *Layout) const { if (Layout) - return EvaluateAsRelocatableImpl(Res, &Layout->getAssembler(), Layout, - 0, false); + return EvaluateAsRelocatableImpl(Res, Layout, 0, false); else - return EvaluateAsRelocatableImpl(Res, 0, 0, 0, false); + return EvaluateAsRelocatableImpl(Res, 0, 0, false); } bool MCExpr::EvaluateAsRelocatableImpl(MCValue &Res, - const MCAssembler *Asm, const MCAsmLayout *Layout, const SectionAddrMap *Addrs, bool InSet) const { @@ -404,10 +403,8 @@ bool MCExpr::EvaluateAsRelocatableImpl(MCValue &Res, // Evaluate recursively if this is a variable. if (Sym.isVariable() && SRE->getKind() == MCSymbolRefExpr::VK_None) { - bool Ret = Sym.getVariableValue()->EvaluateAsRelocatableImpl(Res, Asm, - Layout, - Addrs, - true); + bool Ret = Sym.getVariableValue()->EvaluateAsRelocatableImpl(Res, Layout, + Addrs, true); // If we failed to simplify this to a constant, let the target // handle it. if (Ret && !Res.getSymA() && !Res.getSymB()) @@ -422,7 +419,7 @@ bool MCExpr::EvaluateAsRelocatableImpl(MCValue &Res, const MCUnaryExpr *AUE = cast<MCUnaryExpr>(this); MCValue Value; - if (!AUE->getSubExpr()->EvaluateAsRelocatableImpl(Value, Asm, Layout, + if (!AUE->getSubExpr()->EvaluateAsRelocatableImpl(Value, Layout, Addrs, InSet)) return false; @@ -456,9 +453,9 @@ bool MCExpr::EvaluateAsRelocatableImpl(MCValue &Res, const MCBinaryExpr *ABE = cast<MCBinaryExpr>(this); MCValue LHSValue, RHSValue; - if (!ABE->getLHS()->EvaluateAsRelocatableImpl(LHSValue, Asm, Layout, + if (!ABE->getLHS()->EvaluateAsRelocatableImpl(LHSValue, Layout, Addrs, InSet) || - !ABE->getRHS()->EvaluateAsRelocatableImpl(RHSValue, Asm, Layout, + !ABE->getRHS()->EvaluateAsRelocatableImpl(RHSValue, Layout, Addrs, InSet)) return false; |