summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2017-10-02 16:02:04 +0000
committerJonas Devlieghere <jonas@devlieghere.com>2017-10-02 16:02:04 +0000
commitf91dc28b7b64e2ad75ccb21d66db3ff5f8b780d4 (patch)
tree0814a278c81b5ab46fa02785f3fc74f53e07dc64 /llvm/test
parentb7055bb8130ab84bc4b47849c0ff25d00b5ecca1 (diff)
downloadbcm5719-llvm-f91dc28b7b64e2ad75ccb21d66db3ff5f8b780d4.tar.gz
bcm5719-llvm-f91dc28b7b64e2ad75ccb21d66db3ff5f8b780d4.zip
[dwarfdump] Add -show-form
This enables printing of DWARF form types after the DWARF attribute types. Differential revision: https://reviews.llvm.org/D38459 llvm-svn: 314685
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/tools/llvm-dwarfdump/X86/form.test40
-rw-r--r--llvm/test/tools/llvm-dwarfdump/cmdline.test3
2 files changed, 42 insertions, 1 deletions
diff --git a/llvm/test/tools/llvm-dwarfdump/X86/form.test b/llvm/test/tools/llvm-dwarfdump/X86/form.test
new file mode 100644
index 00000000000..92b7996a06d
--- /dev/null
+++ b/llvm/test/tools/llvm-dwarfdump/X86/form.test
@@ -0,0 +1,40 @@
+# This test verifies that DWARF form types are printed in verbose mode and when
+# passing -F but not in brief mode.
+
+# RUN: llvm-mc %S/brief.s -filetype obj -triple x86_64-apple-darwin -o - \
+# RUN: | llvm-dwarfdump -v --debug-info - \
+# RUN: | FileCheck %s
+
+# RUN: llvm-mc %S/brief.s -filetype obj -triple x86_64-apple-darwin -o - \
+# RUN: | llvm-dwarfdump -F --debug-info - \
+# RUN: | FileCheck %s
+
+# RUN: llvm-mc %S/brief.s -filetype obj -triple x86_64-apple-darwin -o - \
+# RUN: | llvm-dwarfdump --debug-info - \
+# RUN: | FileCheck %s --check-prefix NO-FORM
+
+# CHECK: DW_TAG_compile_unit
+# CHECK: DW_AT_producer [DW_FORM_strp]
+# CHECK: DW_AT_language [DW_FORM_data2]
+# CHECK: DW_AT_name [DW_FORM_strp]
+# CHECK: DW_AT_stmt_list [DW_FORM_sec_offset]
+# CHECK: DW_AT_comp_dir [DW_FORM_strp]
+# CHECK: DW_AT_low_pc [DW_FORM_addr]
+# CHECK: DW_AT_high_pc [DW_FORM_data4]
+
+# CHECK: DW_TAG_subprogram
+# CHECK: DW_AT_low_pc [DW_FORM_addr]
+# CHECK: DW_AT_high_pc [DW_FORM_data4]
+# CHECK: DW_AT_frame_base [DW_FORM_exprloc]
+# CHECK: DW_AT_name [DW_FORM_strp]
+# CHECK: DW_AT_decl_file [DW_FORM_data1]
+# CHECK: DW_AT_decl_line [DW_FORM_data1]
+# CHECK: DW_AT_type [DW_FORM_ref4]
+# CHECK: DW_AT_external [DW_FORM_flag_present]
+
+# CHECK: DW_TAG_base_type
+# CHECK: DW_AT_name [DW_FORM_strp]
+# CHECK: DW_AT_encoding [DW_FORM_data1]
+# CHECK: DW_AT_byte_size [DW_FORM_data1]
+
+# NO-FORM-NOT: DW_FORM_
diff --git a/llvm/test/tools/llvm-dwarfdump/cmdline.test b/llvm/test/tools/llvm-dwarfdump/cmdline.test
index fd06f77dda3..16b422a960b 100644
--- a/llvm/test/tools/llvm-dwarfdump/cmdline.test
+++ b/llvm/test/tools/llvm-dwarfdump/cmdline.test
@@ -8,8 +8,9 @@ HELP: -eh-frame
HELP: Specific Options
HELP: -find
HELP: -name
-HELP: -recurse-depth=<N>
+HELP: -recurse-depth=<N>
HELP: -show-children
+HELP: -show-form
HELP: -show-parents
HELP: -summarize-types
HELP-NOT: -reverse-iterate
OpenPOWER on IntegriCloud