summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2014-03-18 20:40:38 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2014-03-18 20:40:38 +0000
commit4af106a677eca0c2ee979d01d2874998f5273492 (patch)
tree31211ab8a2a4be42c172867e3e3e4ff1a916b5bd /include
parent7f22dc90adfc6d589179bf3e4f3609bdc119f479 (diff)
downloadllvm-4af106a677eca0c2ee979d01d2874998f5273492.tar.gz
llvm-4af106a677eca0c2ee979d01d2874998f5273492.tar.bz2
llvm-4af106a677eca0c2ee979d01d2874998f5273492.tar.xz
Add back r203962, r204028 and r204059.
This reverts commit r204137. This includes a fix for handling aliases of aliases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@204178 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include')
-rw-r--r--include/llvm/MC/MCSymbol.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/include/llvm/MC/MCSymbol.h b/include/llvm/MC/MCSymbol.h
index ea14da1e15..866d9a9a68 100644
--- a/include/llvm/MC/MCSymbol.h
+++ b/include/llvm/MC/MCSymbol.h
@@ -18,6 +18,7 @@
#include "llvm/Support/Compiler.h"
namespace llvm {
+ class MCAsmLayout;
class MCExpr;
class MCSection;
class MCContext;
@@ -145,6 +146,11 @@ namespace llvm {
// itself.
const MCSymbol &AliasedSymbol() const;
+ // If this symbol is not a variable, return itself. If it is a variable,
+ // evaluate it and check if it is of the form Base + ConstantOffset. If so,
+ // return Base, if not, return nullptr.
+ const MCSymbol *getBaseSymbol(const MCAsmLayout &Layout) const;
+
void setVariableValue(const MCExpr *Value);
/// @}