diff options
| author | Daniel Dunbar <daniel@zuster.org> | 2010-03-25 22:49:09 +0000 |
|---|---|---|
| committer | Daniel Dunbar <daniel@zuster.org> | 2010-03-25 22:49:09 +0000 |
| commit | d821f4ac60e0a6228f73e74bed0c2aa6578e6d39 (patch) | |
| tree | 5e6e8b4a82af15468c46ea0125a6a71cea1fc058 /llvm/include | |
| parent | 63eed63312c150d70d056d0e569122280e783e5a (diff) | |
| download | bcm5719-llvm-d821f4ac60e0a6228f73e74bed0c2aa6578e6d39.tar.gz bcm5719-llvm-d821f4ac60e0a6228f73e74bed0c2aa6578e6d39.zip | |
llvm-mc: Add a -mc-relax-all option, which relaxes every fixup. We always need
exactly two passes in that case, and don't ever need to recompute any layout,
so this is a nice baseline for relaxation performance.
llvm-svn: 99563
Diffstat (limited to 'llvm/include')
| -rw-r--r-- | llvm/include/llvm/MC/MCAssembler.h | 4 | ||||
| -rw-r--r-- | llvm/include/llvm/MC/MCStreamer.h | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/llvm/include/llvm/MC/MCAssembler.h b/llvm/include/llvm/MC/MCAssembler.h index 031ca18d748..c1b60f011fd 100644 --- a/llvm/include/llvm/MC/MCAssembler.h +++ b/llvm/include/llvm/MC/MCAssembler.h @@ -624,6 +624,7 @@ private: std::vector<IndirectSymbolData> IndirectSymbols; + unsigned RelaxAll : 1; unsigned SubsectionsViaSymbols : 1; private: @@ -727,6 +728,9 @@ public: SubsectionsViaSymbols = Value; } + bool getRelaxAll() const { return RelaxAll; } + void setRelaxAll(bool Value) { RelaxAll = Value; } + /// @name Section List Access /// @{ diff --git a/llvm/include/llvm/MC/MCStreamer.h b/llvm/include/llvm/MC/MCStreamer.h index ce67b3aebfd..bdcfdb2debe 100644 --- a/llvm/include/llvm/MC/MCStreamer.h +++ b/llvm/include/llvm/MC/MCStreamer.h @@ -308,7 +308,8 @@ class TargetAsmBackend; /// createMachOStream - Create a machine code streamer which will generative /// Mach-O format object files. MCStreamer *createMachOStreamer(MCContext &Ctx, TargetAsmBackend &TAB, - raw_ostream &OS, MCCodeEmitter *CE); + raw_ostream &OS, MCCodeEmitter *CE, + bool RelaxAll = false); } // end namespace llvm |

