diff options
| author | Rafael Espindola <rafael.espindola@gmail.com> | 2010-12-18 03:57:21 +0000 |
|---|---|---|
| committer | Rafael Espindola <rafael.espindola@gmail.com> | 2010-12-18 03:57:21 +0000 |
| commit | 5004f4a9b586f280c4a831a76c7da5cf3a663e84 (patch) | |
| tree | 10ffb721df99de7dce1438a70114b1a2f4c279e1 /llvm/lib/MC/MCObjectStreamer.cpp | |
| parent | ec00cd9713eb461393cb9ca8b292bcd09e5ce29a (diff) | |
| download | bcm5719-llvm-5004f4a9b586f280c4a831a76c7da5cf3a663e84.tar.gz bcm5719-llvm-5004f4a9b586f280c4a831a76c7da5cf3a663e84.zip | |
Revert 122011, 122012, 122013, 122023 adding back an important optimization.
I added a note, but suggestions on how to add a test are really welcome.
llvm-svn: 122138
Diffstat (limited to 'llvm/lib/MC/MCObjectStreamer.cpp')
| -rw-r--r-- | llvm/lib/MC/MCObjectStreamer.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/MC/MCObjectStreamer.cpp b/llvm/lib/MC/MCObjectStreamer.cpp index 3a79d1921c2..cbc66f1cf9b 100644 --- a/llvm/lib/MC/MCObjectStreamer.cpp +++ b/llvm/lib/MC/MCObjectStreamer.cpp @@ -85,7 +85,7 @@ void MCObjectStreamer::EmitValueImpl(const MCExpr *Value, unsigned Size, // Avoid fixups when possible. int64_t AbsValue; - if (AddValueSymbols(Value)->EvaluateAsAbsolute(AbsValue)) { + if (AddValueSymbols(Value)->EvaluateAsAbsolute(AbsValue, getAssembler())) { EmitIntValue(AbsValue, Size, AddrSpace); return; } @@ -116,7 +116,7 @@ void MCObjectStreamer::EmitLabel(MCSymbol *Symbol) { void MCObjectStreamer::EmitULEB128Value(const MCExpr *Value, unsigned AddrSpace) { int64_t IntValue; - if (Value->EvaluateAsAbsolute(IntValue)) { + if (Value->EvaluateAsAbsolute(IntValue, getAssembler())) { EmitULEB128IntValue(IntValue, AddrSpace); return; } @@ -126,7 +126,7 @@ void MCObjectStreamer::EmitULEB128Value(const MCExpr *Value, void MCObjectStreamer::EmitSLEB128Value(const MCExpr *Value, unsigned AddrSpace) { int64_t IntValue; - if (Value->EvaluateAsAbsolute(IntValue)) { + if (Value->EvaluateAsAbsolute(IntValue, getAssembler())) { EmitSLEB128IntValue(IntValue, AddrSpace); return; } @@ -206,7 +206,7 @@ void MCObjectStreamer::EmitDwarfAdvanceLineAddr(int64_t LineDelta, MCBinaryExpr::Create(MCBinaryExpr::Sub, LabelRef, LastLabelRef, getContext()); int64_t Res; - if (AddrDelta->EvaluateAsAbsolute(Res)) { + if (AddrDelta->EvaluateAsAbsolute(Res, getAssembler())) { MCDwarfLineAddr::Emit(this, LineDelta, Res); return; } |

