diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2018-06-27 19:58:39 +0000 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2018-06-27 19:58:39 +0000 |
commit | 8e93917e8d14f2785149f9e1fd22288a0da1ddb4 (patch) | |
tree | eb605bcc2f1807383ea85323e42b058af3458001 /lldb/packages/Python/lldbsuite/test | |
parent | bc0748e81230a5230d8dfbf0b4ef06dafe3c2434 (diff) | |
download | bcm5719-llvm-8e93917e8d14f2785149f9e1fd22288a0da1ddb4.tar.gz bcm5719-llvm-8e93917e8d14f2785149f9e1fd22288a0da1ddb4.zip |
[SymbolFile] Implement GetCompleteObjCClass for .debug_names
When running the test suite with .debug_names a bunch of tests were
failing because GetCompleteObjCClass was not yet implemented for
DebugNamesDWARFIndex. This patch adds the required logic.
We use the .debug_names to find the Objective-C class and then rely on
DW_AT_APPLE_objc_complete_type to find the complete type. If we can't
find it or the attribute is not supported, we return a list of potential
complete types.
Differential revision: https://reviews.llvm.org/D48596
llvm-svn: 335776
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
-rw-r--r-- | lldb/packages/Python/lldbsuite/test/lang/objc/forward-decl/TestForwardDecl.py | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/lang/objc/forward-decl/TestForwardDecl.py b/lldb/packages/Python/lldbsuite/test/lang/objc/forward-decl/TestForwardDecl.py index c89a36a99bd..218d73c72fd 100644 --- a/lldb/packages/Python/lldbsuite/test/lang/objc/forward-decl/TestForwardDecl.py +++ b/lldb/packages/Python/lldbsuite/test/lang/objc/forward-decl/TestForwardDecl.py @@ -23,9 +23,8 @@ class ForwardDeclTestCase(TestBase): self.line = line_number(self.source, '// Set breakpoint 0 here.') self.shlib_names = ["Container"] - @skipUnlessDarwin - def test_expr(self): - self.build() + def do_test(self, dictionary=None): + self.build(dictionary=dictionary) # Create a target by the debugger. target = self.dbg.CreateTarget(self.getBuildArtifact("a.out")) @@ -57,3 +56,17 @@ class ForwardDeclTestCase(TestBase): # This should display correctly. self.expect("expression [j getMember]", VARIABLES_DISPLAYED_CORRECTLY, substrs=["= 0x"]) + + @skipUnlessDarwin + def test_expr(self): + self.do_test() + + @no_debug_info_test + @skipUnlessDarwin + @skipIf(compiler=no_match("clang")) + @skipIf(compiler_version=["<", "7.0"]) + def test_debug_names(self): + """Test that we are able to find complete types when using DWARF v5 + accelerator tables""" + self.do_test( + dict(CFLAGS_EXTRAS="-dwarf-version=5 -mllvm -accel-tables=Dwarf")) |