llvm-project/llvm/lib
zhongyunde 064b2a6dc6 [DAGCombiner][AArch64] Enhance to fold CSNEG into CSINC instruction
Perform the scalar expression combine in the form of:
  CSNEG(1, c, cc) + b  =>  cc  ? b+1 : b-c => CSINC(b-c, b, !cc)
  CSNEG(c, -1, cc) + b =>  cc  ? b+c : b+1 => CSINC(b+c, b, cc)

Fix https://github.com/llvm/llvm-project/issues/53071

Reviewed By: dmgreen

Differential Revision: https://reviews.llvm.org/D119105
2022-02-16 09:39:38 +08:00
..
Analysis [Analysis] propagate poison through add/sub saturate intrinsics 2022-02-15 10:45:32 -05:00
AsmParser Extend the `uwtable` attribute with unwind table kind 2022-02-14 14:35:02 +00:00
BinaryFormat AMDGPU {NFC}: Add code object v5 support and generate metadata for implicit kernel args 2022-01-31 18:07:47 -08:00
Bitcode [BitcodeReader] Change order of assignValue() arguments (NFC) 2022-02-15 10:11:01 +01:00
Bitstream [Bitstream] Improve error propagation from ReadVBR 2022-02-15 17:12:38 -08:00
CodeGen [nfc][codegen] Move RegisterBank[Info].cpp under CodeGen 2022-02-15 11:27:15 -08:00
DWARFLinker [dsymutil] Add the ability to run the DWARF verifier on the input 2022-02-14 16:14:07 -08:00
DWP Cleanup LLVMObject headers 2022-02-10 21:13:44 +01:00
DebugInfo Cleanup LLVMDWARFDebugInfo 2022-02-15 09:16:03 +01:00
Debuginfod [Debuginfod] [Symbolizer] Break debuginfod out of libLLVM. 2022-02-08 19:14:18 +00:00
Demangle [demangler] Remove StdQualifiedName 2022-02-07 07:49:30 -08:00
ExecutionEngine Cleanup LLVMObject headers 2022-02-10 21:13:44 +01:00
Extensions
FileCheck [FileCheck] Allow literal '['s before "[[var...]]" 2022-01-13 09:47:37 +00:00
Frontend [OpenMP][IRBuilder] Handle floats for atomic update and fix AllocaIP for update/capture 2022-02-10 13:16:10 +05:30
FuzzMutate [NFC] Remove uses of PointerType::getElementType() 2022-01-25 09:44:52 +01:00
Fuzzer
IR [VP] vp.fptosi cast intrinsic and docs 2022-02-15 18:17:19 +01:00
IRReader
InterfaceStub [ifs] Allow llvm-ifs to generate text stub from elf stub 2022-02-13 21:05:52 -08:00
LTO [llvm] Use = default (NFC) 2022-02-06 22:18:35 -08:00
LineEditor [llvm] Use = default (NFC) 2022-02-06 22:18:35 -08:00
Linker
MC [MC] Define and use MCRegisterInfo::regsOverlap 2022-02-14 20:46:02 +00:00
MCA [llvm] Use = default (NFC) 2022-02-06 22:18:35 -08:00
Object [ObjectYAML][MachO] Add LC_FUNCTION_STARTS support 2022-02-13 09:24:47 -08:00
ObjectYAML [ObjectYAML][MachO] Add LC_FUNCTION_STARTS support 2022-02-13 09:24:47 -08:00
Option
Passes [llvm] Use = default (NFC) 2022-02-06 22:18:35 -08:00
ProfileData [ProfData] Change type of options from int to uint64_t. 2022-02-15 10:59:06 -08:00
Remarks Cleanup LLVMRemarks includes 2022-01-31 11:16:28 +01:00
Support [Support] Fix build on illumos 2022-02-15 09:42:40 +01:00
TableGen Fix a typo (occured => occurred) 2022-02-08 21:35:26 +01:00
Target [DAGCombiner][AArch64] Enhance to fold CSNEG into CSINC instruction 2022-02-16 09:39:38 +08:00
Testing
TextAPI Cleanup LLVMTextAPI headers 2022-01-26 14:21:25 +01:00
ToolDrivers
Transforms [SLP] Add assert that entities are scheduled as expected 2022-02-15 12:21:49 -08:00
WindowsManifest [llvm] Use = default (NFC) 2022-02-06 22:18:35 -08:00
XRay [llvm] Use = default (NFC) 2022-02-06 22:18:35 -08:00
CMakeLists.txt Revert "try to fix windows build after 73e585e44d" and 2022-02-11 23:47:53 -08:00