1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-19 11:02:59 +02:00
llvm-mirror/lib
Sanjay Patel e61275cc46 [InstSimplify] enhance fcmp fold with never-nan operand
This is 1 step towards correcting our usage of fast-math-flags when applied on an fcmp.
In this case, we are checking for 'nnan' on the fcmp itself rather than the operand of
the fcmp. But I'm leaving that clause in until we're more confident that we can stop
relying on fcmp's FMF.

By using the more general "isKnownNeverNaN()", we gain a simplification shown on the
tests with 'uitofp' regardless of the FMF on the fcmp (uitofp never produces a NaN).
On the tests with 'fabs', we are now relying on the FMF for the call fabs instruction
in addition to the FMF on the fcmp.

I'll update the 'ult' case below here as a follow-up assuming no problems here.

Differential Revision: https://reviews.llvm.org/D62979

llvm-svn: 362879
2019-06-08 15:12:33 +00:00
..
Analysis [InstSimplify] enhance fcmp fold with never-nan operand 2019-06-08 15:12:33 +00:00
AsmParser Reapply: IR: add optional type to 'byval' function parameters 2019-05-30 18:48:23 +00:00
BinaryFormat
Bitcode IR: make getParamByValType Just Work. NFC. 2019-06-05 20:37:47 +00:00
CodeGen [SystemZ, RegAlloc] Favor 3-address instructions during instruction selection. 2019-06-08 06:19:15 +00:00
DebugInfo Extend the DWARFExpression address handling to support 16-bit addresses 2019-06-01 09:18:26 +00:00
Demangle llvm-undname: Correctly demangle vararg parameters 2019-06-04 19:10:08 +00:00
ExecutionEngine [ORC] Update symbol lookup to use a single callback with a required symbol state 2019-06-07 19:33:51 +00:00
Fuzzer
FuzzMutate
IR IR: make getParamByValType Just Work. NFC. 2019-06-05 20:37:47 +00:00
IRReader
LineEditor
Linker Reapply: IR: add optional type to 'byval' function parameters 2019-05-30 18:48:23 +00:00
LTO [Attributor] Pass infrastructure and fixpoint framework 2019-06-05 03:02:24 +00:00
MC [MC][ELF] Don't create relocations with section symbols for STB_LOCAL ifunc 2019-06-07 03:47:22 +00:00
MCA [MCA][Scheduler] Change how memory instructions are dispatched to the pending set. NFCI 2019-06-01 15:22:37 +00:00
Object [MACHO] Replaced calls to getStruct with getStructOrErr in functions returning Error or Expected or similar 2019-06-04 16:55:30 +00:00
ObjectYAML [llvm-objdump/llvm-readobj/obj2yaml/yaml2obj] Support DT_PPC_GOT and DT_PPC_OPT 2019-06-05 01:36:48 +00:00
Option
Passes [Attributor] Pass infrastructure and fixpoint framework 2019-06-05 03:02:24 +00:00
ProfileData Recommit [Object] Change object::SectionRef::getContents() to return Expected<StringRef> 2019-05-16 13:24:04 +00:00
Remarks [Remarks] Fix usage of enum class 2019-05-30 22:01:56 +00:00
Support [APFloat] APFloat::Storage::Storage - refix use after move 2019-06-07 19:51:22 +00:00
TableGen TableGen: Handle nontrivial foreach range bounds 2019-05-22 21:28:20 +00:00
Target [ARM] Adjust isLegalT1AddressImmediate for non-legal types 2019-06-08 10:32:53 +00:00
Testing
TextAPI
ToolDrivers llvm-lib: Disallow mixing object files with different machine types 2019-06-07 13:24:34 +00:00
Transforms [GVN] non-functional code movement 2019-06-07 23:08:38 +00:00
WindowsManifest
XRay Recommit [Object] Change object::SectionRef::getContents() to return Expected<StringRef> 2019-05-16 13:24:04 +00:00
CMakeLists.txt
LLVMBuild.txt