summaryrefslogtreecommitdiffstats
path: root/llvm/test/DebugInfo/dwarfdump-str-offsets-invalid.test
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/test/DebugInfo/dwarfdump-str-offsets-invalid.test')
-rw-r--r--llvm/test/DebugInfo/dwarfdump-str-offsets-invalid.test24
1 files changed, 24 insertions, 0 deletions
diff --git a/llvm/test/DebugInfo/dwarfdump-str-offsets-invalid.test b/llvm/test/DebugInfo/dwarfdump-str-offsets-invalid.test
new file mode 100644
index 00000000000..45916d28de0
--- /dev/null
+++ b/llvm/test/DebugInfo/dwarfdump-str-offsets-invalid.test
@@ -0,0 +1,24 @@
+; Verify that llvm-dwarfdump handles invalid string offset tables.
+
+RUN: llvm-dwarfdump %p/Inputs/dwarfdump-str-offsets-invalid-1.x86_64.o | \
+RUN: FileCheck --check-prefix=INVALIDCONTRIB %s
+RUN: llvm-dwarfdump %p/Inputs/dwarfdump-str-offsets-invalid-2.x86_64.o | \
+RUN: FileCheck --check-prefix=INVALIDCONTRIB %s
+RUN: llvm-dwarfdump %p/Inputs/dwarfdump-str-offsets-invalid-3.x86_64.o | \
+RUN: FileCheck --check-prefix=INVALIDCONTRIB %s
+RUN: llvm-dwarfdump %p/Inputs/dwarfdump-str-offsets-invalid-4.x86_64.o | \
+RUN: FileCheck --check-prefix=INVALIDLENGTH %s
+RUN: llvm-dwarfdump %p/Inputs/dwarfdump-str-offsets-invalid-5.x86_64.o | \
+RUN: FileCheck --check-prefix=INVALIDSECTIONLENGTH %s
+
+INVALIDCONTRIB: .debug_str_offsets contents:
+INVALIDCONTRIB-NOT: contents:
+INVALIDCONTRIB: error: invalid contribution to string offsets table in section .debug_str_offsets.
+
+INVALIDLENGTH: .debug_str_offsets contents:
+INVALIDLENGTH-NOT: contents:
+INVALIDLENGTH: error: contribution to string offsets table in section .debug_str_offsets has invalid length.
+
+INVALIDSECTIONLENGTH: .debug_str_offsets contents:
+INVALIDSECTIONLENGTH-NOT: contents:
+INVALIDSECTIONLENGTH: error: size of .debug_str_offsets is not a multiple of 4.
OpenPOWER on IntegriCloud