1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/unittests/IR
Nikita Popov 4c0510dfc2 [PatternMatch] Add m_APInt/m_APFloat matchers accepting undef
The current m_APInt() and m_APFloat() matchers do not accept splats
that include undefs (unlike m_Zero() and other matchers for specific
values). We can't simply change the default behavior, as there are
existing transforms that would not be safe with undefs.

For this reason, I'm introducing new m_APIntAllowUndef() and
m_APFloatAllowUndef() matchers, that allow splats with undefs.
Additionally, m_APIntForbidUndef() and m_APFloatForbidUndef() are
added. These have the same behavior as the existing m_APInt() and
m_APFloat(), but serve as an explicit indication that undefs were
considered and found unsound for this transform. This helps
distinguish them from existing uses of m_APInt() where we do not
know whether undefs can or cannot be allowed without additional review.

Differential Revision: https://reviews.llvm.org/D72975
2020-01-22 22:49:32 +01:00
..
AsmWriterTest.cpp
AttributesTest.cpp [Alignment][NFC] Attributes use Align/MaybeAlign 2019-10-22 09:51:06 +00:00
BasicBlockTest.cpp
CFGBuilder.cpp
CFGBuilder.h
CMakeLists.txt
ConstantRangeTest.cpp [ConstantRange] Respect destination bitwidth for cast results. 2019-12-27 17:38:34 +00:00
ConstantsTest.cpp [IR] fix Constant::isElementWiseEqual() to allow for all undef elements compare 2020-01-17 08:31:16 -05:00
DataLayoutTest.cpp [Alignment][NFC] Add a helper function to DataLayout 2019-10-21 13:58:33 +00:00
DebugInfoTest.cpp
DebugTypeODRUniquingTest.cpp
DominatorTreeBatchUpdatesTest.cpp
DominatorTreeTest.cpp
FunctionTest.cpp
InstructionsTest.cpp [IR] allow undefined elements when checking for splat constants 2019-12-10 17:16:59 -05:00
IntrinsicsTest.cpp
IRBuilderTest.cpp [FPEnv] IRBuilder support for constrained sitofp/uitofp. 2019-12-17 12:32:28 -05:00
LegacyPassManagerTest.cpp [unittests] Add InitializePasses.h includes 2019-11-13 19:42:58 -08:00
ManglerTest.cpp
MDBuilderTest.cpp
MetadataTest.cpp Move the sysroot attribute from DIModule to DICompileUnit 2020-01-17 12:55:40 -08:00
ModuleTest.cpp Prune Pass.h include from DataLayout.h. NFCI 2019-10-21 17:51:54 +00:00
PassBuilderCallbacksTest.cpp Let PassBuilder Expose PassInstrumentationCallbacks 2020-01-07 14:10:37 +09:00
PassManagerTest.cpp [UnitTests] Add invalidate methods. 2020-01-17 10:47:52 -08:00
PatternMatch.cpp [PatternMatch] Add m_APInt/m_APFloat matchers accepting undef 2020-01-22 22:49:32 +01:00
TimePassesTest.cpp
TypesTest.cpp
UserTest.cpp
UseTest.cpp
ValueHandleTest.cpp
ValueMapTest.cpp
ValueTest.cpp
VectorTypesTest.cpp
VerifierTest.cpp [IR] Resolve an error at freeze's unit tests 2019-11-12 11:29:03 +09:00
WaymarkTest.cpp