diff options
Diffstat (limited to 'llvm/test')
| -rw-r--r-- | llvm/test/DebugInfo/Inputs/dwarfdump-macro-cmd.h | 1 | ||||
| -rw-r--r-- | llvm/test/DebugInfo/Inputs/dwarfdump-macro.cc | 11 | ||||
| -rw-r--r-- | llvm/test/DebugInfo/Inputs/dwarfdump-macro.h | 5 | ||||
| -rw-r--r-- | llvm/test/DebugInfo/Inputs/dwarfdump-macro.o | bin | 0 -> 5616 bytes | |||
| -rw-r--r-- | llvm/test/DebugInfo/debugmacinfo.test | 27 |
5 files changed, 44 insertions, 0 deletions
diff --git a/llvm/test/DebugInfo/Inputs/dwarfdump-macro-cmd.h b/llvm/test/DebugInfo/Inputs/dwarfdump-macro-cmd.h new file mode 100644 index 00000000000..1209f66d5fe --- /dev/null +++ b/llvm/test/DebugInfo/Inputs/dwarfdump-macro-cmd.h @@ -0,0 +1 @@ +#define M4 Value4
diff --git a/llvm/test/DebugInfo/Inputs/dwarfdump-macro.cc b/llvm/test/DebugInfo/Inputs/dwarfdump-macro.cc new file mode 100644 index 00000000000..42b2c6ab54a --- /dev/null +++ b/llvm/test/DebugInfo/Inputs/dwarfdump-macro.cc @@ -0,0 +1,11 @@ +#define M1 Value1
+#include "dwarfdump-macro.h"
+#define M2(x, y) ((x)+(y)* Value2)
+
+// Built with GCC
+// $ mkdir -p /tmp/dbginfo
+// $ cp dwarfdump-macro.cc /tmp/dbginfo
+// $ cp dwarfdump-macro.h /tmp/dbginfo
+// $ cp dwarfdump-macro-cmd.h /tmp/dbginfo
+// $ cd /tmp/dbginfo
+// $ g++ -c -g3 -O0 -DM3=Value3 -include dwarfdump-macro-cmd.h dwarfdump-macro.cc -o <output>
diff --git a/llvm/test/DebugInfo/Inputs/dwarfdump-macro.h b/llvm/test/DebugInfo/Inputs/dwarfdump-macro.h new file mode 100644 index 00000000000..75b35f0e4c2 --- /dev/null +++ b/llvm/test/DebugInfo/Inputs/dwarfdump-macro.h @@ -0,0 +1,5 @@ +
+
+
+#undef M1
+#define M1 NewValue1
diff --git a/llvm/test/DebugInfo/Inputs/dwarfdump-macro.o b/llvm/test/DebugInfo/Inputs/dwarfdump-macro.o Binary files differnew file mode 100644 index 00000000000..5f1cb5e2707 --- /dev/null +++ b/llvm/test/DebugInfo/Inputs/dwarfdump-macro.o diff --git a/llvm/test/DebugInfo/debugmacinfo.test b/llvm/test/DebugInfo/debugmacinfo.test new file mode 100644 index 00000000000..3f95169a7a4 --- /dev/null +++ b/llvm/test/DebugInfo/debugmacinfo.test @@ -0,0 +1,27 @@ +RUN: llvm-dwarfdump -debug-dump=macro %p/Inputs/dwarfdump-macro.o \
+RUN: | FileCheck %s -check-prefix TEST_MACINFO
+RUN: llvm-dwarfdump -debug-dump=line %p/Inputs/dwarfdump-macro.o \
+RUN: | FileCheck %s -check-prefix TEST_LINE
+
+
+; This test verifies that llvm-dwarfdump tools know how to read .debug_macinfo
+; section. It also checks that the file numbers fits with those in the
+; .debug_line section.
+TEST_MACINFO: .debug_macinfo contents:
+TEST_MACINFO: DW_MACINFO_define - lineno: 0 macro: M3 Value3
+TEST_MACINFO: DW_MACINFO_start_file - lineno: 0 filenum: 1
+TEST_MACINFO: DW_MACINFO_start_file - lineno: 0 filenum: 2
+TEST_MACINFO: DW_MACINFO_define - lineno: 1 macro: M4 Value4
+TEST_MACINFO: DW_MACINFO_end_file
+TEST_MACINFO: DW_MACINFO_define - lineno: 1 macro: M1 Value1
+TEST_MACINFO: DW_MACINFO_start_file - lineno: 2 filenum: 3
+TEST_MACINFO: DW_MACINFO_undef - lineno: 4 macro: M1
+TEST_MACINFO: DW_MACINFO_define - lineno: 5 macro: M1 NewValue1
+TEST_MACINFO: DW_MACINFO_end_file
+TEST_MACINFO: DW_MACINFO_define - lineno: 3 macro: M2(x,y) ((x)+(y)* Value2)
+TEST_MACINFO: DW_MACINFO_end_file
+
+TEST_LINE: .debug_line contents:
+TEST_LINE: file_names[ 1] 0 0x00000000 0x00000000 dwarfdump-macro.cc
+TEST_LINE: file_names[ 2] 1 0x00000000 0x00000000 dwarfdump-macro-cmd.h
+TEST_LINE: file_names[ 3] 0 0x00000000 0x00000000 dwarfdump-macro.h
|

