llvm-project/llvm/lib
QingShan Zhang 2b59e9f1bd [DAGCombine] Remove the getNegatibleCost to avoid the out of sync with getNegatedExpression
We have the getNegatibleCost/getNegatedExpression to evaluate the cost and negate the expression.
However, during negating the expression, the cost might change as we are changing the DAG,
and then, hit the assertion if we negated the wrong expression as the cost is not trustful anymore.

This patch is target to remove the getNegatibleCost to avoid the out of sync with getNegatedExpression,
and check the cost during negating the expression. It also reduce the duplicated code between
getNegatibleCost and getNegatedExpression. And fix the crash for the test in D76638

Reviewed By: RKSimon, spatel

Differential Revision: https://reviews.llvm.org/D77319
2020-05-20 02:12:16 +00:00
..
Analysis [LVI] Don't require DominatorTree in LVI (NFC) 2020-05-19 20:21:46 +02:00
AsmParser AllocaInst should store Align instead of MaybeAlign. 2020-05-16 14:53:16 -07:00
BinaryFormat XCOFF.h - replace StringRef.h include with forward declaration. NFC. 2020-04-23 13:52:48 +01:00
Bitcode AllocaInst should store Align instead of MaybeAlign. 2020-05-16 14:53:16 -07:00
Bitstream [Bitcode] reserve in front of push_back loops. NFCI. 2020-05-01 15:52:53 +02:00
CodeGen [DAGCombine] Remove the getNegatibleCost to avoid the out of sync with getNegatedExpression 2020-05-20 02:12:16 +00:00
DWARFLinker [Clang] Restore replace_path_prefix instead of startswith 2020-05-13 13:49:14 -04:00
DebugInfo [DebugInfo] Dump offsets in .debug_str_offsets according to the DWARF format (7/8). 2020-05-19 13:35:58 +07:00
Demangle Use std::foo_t rather than std::foo in LLVM. 2020-02-11 15:12:51 -08:00
ExecutionEngine [ORC] Share ownership of JITDylibs between ExecutionSession and 2020-05-10 16:37:17 -07:00
Extensions Update compiler extension integration into the build system 2020-04-24 09:40:14 +02:00
Frontend [cmake] LLVMFrontendOpenMP - fix include/llvm/Frontend/OpenMP header path 2020-04-18 12:31:39 +01:00
FuzzMutate FuzzerCLI.h - reduce StringRef.h include to forward declaration. NFC. 2020-05-12 13:03:50 +01:00
Fuzzer
IR Give helpers internal linkage. NFC. 2020-05-19 22:16:37 +02:00
IRReader Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
LTO [LTO] Suppress emission of empty combined module by default 2020-05-04 18:31:09 -07:00
LineEditor
Linker [SVE] Add new VectorType subclasses 2020-04-22 08:59:01 -07:00
MC MCTargetOptionsCommandFlags.h - remove unnecessary includes. NFC. 2020-05-19 15:15:26 +01:00
MCA [MCA][InstrBuilder] Correctly mark reserved resources in initializeUsedResources. 2020-05-10 19:25:54 +01:00
Object [Object] Remove unused variable after D79560. NFC. 2020-05-11 13:03:53 +08:00
ObjectYAML [yaml2obj] - Stop using square brackets for unique suffixes. 2020-05-19 12:59:13 +03:00
Option
Passes [llvm] Add interface to drive inlining decision using ML model 2020-05-13 13:27:29 -07:00
ProfileData [gcov] Emit GCOV_TAG_OBJECT_SUMMARY/GCOV_TAG_PROGRAM_SUMMARY correctly and fix llvm-cov's decoding of runcount 2020-05-11 21:53:53 -07:00
Remarks RemarkStringTable.h - reduce StringRef/Remark includes to forward declarations. NFC 2020-05-08 12:30:49 +01:00
Support Revert rGca18ce1a00cd8b7cb7ce0e130440f5ae1ffe86ee "GlobPattern.h - remove unnecessary BitVector.h/StringRef.h includes. NFC" 2020-05-17 18:51:21 +01:00
TableGen [TableGen] Simplify with TGParser::consume() 2020-04-26 15:26:49 -07:00
Target [DAGCombine] Remove the getNegatibleCost to avoid the out of sync with getNegatedExpression 2020-05-20 02:12:16 +00:00
Testing
TextAPI [cmake] Add headers in TextAPI/Elf and TextAPI/MachO subdirectories 2020-04-24 18:42:44 +01:00
ToolDrivers [COFF] Use Expected in COFFObjectFile creation 2020-05-08 14:22:28 -07:00
Transforms Give helpers internal linkage. NFC. 2020-05-19 22:16:37 +02:00
WindowsManifest Try to fix WindowsManifest CMake logic on Windows 2020-02-28 17:24:03 -08:00
XRay [llvm-xray] consumeError when trying big-endian 2020-05-16 22:44:48 -07:00
CMakeLists.txt Update compiler extension integration into the build system 2020-04-24 09:40:14 +02:00
LLVMBuild.txt Update compiler extension integration into the build system 2020-04-24 09:40:14 +02:00