llvm-project/clang/test
Chandler Carruth 885e78cb22 [Modules] Start making explicit modules produce deterministic output.
There are two aspects of non-determinism fixed here, which was the
minimum required to cause at least an empty module to be deterministic.

First, the random number signature is only inserted into the module when
we are building modules implicitly. The use case for these random
signatures is to work around the very fact that modules are not
deterministic in their output when working with the implicitly built and
populated module cache. Eventually this should go away entirely when
we're confident that Clang is producing deterministic output.

Second, the on-disk hash table is populated based on the order of
iteration over a DenseMap. Instead, use a MapVector so that we can walk
it in insertion order.

I've added a test that an empty module, when built twice, produces the
same binary PCM file.

llvm-svn: 233115
2015-03-24 21:18:10 +00:00
..
ARCMT [SDK modernizer PATCH]. Fixes a bug whereby a call to super 2015-03-23 20:52:26 +00:00
ASTMerge
Analysis Record correct source range for defaulted/deleted members. 2015-03-23 21:43:28 +00:00
CXX C++14: Disable sized deallocation by default due to ABI breakage 2015-03-20 00:31:07 +00:00
CodeCompletion
CodeGen Adding back a CHECK that works with r233110 2015-03-24 20:42:20 +00:00
CodeGenCUDA Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
CodeGenCXX Reverting r233023 -- it caused test failures on Windows with MSVC x86. 2015-03-24 13:51:13 +00:00
CodeGenObjC Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
CodeGenObjCXX Add a bunch of missing "CHECK" colons in tests. NFC. 2015-03-14 01:10:19 +00:00
CodeGenOpenCL Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
Coverage clang/test/Coverage/html-diagnostics.c: Use find(1) to avoid globbing. 2014-11-04 13:05:10 +00:00
CoverageMapping Test case updates for explicit type parameter to the gep operator 2015-03-13 18:21:46 +00:00
Driver [UBSan] Use shared library for UBSan on OS X (Clang part). 2015-03-23 23:14:05 +00:00
FixIt Revert "Diagnose declspecs occuring after virt-specifier-seq and generate fixit hints" 2015-03-24 13:25:26 +00:00
Format
Frontend Fix typo in my last commit. 2015-03-03 00:12:08 +00:00
Headers Add builtins for the 64-bit vector integer arithmetic instructions added in POWER8. 2015-03-11 15:57:19 +00:00
Index [libclang] Fix crash when code-completing inside constructor initializer for a builtin type. 2015-03-13 07:39:30 +00:00
Integration
Layout PR6037 2015-01-19 01:44:02 +00:00
Lexer C++14: Disable sized deallocation by default due to ABI breakage 2015-03-20 00:31:07 +00:00
Misc Record correct source range for defaulted/deleted members. 2015-03-23 21:43:28 +00:00
Modules [Modules] Start making explicit modules produce deterministic output. 2015-03-24 21:18:10 +00:00
OpenMP [OPENMP] Fixed test for 'single' directive codegen. 2015-03-23 06:40:37 +00:00
PCH Try to unbreak the Windows buildbots. 2015-03-03 23:36:57 +00:00
Parser Parse: Don't assume tokens have a length 2015-03-19 00:10:23 +00:00
Preprocessor Adds a warning for unrecognized argument to #pragma comment() on PS4. 2015-03-23 20:41:42 +00:00
Profile InstrProf: Make profile variables private to reduce binary size overhead 2015-03-20 06:34:38 +00:00
Rewriter Add a bunch of missing "CHECK" colons in tests. NFC. 2015-03-14 01:10:19 +00:00
Sema Correct typos in C11 generic-selection expressions. 2015-03-19 20:56:07 +00:00
SemaCUDA Ignore device-side asm constraint errors while compiling CUDA code for host and vice versa. 2015-03-19 18:40:25 +00:00
SemaCXX Reverting r233023 -- it caused test failures on Windows with MSVC x86. 2015-03-24 13:51:13 +00:00
SemaObjC [Objective-C diagnostic PATCH] Accept and ignore -Wreceiver-is-weak 2015-03-24 17:14:20 +00:00
SemaObjCXX Recognize objc_bridge(id) on bridged casts to CF types. 2015-03-10 18:41:23 +00:00
SemaOpenCL Restores r228382, which was reverted in r228406. 2015-02-25 05:48:23 +00:00
SemaTemplate [MSVC] Explicit specializations can be declared in any namespace (fix for http://llvm.org/PR13738) 2015-03-20 07:21:46 +00:00
TableGen
Tooling Remove "REQUIRES:shell" from tests. They work for me. 2014-11-04 13:41:33 +00:00
Unit
VFS DebugInfo: Move new hierarchy into place (clang) 2015-03-03 17:25:55 +00:00
.clang-format
CMakeLists.txt Revert "Wrap clang module files in a Mach-O, ELF, or COFF container." 2015-02-25 02:44:04 +00:00
Makefile Fix makefile for debuginfo-tests execution. 2014-10-17 23:50:47 +00:00
TestRunner.sh
cxx-sections.data
lit.cfg Check for backtraces in tests which are verifying pretty stack traces from a crashing clang. 2015-02-10 19:53:38 +00:00
lit.site.cfg.in Check for backtraces in tests which are verifying pretty stack traces from a crashing clang. 2015-02-10 19:53:38 +00:00
make_test_dirs.pl