aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/MC/MCObjectStreamer.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2011-01-13 07:58:56 +0000
committerEvan Cheng <evan.cheng@apple.com>2011-01-13 07:58:56 +0000
commit965b3c7323db37ee291ec6076babfcfe98331bf5 (patch)
tree15d11622b3822c47c16cd1826b81abeb149f07c8 /llvm/lib/MC/MCObjectStreamer.cpp
parent304b6e4aa11126919a1bf5c8ab1c5b7a334573c4 (diff)
downloadllvm-965b3c7323db37ee291ec6076babfcfe98331bf5.zip
llvm-965b3c7323db37ee291ec6076babfcfe98331bf5.tar.gz
llvm-965b3c7323db37ee291ec6076babfcfe98331bf5.tar.bz2
Model :upper16: and :lower16: as ARM specific MCTargetExpr. This is a step
in the right direction. It eliminated some hacks and will unblock codegen work. But it's far from being done. It doesn't reject illegal expressions, e.g. (FOO - :lower16:BAR). It also doesn't work in Thumb2 mode at all. llvm-svn: 123369
Diffstat (limited to 'llvm/lib/MC/MCObjectStreamer.cpp')
-rw-r--r--llvm/lib/MC/MCObjectStreamer.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/llvm/lib/MC/MCObjectStreamer.cpp b/llvm/lib/MC/MCObjectStreamer.cpp
index b428e87..ecd7257 100644
--- a/llvm/lib/MC/MCObjectStreamer.cpp
+++ b/llvm/lib/MC/MCObjectStreamer.cpp
@@ -56,7 +56,10 @@ MCDataFragment *MCObjectStreamer::getOrCreateDataFragment() const {
const MCExpr *MCObjectStreamer::AddValueSymbols(const MCExpr *Value) {
switch (Value->getKind()) {
- case MCExpr::Target: llvm_unreachable("Can't handle target exprs yet!");
+ case MCExpr::Target:
+ cast<MCTargetExpr>(Value)->AddValueSymbols(Assembler);
+ break;
+
case MCExpr::Constant:
break;