diff options
| author | Chris Lattner <sabre@nondot.org> | 2009-07-07 20:30:46 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2009-07-07 20:30:46 +0000 |
| commit | e29dbe364ee4b2bda677d8339a2807d8a639fcf5 (patch) | |
| tree | 3ef227b9e607013736fca50b48e0f408703d4bef /lib | |
| parent | 4956cde4ae52dbd63ddb6cdf7af56a72731007ec (diff) | |
| download | external_llvm-e29dbe364ee4b2bda677d8339a2807d8a639fcf5.zip external_llvm-e29dbe364ee4b2bda677d8339a2807d8a639fcf5.tar.gz external_llvm-e29dbe364ee4b2bda677d8339a2807d8a639fcf5.tar.bz2 | |
Implement parsing support for the .comm directive. Patch by
Kevin Enderby!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74944 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/MC/MCAsmStreamer.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/MC/MCAsmStreamer.cpp b/lib/MC/MCAsmStreamer.cpp index 7d94464..f4aeaf3 100644 --- a/lib/MC/MCAsmStreamer.cpp +++ b/lib/MC/MCAsmStreamer.cpp @@ -41,6 +41,9 @@ namespace { virtual void EmitSymbolAttribute(MCSymbol *Symbol, SymbolAttr Attribute); + virtual void EmitCommonSymbol(MCSymbol *Symbol, unsigned Size, + unsigned Pow2Alignment); + virtual void EmitBytes(const char *Data, unsigned Length); virtual void EmitValue(const MCValue &Value, unsigned Size); @@ -142,6 +145,15 @@ void MCAsmStreamer::EmitSymbolAttribute(MCSymbol *Symbol, OS << ' ' << Symbol->getName() << '\n'; } +void MCAsmStreamer::EmitCommonSymbol(MCSymbol *Symbol, unsigned Size, + unsigned Pow2Alignment) { + OS << ".comm"; + OS << ' ' << Symbol->getName() << ',' << Size; + if (Pow2Alignment != 0) + OS << ',' << Pow2Alignment; + OS << '\n'; +} + void MCAsmStreamer::EmitBytes(const char *Data, unsigned Length) { assert(CurSection && "Cannot emit contents before setting section!"); for (unsigned i = 0; i != Length; ++i) |
