llvm-project/clang/test
Juneyoung Lee 8a156d1c27 [InstCombine] Fully disable select to and/or i1 folding
This is a patch that disables the poison-unsafe select -> and/or i1 folding.

It has been blocking D72396 and also has been the source of a few miscompilations
described in llvm.org/pr49688 .
D99674 conditionally blocked this folding and successfully fixed the latter one.
The former one was still blocked, and this patch addresses it.

Note that a few test functions that has `_logical` suffix are now deoptimized.
These are created by @nikic to check the impact of disabling this optimization
by copying existing original functions and replacing and/or with select.

I can see that most of these are poison-unsafe; they can be revived by introducing
freeze instruction. I left comments at fcmp + select optimizations (or-fcmp.ll, and-fcmp.ll)
because I think they are good targets for freeze fix.

Reviewed By: nikic

Differential Revision: https://reviews.llvm.org/D101191
2021-05-06 09:29:52 +09:00
..
APINotes
ARCMT
AST Fix null ptr crash dumping TemplateTemplateParmDecl 2021-04-24 12:28:10 -04:00
ASTMerge
Analysis [analyzer] Fix a crash for dereferencing an empty llvm::Optional variable in SMTConstraintManager.h. 2021-05-04 16:50:21 +02:00
CXX CWG2076: Permit implicit conversions within a single level of braces 2021-04-22 16:49:39 -07:00
ClangScanDeps [clang][deps] Only generate absolute paths when asked to 2021-04-26 10:53:41 +02:00
CodeCompletion
CodeGen [WebAssembly] Fix constness of pointer params to load intrinsics 2021-05-05 13:16:56 -07:00
CodeGenCUDA [HIP] Fix device lib selection 2021-05-01 20:31:11 -04:00
CodeGenCXX [clang] Add -fc++-abi= flag for specifying which C++ ABI to use 2021-05-04 10:52:13 -07:00
CodeGenCoroutines [Clang][Coroutine][DebugInfo] Relax test ordering requirement 2021-04-26 10:07:22 +01:00
CodeGenHIP
CodeGenObjC [ObjC] Add a command line flag that disables recognition of objc_direct for testability 2021-04-06 11:17:01 -04:00
CodeGenObjCXX [ObjC][ARC] Don't enter the cleanup scope if the initializer expression 2021-04-29 16:04:30 -07:00
CodeGenOpenCL [InstCombine] Fully disable select to and/or i1 folding 2021-05-06 09:29:52 +09:00
CodeGenOpenCLCXX [OpenCL] Added distinct file extension for C++ for OpenCL. 2021-03-24 13:07:04 +00:00
CodeGenSYCL [SYCL] Implement SYCL address space attributes handling 2021-04-26 13:44:10 +03:00
Coverage
CoverageMapping [clang] remove an incremental build workaround 2021-05-05 12:21:56 -04:00
Driver [Driver] Move -print-runtime-dir and -print-resource-dir tests 2021-05-05 15:23:49 -07:00
FixIt Revert "[Clang] -Wunused-but-set-parameter and -Wunused-but-set-variable" 2021-04-28 12:47:18 -07:00
Format
Frontend [clang][test] Update -fc++-abi tests 2021-05-04 15:53:00 -07:00
Headers [WebAssembly] Add SIMD const_splat intrinsics 2021-05-05 13:46:45 -07:00
Import
Index [index] Improve macro indexing support 2021-04-06 09:12:14 -07:00
Integration XFAIL thinlto testcases on AIX 2021-04-26 17:02:06 +00:00
InterfaceStubs
Layout [SystemZ][z/OS] fix lit test related to alignment 2021-03-23 13:15:19 -04:00
Lexer [C++2b] Support size_t literals 2021-03-31 13:36:23 +00:00
Misc [OpenCL] Add clang extension for non-portable kernel parameters. 2021-05-05 14:58:23 +01:00
Modules [ASTReader] Only mark module out of date if not already compiled 2021-04-16 17:57:03 -07:00
OpenMP [Utils][NFC] Rename replace-function-regex in update_cc_test_checks 2021-05-05 14:19:30 -07:00
PCH Thread safety analysis: Fix false negative on break 2021-05-03 14:03:17 +02:00
Parser Fix potential infinite loop with malformed attribute syntax 2021-04-15 10:47:32 -04:00
Preprocessor Introduce -Wreserved-identifier 2021-05-04 11:19:01 +02:00
Profile [PGO, test] Fix typo in FileCheck var 2021-04-03 08:44:46 +01:00
Refactor
Rewriter
Sema Introduce -Wreserved-identifier 2021-05-04 11:19:01 +02:00
SemaCUDA [CUDA][HIP] Allow non-ODR use of host var in device 2021-04-19 14:45:24 -04:00
SemaCXX [Matrix] Implement C-style explicit type conversions in CXX for matrix types 2021-05-04 15:27:57 +01:00
SemaObjC Revert "[Clang] -Wunused-but-set-parameter and -Wunused-but-set-variable" 2021-04-28 12:47:18 -07:00
SemaObjCXX [Sema] Don't set BlockDecl's DoesNotEscape bit if the parameter type of 2021-04-29 16:19:48 -07:00
SemaOpenCL [OpenCL] Allow pipe as a valid identifier prior to OpenCL 2.0. 2021-05-04 14:30:42 +01:00
SemaOpenCLCXX [OpenCL] Add clang extension for non-portable kernel parameters. 2021-05-05 14:58:23 +01:00
SemaSYCL [SYCL] Implement SYCL address space attributes handling 2021-04-26 13:44:10 +03:00
SemaTemplate When performing template argument deduction to select a partial 2021-05-05 14:47:18 -07:00
TableGen Fix test expectations for %diff documentation. 2021-03-30 17:48:08 -07:00
Templight
Tooling
Unit
VFS [clang] Don't crash when loading invalid VFS for the module dep collector 2021-04-26 17:05:22 -07:00
clang-rename
utils/update_cc_test_checks [Utils][NFC] Rename replace-function-regex in update_cc_test_checks 2021-05-05 14:19:30 -07:00
.clang-format
CMakeLists.txt [llvm-rc] Add a GNU windres-like frontend to llvm-rc 2021-04-26 22:04:29 +03:00
TestRunner.sh
cxx-sections.data
lit.cfg.py [llvm-rc] Run clang to preprocess input files 2021-04-21 11:50:10 +03:00
lit.site.cfg.py.in [clang][lit] Allow test cases to use the compiler that are used to compile Clang 2021-03-24 11:32:57 +01:00
make_test_dirs.pl