llvm-project/clang/test
Hans Wennborg 156349fa10 Revert r333044 "Use zeroinitializer for (trailing zero portion of) large array initializers"
It caused asserts, see PR37560.

> Use zeroinitializer for (trailing zero portion of) large array initializers
> more reliably.
>
> Clang has two different ways it emits array constants (from InitListExprs and
> from APValues), and both had some ability to emit zeroinitializer, but neither
> was able to catch all cases where we could use zeroinitializer reliably. In
> particular, emitting from an APValue would fail to notice if all the explicit
> array elements happened to be zero. In addition, for large arrays where only an
> initial portion has an explicit initializer, we would emit the complete
> initializer (which could be huge) rather than emitting only the non-zero
> portion. With this change, when the element would have a suffix of more than 8
> zero elements, we emit the array constant as a packed struct of its initial
> portion followed by a zeroinitializer constant for the trailing zero portion.
>
> In passing, I found a bug where SemaInit would sometimes walk the entire array
> when checking an initializer that only covers the first few elements; that's
> fixed here to unblock testing of the rest.
>
> Differential Revision: https://reviews.llvm.org/D47166

llvm-svn: 333067
2018-05-23 08:24:01 +00:00
..
ARCMT [ObjC] Allow declaring __strong pointer fields in structs in Objective-C 2018-02-28 07:15:55 +00:00
ASTMerge [ASTImporter] FriendDecl importing improvements 2018-04-25 17:28:03 +00:00
Analysis [analyzer] CStringChecker fix for strlcpy when no bytes are copied to the dest buffer 2018-05-23 04:38:25 +00:00
CXX Adjust and fix failing CXX tests after r332799 2018-05-19 03:33:56 +00:00
CodeCompletion [CodeComplete] Provide completion in decls even for incomplete types 2018-05-14 13:50:36 +00:00
CodeGen Revert r333044 "Use zeroinitializer for (trailing zero portion of) large array initializers" 2018-05-23 08:24:01 +00:00
CodeGenCUDA [HIP] Support offloading by linker script 2018-05-18 15:07:56 +00:00
CodeGenCXX Revert r333044 "Use zeroinitializer for (trailing zero portion of) large array initializers" 2018-05-23 08:24:01 +00:00
CodeGenCoroutines [Coroutines] Catch exceptions in await_resume 2018-05-04 14:02:37 +00:00
CodeGenObjC [objc-gnu] Fix test. 2018-05-22 10:13:14 +00:00
CodeGenObjCXX [CodeGen] Avoid destructing a callee-destructued struct type in a 2018-04-27 06:57:00 +00:00
CodeGenOpenCL [AMDGPU] fixes for lds f32 builtins 2018-05-21 16:18:07 +00:00
Coverage [analyzer] Fix filename in cross-file HTML report 2018-05-02 14:26:12 +00:00
CoverageMapping [Coverage] Handle break/continue outside of loop bodies 2018-02-16 07:59:43 +00:00
Driver Reland r332885, "CodeGen, Driver: Start using direct split dwarf emission in clang." 2018-05-22 18:52:37 +00:00
FixIt [Parser][FixIt] Better diagnostics for "typedef" instead of "typename" typo 2018-02-08 14:37:58 +00:00
Format [clang-format] Fix bug where -dump-config failed on ObjC header 2018-01-29 17:36:43 +00:00
Frontend Move test input file into same directory as test. NFC 2018-05-08 00:29:21 +00:00
Headers [x86] Introduce the encl[u|s|v] intrinsics 2018-05-08 07:12:34 +00:00
Import [ASTImporter] Properly import SourceLocations of Attrs 2018-05-08 12:45:21 +00:00
Index [Frontend] Avoid running plugins during code completion parse 2018-05-17 09:21:07 +00:00
Integration
Layout [Sema] Fix incorrect packed aligned structure layout 2018-05-21 14:28:43 +00:00
Lexer Implement P0482R2, support for char8_t type. 2018-05-01 05:02:45 +00:00
Misc [AST][ObjC] Print implicit property expression that only has a setter without crashing 2018-05-23 00:52:20 +00:00
Modules Track the result of evaluating a computed noexcept specification on the 2018-05-03 03:58:32 +00:00
OpenMP [OPENMP-SIMD] Fix PR37536: Fix definition of _OPENMP macro. 2018-05-21 16:40:32 +00:00
PCH [C++2a] Implement operator<=> CodeGen and ExprConstant 2018-05-07 21:07:10 +00:00
Parser [libclang] Allow skipping function bodies in preamble only 2018-05-17 09:24:37 +00:00
Preprocessor Revert "Revert r332955 "GNUstep Objective-C ABI version 2"" 2018-05-22 10:13:06 +00:00
Profile
Refactor
Rewriter
Sema This patch aims to match the changes introduced 2018-05-18 11:56:21 +00:00
SemaCUDA [CUDA] Allow "extern __shared__ Foo foo[]" within anon. namespaces. 2018-05-17 16:15:07 +00:00
SemaCXX Revert r333044 "Use zeroinitializer for (trailing zero portion of) large array initializers" 2018-05-23 08:24:01 +00:00
SemaObjC Sema: diagnose invalid catch parameter in ObjC 2018-05-20 19:26:44 +00:00
SemaObjCXX Improve diagnostics and error recovery for template name lookup. 2018-05-11 02:43:08 +00:00
SemaOpenCL [AMDGPU] fixes for lds f32 builtins 2018-05-21 16:18:07 +00:00
SemaOpenCLCXX [OpenCL] Restrict various keywords in OpenCL C++ mode 2018-05-09 13:16:17 +00:00
SemaTemplate [Sema] Fix assertion when constructor is disabled with partially specialized template. 2018-05-16 18:28:58 +00:00
TableGen [Clang Tablegen][RFC] Allow Early Textual Substitutions in `Diagnostic` messages. 2018-05-19 03:12:04 +00:00
Templight [Templight] Template Instantiation Observer 2018-02-10 14:04:45 +00:00
Tooling Fix test clang-diff-json.cpp 2018-02-10 21:28:55 +00:00
Unit [lit] Set shlibpath_var on Solaris 2017-11-27 13:33:19 +00:00
VFS [vfs] Don't bail out after a missing -ivfsoverlay file 2018-03-23 17:37:27 +00:00
clang-rename
.clang-format
CMakeLists.txt [ThinLTO/CFI] Include TYPE_ID summaries into GLOBALVAL_SUMMARY_BLOCK 2018-02-14 22:41:15 +00:00
TestRunner.sh
cxx-sections.data
lit.cfg.py [Clang Tablegen][RFC] Allow Early Textual Substitutions in `Diagnostic` messages. 2018-05-19 03:12:04 +00:00
lit.site.cfg.py.in Remove unused lit setting, see https://reviews.llvm.org/D46619 2018-05-09 12:38:51 +00:00
make_test_dirs.pl