diff options
author | Daniel Dunbar <daniel@zuster.org> | 2009-06-24 16:05:35 +0000 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2009-06-24 16:05:35 +0000 |
commit | f5e75a1fa9a7ba8cd31804b63fb301a3df2e1ce1 (patch) | |
tree | 0ccd2620f2c2a4bcca062b1537ff70b8c6583ac5 /unittests/MC/AsmStreamerTest.cpp | |
parent | 9311ef6a916cb5d95056842b26848fd56bcc0ebc (diff) |
MCStreamer: Test printing values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@74076 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'unittests/MC/AsmStreamerTest.cpp')
-rw-r--r-- | unittests/MC/AsmStreamerTest.cpp | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/unittests/MC/AsmStreamerTest.cpp b/unittests/MC/AsmStreamerTest.cpp index 80cd456085..d973301074 100644 --- a/unittests/MC/AsmStreamerTest.cpp +++ b/unittests/MC/AsmStreamerTest.cpp @@ -10,6 +10,7 @@ #include "gtest/gtest.h" #include "llvm/MC/MCContext.h" #include "llvm/MC/MCStreamer.h" +#include "llvm/MC/MCValue.h" #include "llvm/Support/raw_ostream.h" using namespace llvm; @@ -49,4 +50,28 @@ TEST(AsmStreamer, Sections) { EXPECT_EQ(S.getString(), ".section foo\n"); } +TEST(AsmStreamer, Values) { + StringAsmStreamer S; + MCSection *Sec0 = S.getContext().GetSection("foo"); + MCSymbol *A = S.getContext().CreateSymbol(S.getContext().CreateAtom(Sec0), + "a"); + MCSymbol *B = S.getContext().CreateSymbol(S.getContext().CreateAtom(Sec0), + "b"); + S.getStreamer().SwitchSection(Sec0); + S.getStreamer().EmitLabel(A); + S.getStreamer().EmitLabel(B); + S.getStreamer().EmitValue(MCValue::get(A, B, 10), 1); + S.getStreamer().EmitValue(MCValue::get(A, B, 10), 2); + S.getStreamer().EmitValue(MCValue::get(A, B, 10), 4); + S.getStreamer().EmitValue(MCValue::get(A, B, 10), 8); + EXPECT_EQ(S.getString(), ".section foo\n\ +a:\n\ +b:\n\ +.byte a - b + 10\n\ +.short a - b + 10\n\ +.long a - b + 10\n\ +.quad a - b + 10\n\ +"); +} + } |