From 92c66c7bf9533d0ab7cece9532c5060e7d3db6ca Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Fri, 17 Dec 2010 01:07:31 +0000 Subject: [PATCH] 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 --- include/llvm/MC/MCExpr.h | 3 +-- 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 da3cebe414e..5a1ca10dd90 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 3e43cd8d97b..eb556937b61 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(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(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;