MC: Remove unneeded context argument to MCExpr::Evaluate*.
authorDaniel Dunbar <daniel@zuster.org>
Fri, 16 Oct 2009 01:57:52 +0000 (01:57 +0000)
committerDaniel Dunbar <daniel@zuster.org>
Fri, 16 Oct 2009 01:57:52 +0000 (01:57 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@84233 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/MC/MCExpr.h
lib/MC/MCExpr.cpp
lib/MC/MCMachOStreamer.cpp
tools/llvm-mc/AsmParser.cpp

index 19a32e7addedf33ca3c30bffa670482a41b22c3f..7ae3ba2b17c141664735d278cb71ad9c68003e5f 100644 (file)
@@ -62,14 +62,14 @@ public:
   ///
   /// @param Res - The absolute value, if evaluation succeeds.
   /// @result - True on success.
-  bool EvaluateAsAbsolute(MCContext &Ctx, int64_t &Res) const;
+  bool EvaluateAsAbsolute(int64_t &Res) const;
 
   /// EvaluateAsRelocatable - Try to evaluate the expression to a relocatable
   /// value, i.e. an expression of the fixed form (a - b + constant).
   ///
   /// @param Res - The relocatable value, if evaluation succeeds.
   /// @result - True on success.
-  bool EvaluateAsRelocatable(MCContext &Ctx, MCValue &Res) const;
+  bool EvaluateAsRelocatable(MCValue &Res) const;
 
   /// @}
 
index d6e545fa78c9e387329ea61271811a27fc3fe972..c950ff2ff5c3c401ed852c0ff406bc0ebfb316b2 100644 (file)
@@ -141,10 +141,10 @@ const MCSymbolRefExpr *MCSymbolRefExpr::Create(const StringRef &Name,
 
 /* *** */
 
-bool MCExpr::EvaluateAsAbsolute(MCContext &Ctx, int64_t &Res) const {
+bool MCExpr::EvaluateAsAbsolute(int64_t &Res) const {
   MCValue Value;
   
-  if (!EvaluateAsRelocatable(Ctx, Value) || !Value.isAbsolute())
+  if (!EvaluateAsRelocatable(Value) || !Value.isAbsolute())
     return false;
 
   Res = Value.getConstant();
@@ -173,7 +173,7 @@ static bool EvaluateSymbolicAdd(const MCValue &LHS, const MCSymbol *RHS_A,
   return true;
 }
 
-bool MCExpr::EvaluateAsRelocatable(MCContext &Ctx, MCValue &Res) const {
+bool MCExpr::EvaluateAsRelocatable(MCValue &Res) const {
   switch (getKind()) {
   case Constant:
     Res = MCValue::get(cast<MCConstantExpr>(this)->getValue());
@@ -184,7 +184,7 @@ bool MCExpr::EvaluateAsRelocatable(MCContext &Ctx, MCValue &Res) const {
 
     // Evaluate recursively if this is a variable.
     if (Sym.isVariable())
-      return Sym.getValue()->EvaluateAsRelocatable(Ctx, Res);
+      return Sym.getValue()->EvaluateAsRelocatable(Res);
 
     Res = MCValue::get(&Sym, 0, 0);
     return true;
@@ -194,7 +194,7 @@ bool MCExpr::EvaluateAsRelocatable(MCContext &Ctx, MCValue &Res) const {
     const MCUnaryExpr *AUE = cast<MCUnaryExpr>(this);
     MCValue Value;
 
-    if (!AUE->getSubExpr()->EvaluateAsRelocatable(Ctx, Value))
+    if (!AUE->getSubExpr()->EvaluateAsRelocatable(Value))
       return false;
 
     switch (AUE->getOpcode()) {
@@ -227,8 +227,8 @@ bool MCExpr::EvaluateAsRelocatable(MCContext &Ctx, MCValue &Res) const {
     const MCBinaryExpr *ABE = cast<MCBinaryExpr>(this);
     MCValue LHSValue, RHSValue;
     
-    if (!ABE->getLHS()->EvaluateAsRelocatable(Ctx, LHSValue) ||
-        !ABE->getRHS()->EvaluateAsRelocatable(Ctx, RHSValue))
+    if (!ABE->getLHS()->EvaluateAsRelocatable(LHSValue) ||
+        !ABE->getRHS()->EvaluateAsRelocatable(RHSValue))
       return false;
 
     // We only support a few operations on non-constant expressions, handle
index e04bd1fd1cb89c9f2b4ad90112050ab633e7f33e..b592391c51227427672413e0a7274b2c009e40f2 100644 (file)
@@ -346,8 +346,7 @@ void MCMachOStreamer::EmitValueToOffset(const MCExpr *Offset,
                                         unsigned char Value) {
   MCValue RelocOffset;
 
-  if (!AddValueSymbols(Offset)->EvaluateAsRelocatable(getContext(),
-                                                      RelocOffset))
+  if (!AddValueSymbols(Offset)->EvaluateAsRelocatable(RelocOffset))
     return llvm_report_error("expected relocatable expression");
 
   new MCOrgFragment(RelocOffset, Value, CurSectionData);
index 02b7c396a4b814623a95a6943e853ed4d49c76b1..436f17d423b218bd80ab9466f344ff719ad4ee10 100644 (file)
@@ -292,7 +292,7 @@ bool AsmParser::ParseAbsoluteExpression(int64_t &Res) {
   if (ParseExpression(Expr))
     return true;
 
-  if (!Expr->EvaluateAsAbsolute(Ctx, Res))
+  if (!Expr->EvaluateAsAbsolute(Res))
     return Error(StartLoc, "expected absolute expression");
 
   return false;