From 56918c82dea63c801667efeba5cb8ffd24f07387 Mon Sep 17 00:00:00 2001 From: Jim Laskey Date: Thu, 30 Nov 2006 15:36:44 +0000 Subject: [PATCH] Add compile unit size test git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32040 91177308-0d34-0410-b5e6-96231b3b80d8 --- test/DebugInfo/2006-11-30-NoCompileUnit.cpp | 58 +++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 test/DebugInfo/2006-11-30-NoCompileUnit.cpp diff --git a/test/DebugInfo/2006-11-30-NoCompileUnit.cpp b/test/DebugInfo/2006-11-30-NoCompileUnit.cpp new file mode 100644 index 00000000000..cac671c564a --- /dev/null +++ b/test/DebugInfo/2006-11-30-NoCompileUnit.cpp @@ -0,0 +1,58 @@ +// This is a regression test on debug info to make sure we don't hit a compile unit size +// issue with gdb. +// RUN: %llvmgcc -S -O0 -g %s -o - | llvm-as | llc --disable-fp-elim -o Output/NoCompileUnit.s -f +// RUN: as Output/NoCompileUnit.s -o Output/NoCompileUnit.o +// RUN: g++ Output/NoCompileUnit.o -o Output/NoCompileUnit.exe +// RUN: ( echo "break main"; echo "run" ; echo "p NoCompileUnit::pubname" ) > Output/NoCompileUnit.gdbin +// RUN: gdb -q -batch -n -x Output/NoCompileUnit.gdbin Output/NoCompileUnit.exe | tee Output/NoCompileUnit.out | not grep '"low == high"' +// XFAIL: i[1-9]86|alpha|ia64|arm + + +class MamaDebugTest { +private: + int N; + +protected: + MamaDebugTest(int n) : N(n) {} + + int getN() const { return N; } + +}; + +class BabyDebugTest : public MamaDebugTest { +private: + +public: + BabyDebugTest(int n) : MamaDebugTest(n) {} + + static int doh; + + int doit() { + int N = getN(); + int Table[N]; + + int sum = 0; + + for (int i = 0; i < N; ++i) { + int j = i; + Table[i] = j; + } + for (int i = 0; i < N; ++i) { + int j = Table[i]; + sum += j; + } + + return sum; + } + +}; + +int BabyDebugTest::doh; + + +int main(int argc, const char *argv[]) { + BabyDebugTest BDT(20); + return BDT.doit(); +} + +