diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2010-12-04 03:21:47 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2010-12-04 03:21:47 +0000 |
commit | 5d4918dbd116b0b5e561c431b1ea527ee1b9302a (patch) | |
tree | 3c50fff76598829d12b03b798194dcc6f0ab039d /include/llvm/MC/MCObjectStreamer.h | |
parent | 9ad8221bcb26643ae5837d7f27b41610eeec98a7 (diff) | |
download | external_llvm-5d4918dbd116b0b5e561c431b1ea527ee1b9302a.zip external_llvm-5d4918dbd116b0b5e561c431b1ea527ee1b9302a.tar.gz external_llvm-5d4918dbd116b0b5e561c431b1ea527ee1b9302a.tar.bz2 |
There are two reasons why we might want to use
foo = a - b
.long foo
instead of just
.long a - b
First, on darwin9 64 bits the assembler produces the wrong result. Second,
if "a" is the end of the section all darwin assemblers (9, 10 and mc) will not
consider a - b to be a constant but will if the dummy foo is created.
Split how we handle these cases. The first one is something MC should take care
of. The second one has to be handled by the caller.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@120889 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/MC/MCObjectStreamer.h')
-rw-r--r-- | include/llvm/MC/MCObjectStreamer.h | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/include/llvm/MC/MCObjectStreamer.h b/include/llvm/MC/MCObjectStreamer.h index a3f532d..d130ba4 100644 --- a/include/llvm/MC/MCObjectStreamer.h +++ b/include/llvm/MC/MCObjectStreamer.h @@ -60,8 +60,7 @@ public: /// @{ virtual void EmitLabel(MCSymbol *Symbol); - virtual void EmitValue(const MCExpr *Value, unsigned Size,unsigned AddrSpace, - bool UseSet = false); + virtual void EmitValue(const MCExpr *Value, unsigned Size,unsigned AddrSpace); virtual void EmitULEB128Value(const MCExpr *Value, unsigned AddrSpace = 0); virtual void EmitSLEB128Value(const MCExpr *Value, unsigned AddrSpace = 0); virtual void EmitWeakReference(MCSymbol *Alias, const MCSymbol *Symbol); |