llvm-project/clang/test
Adrian McCarthy 992429843b Emit debug info for dynamic classes if they are imported from a DLL.
With -debug-info-kind=limited, we omit debug info for dynamic classes that live in other TUs. This reduces duplicate type information. When statically linked, the type information comes together. But if your binary has a class derived from a base in a DLL, the base class info is not available to the debugger.

The decision is made in shouldOmitDefinition (CGDebugInfo.cpp). Per a suggestion from rnk, I've tweaked the decision so that we do include definitions for classes marked as DLL imports. This should be a relatively small number of classes, so we don't pay a large price for duplication of the type info, yet it should cover most cases on Windows.

Essentially this makes debug info for DLLs independent, but we still assume that all TUs within the same DLL will be consistently built with (or without) debug info and the debugger will be able to search across the debug info within that scope to resolve any declarations into definitions, etc.

llvm-svn: 278861
2016-08-16 22:11:18 +00:00
..
ARCMT [test/objcmt] Add a follow-up test case for r275600. 2016-07-15 20:40:24 +00:00
ASTMerge When importing classes and structs with anonymous structs, it is critical that 2016-07-14 19:53:44 +00:00
Analysis StaticAnalyzer: Report found fields order in PaddingChecker 2016-08-15 20:16:13 +00:00
CXX PR28978: If we need overload resolution for the move constructor of an 2016-08-16 00:13:47 +00:00
CodeCompletion Implement filtering for code completion of identifiers. 2016-07-27 14:56:59 +00:00
CodeGen Revert "[X86] Add xgetbv/x[X86] Add xgetbv xsetbv intrinsics to non-windows platforms" 2016-08-16 16:04:14 +00:00
CodeGenCUDA [CUDA] Raise an error if a wrong-side call is codegen'ed. 2016-08-15 23:00:49 +00:00
CodeGenCXX Emit debug info for dynamic classes if they are imported from a DLL. 2016-08-16 22:11:18 +00:00
CodeGenObjC CodeGen: try harder to make the CFString structure RW 2016-07-29 19:15:51 +00:00
CodeGenObjCXX Update clang tests for LLVM r277950 2016-08-07 08:28:58 +00:00
CodeGenOpenCL [OpenCL] Fix typo in test that I accidentally introduced in my previous commit. 2016-08-10 16:04:14 +00:00
Coverage
CoverageMapping [Coverage] Do not write out coverage mappings with zero entries 2016-07-26 00:24:59 +00:00
Driver Reorder stderr redirection in test command. 2016-08-16 14:38:39 +00:00
FixIt ObjC Class Property: diagnostics when accessing a class property using instance. 2016-06-28 23:01:49 +00:00
Format Make clang-format remove duplicate headers when sorting #includes. 2016-08-10 09:32:23 +00:00
Frontend test/Frontend: Add a test for aarch64 target CPU names. 2016-07-27 22:47:07 +00:00
Headers Revert "[X86] Add xgetbv/x[X86] Add xgetbv xsetbv intrinsics to non-windows platforms" 2016-08-16 16:04:14 +00:00
Index [index] Fix crash with indexing designated init expressions inside templates. 2016-08-03 05:38:53 +00:00
Integration
Layout [MS ABI] Implement __declspec(empty_bases) and __declspec(layout_version) 2016-05-23 17:16:12 +00:00
Lexer Add -fmodules-ts flag to cc1 for the provisional C++ modules TS, and mark 2016-07-23 02:32:21 +00:00
Misc [OpenCL] AMDGPU: Add extensions cl_amd_media_ops and cl_amd_media_ops2 2016-08-16 20:49:49 +00:00
Modules [VFS] Add 'ignore-non-existent-contents' field to YAML files 2016-08-12 01:50:53 +00:00
OpenMP [OpenMP] Sema and parsing for 'teams distribute' pragma 2016-08-05 14:37:37 +00:00
PCH P0217R3: serialization/deserialization support for c++17 decomposition declarations. 2016-08-12 02:21:25 +00:00
Parser [ObjC] Warn on unguarded use of partial declaration 2016-08-16 17:44:11 +00:00
Preprocessor [CUDA] Updated CUDA tests that must run w/o CUDA installation. 2016-08-02 23:43:04 +00:00
Profile [Profile] Enable profile merging with -fprofile-generat[=<dir>] 2016-07-22 22:25:01 +00:00
Rewriter
Sema [ObjC] Warn on unguarded use of partial declaration 2016-08-16 17:44:11 +00:00
SemaCUDA [CUDA] Fix "declared here" note on deferred wrong-side errors. 2016-08-16 00:48:21 +00:00
SemaCXX Disable lambda-capture of decomposition declaration bindings for now, until CWG 2016-08-15 02:34:23 +00:00
SemaObjC [ObjC] Warn on unguarded use of partial declaration 2016-08-16 17:44:11 +00:00
SemaObjCXX Sema: support __declspec(dll*) on ObjC interfaces 2016-07-15 20:41:10 +00:00
SemaOpenCL [OpenCL] AMDGPU: Add extensions cl_amd_media_ops and cl_amd_media_ops2 2016-08-16 20:49:49 +00:00
SemaTemplate P0217R3: template instantiation support for decomposition declarations. 2016-08-12 01:55:21 +00:00
TableGen
Tooling Back out the test case for r266973 for now. 2016-04-21 10:46:14 +00:00
Unit Replace hardcoded comment at 'lit.site.cfg.in' 2016-04-16 06:54:46 +00:00
VFS Reapply [VFS] Skip non existent files from the VFS tree 2016-08-12 18:18:24 +00:00
.clang-format
CMakeLists.txt Re-apply "test: Use add_lit_testsuites so that subsets of tests can be specified" 2016-07-05 17:54:40 +00:00
TestRunner.sh
cxx-sections.data
lit.cfg Port some more debug info tests on Windows 2016-06-30 17:41:27 +00:00
lit.site.cfg.in Replace hardcoded comment at 'lit.site.cfg.in' 2016-04-16 06:54:46 +00:00
make_test_dirs.pl