hanchenye-llvm-project/clang/test
Bradley Smith 9ff64332a0 [AArch64] Add workaround for Cortex-A53 erratum (835769)
Some early revisions of the Cortex-A53 have an erratum (835769) whereby it is
possible for a 64-bit multiply-accumulate instruction in AArch64 state to
generate an incorrect result.  The details are quite complex and hard to
determine statically, since branches in the code may exist in some
circumstances, but all cases end with a memory (load, store, or prefetch)
instruction followed immediately by the multiply-accumulate operation.

The safest work-around for this issue is to make the compiler avoid emitting
multiply-accumulate instructions immediately after memory instructions and the
simplest way to do this is to insert a NOP.

This patch implements clang options to enable this workaround in the backend.

The work-around code generation is not enabled by default.

llvm-svn: 219604
2014-10-13 10:16:06 +00:00
..
ARCMT Objective-C SDK modernization. import Foundation even 2014-10-09 22:04:27 +00:00
ASTMerge
Analysis [analyzer] Make CStringChecker correctly calculate return value of mempcpy 2014-10-03 21:48:54 +00:00
CXX PR21180: Lambda closure types are neither aggregates nor literal types. 2014-10-07 18:01:33 +00:00
CodeCompletion
CodeGen Allow constant expressions in pragma loop hints. 2014-10-12 20:46:07 +00:00
CodeGenCUDA
CodeGenCXX PredefinedExpr deserialization test in dependent context. 2014-10-13 03:27:35 +00:00
CodeGenObjC Revert "Remove threshold on object size for inserting lifetime begin / end" 2014-10-08 14:04:26 +00:00
CodeGenObjCXX Revert "Remove threshold on object size for inserting lifetime begin / end" 2014-10-08 14:04:26 +00:00
CodeGenOpenCL Driver: Implement -cl-denorms-are-zero 2014-08-21 13:58:36 +00:00
Coverage
CoverageMapping InstrProf: Avoid repeated linear searches in a hot path 2014-10-01 03:33:52 +00:00
Driver [AArch64] Add workaround for Cortex-A53 erratum (835769) 2014-10-13 10:16:06 +00:00
FixIt Revert r218925 - "Patch to warn if 'override' is missing" 2014-10-03 09:02:53 +00:00
Format
Frontend This test was updated in r216397, but was failing on Windows due to mixed path separators as well as case sensitivity of the "no" in "no such file or directory." Rather than revert this file back to its original form, I've made some incredibly ugly regexes so that it will pass everywhere. 2014-08-26 14:09:25 +00:00
Headers [AVX512] Added VPCMPEQ intrinisics to headers. 2014-10-08 17:18:13 +00:00
Index Add libclang capabilities to retriete template arguments from specializations. 2014-10-10 20:01:05 +00:00
Integration
Layout MS ABI: Add an additional test for empty structs in C 2014-10-03 07:41:09 +00:00
Lexer
Misc Allow constant expressions in pragma loop hints. 2014-10-12 20:46:07 +00:00
Modules [modules] When instantiating a class member, don't expect to find the previous 2014-10-11 00:37:16 +00:00
OpenMP Fix incompatibility issue in /OpenMP/parallel_num_threads_codegen.cpp 2014-10-13 08:51:32 +00:00
PCH Allow constant expressions in pragma loop hints. 2014-10-12 20:46:07 +00:00
Parser Allow constant expressions in pragma loop hints. 2014-10-12 20:46:07 +00:00
Preprocessor [PowerPC] Add feature for Power8 vector extensions 2014-10-10 15:09:43 +00:00
Profile
Rewriter
Sema ms-inline-asm: Correctly mark MS inline ASM labels as used 2014-10-08 17:28:34 +00:00
SemaCUDA CUDA: mark the target of implicit intrinsics properly 2014-09-30 17:38:34 +00:00
SemaCXX [complex] Teach the other two binary operators on complex numbers (== 2014-10-11 11:03:30 +00:00
SemaObjC Objective-C [qoi]. When reporting that a property is not 2014-10-10 22:08:23 +00:00
SemaObjCXX
SemaOpenCL
SemaTemplate Revert r217995 and follow-ups: 2014-09-18 16:01:32 +00:00
TableGen
Tooling
Unit
VFS Revert "Revert "DI: LLVM schema change: fold constants into string"" 2014-10-03 20:01:52 +00:00
.clang-format
CMakeLists.txt
Makefile
TestRunner.sh
cxx-sections.data
lit.cfg Remove support for the IOS_SIMULATOR_DEPLOYMENT_TARGET env var. 2014-10-10 03:12:15 +00:00
lit.site.cfg.in
make_test_dirs.pl