llvm-project/clang/lib
Reid Kleckner dc124996d2 [codeview] Pass through vftable shape information
The shape is really just the number of methods in the vftable, since we
don't support 16 bit far calls. All calls are near. Encode this number
in the size of the artificial __vtbl_ptr_type DIDerivedType that we
generate. For DWARF, this will be a normal pointer, but for codeview
this will be a wide pointer that gets pattern matched into a
VFTableShape record. Insert this type into the element list of all
dynamic classes when emitting CodeView, so that the backend can emit the
shape even if the vptr lives in a primary base class.

Fixes PR28150

llvm-svn: 280255
2016-08-31 16:11:43 +00:00
..
ARCMigrate [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
AST AST: improve layout of SimpleTypoCorrector 2016-08-28 21:33:30 +00:00
ASTMatchers Add an AST matcher for external formal linkage. 2016-08-17 13:10:42 +00:00
Analysis [analyzer] Fix CloneDetector crash on calling methods of class templates. 2016-08-23 16:42:00 +00:00
Basic [Modules] Add 'gnuinlineasm' to the 'requires-declaration' feature-list. 2016-08-30 21:25:42 +00:00
CodeGen [codeview] Pass through vftable shape information 2016-08-31 16:11:43 +00:00
Driver Driver: use the canonical static library naming 2016-08-30 22:10:27 +00:00
Edit [OpenCL] Generate opaque type for sampler_t and function call for the initializer 2016-07-28 19:26:30 +00:00
Format clang-format: Set default WebKit style to use C++11. 2016-08-31 14:05:56 +00:00
Frontend Unrevert r280035 now that the clang-cl bug it exposed has been fixed by 2016-08-30 19:06:26 +00:00
FrontendTool C++ Modules TS: add frontend support for building pcm files from module 2016-08-26 00:14:38 +00:00
Headers [AVX-512] Implement masked floating point logical operations with native IR and remove the builtins. 2016-08-31 05:38:58 +00:00
Index Visit lambda capture inits from RecursiveASTVisitor::TraverseLambdaCapture(). 2016-08-17 14:59:53 +00:00
Lex Don't diagnose non-modular includes when we are not compiling a module. 2016-08-26 17:16:46 +00:00
Parse Unrevert r280035 now that the clang-cl bug it exposed has been fixed by 2016-08-30 19:06:26 +00:00
Rewrite Remove use of builtin comma operator. 2016-02-18 22:34:54 +00:00
Sema PR12298 et al: don't recursively instantiate a template specialization from 2016-08-31 02:15:21 +00:00
Serialization PR29166: when merging declarations with typedef names for linkage purposes, 2016-08-30 19:13:18 +00:00
StaticAnalyzer [analyzer] Use lazily created buffer in EmptyLocalizationContextChecker 2016-08-30 23:07:14 +00:00
Tooling clangTooling: Update libdeps: LLVMOptions, since r280118. 2016-08-31 00:46:32 +00:00
CMakeLists.txt Fix build with various feature flag combinations 2014-07-14 22:17:22 +00:00