1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 03:02:36 +01:00
llvm-mirror/include/llvm
Florian Hahn 476c0607dd [TargetLower] Update shouldFormOverflowOp check if math is used.
On some targets, like SPARC, forming overflow ops is only profitable if
the math result is used: https://godbolt.org/z/DxSmdB
This patch adds a new MathUsed parameter to allow the targets
to make the decision and defaults to only allowing it
if the math result is used. That is the conservative choice.

This patch also updates AArch64ISelLowering, X86ISelLowering,
ARMISelLowering.h, SystemZISelLowering.h to allow forming overflow
ops if the math result is not used. On those targets using the
overflow intrinsic for the overflow check only generates better code.

Reviewers: nikic, RKSimon, lebedev.ri, spatel

Reviewed By: lebedev.ri

Differential Revision: https://reviews.llvm.org/D74722
2020-02-19 11:28:33 +01:00
..
ADT [clang][XCOFF] Indicate that XCOFF does not support COMDATs 2020-02-18 16:10:11 -05:00
Analysis [IR] Lazily number instructions for local dominance queries 2020-02-18 14:44:24 -08:00
AsmParser
BinaryFormat Use std::foo_t rather than std::foo in LLVM. 2020-02-11 15:12:51 -08:00
Bitcode
Bitstream
CodeGen [TargetLower] Update shouldFormOverflowOp check if math is used. 2020-02-19 11:28:33 +01:00
Config
DebugInfo [NFC] Move ValidTextRanges out of DwarfTransformer and into GsymCreator and unify address is not in GSYM errors so all strings match. 2020-02-15 16:48:23 -08:00
Demangle
DWARFLinker [dsymutil] Fix double relocation of DW_AT_call_return_pc 2020-02-13 17:42:48 -08:00
ExecutionEngine [AsmPrinter] De-capitalize all AsmPrinter::Emit* but EmitInstruction 2020-02-13 17:06:24 -08:00
Frontend/OpenMP [FIX] Order macros after D72304 2020-02-15 01:37:23 -06:00
FuzzMutate Use std::foo_t rather than std::foo in LLVM. 2020-02-11 15:12:51 -08:00
IR [AArch64][SVE] Add SVE2 intrinsics for polynomial arithmetic 2020-02-19 10:12:50 +00:00
IRReader
LineEditor
Linker
LTO [Support] On Windows, ensure hardware_concurrency() extends to all CPU sockets and all NUMA groups 2020-02-14 10:24:22 -05:00
MC [MC] Delete two unused MCCodePadder functions missed by D71106 2020-02-16 22:37:33 -08:00
MCA
Object Use std::foo_t rather than std::foo in LLVM. 2020-02-11 15:12:51 -08:00
ObjectYAML
Option
Passes [Coroutines][5/6] Add coroutine passes to pipeline 2020-02-19 00:57:14 -05:00
ProfileData
Remarks
Support Improve comments after 8404aeb56a73ab24f9b295111de3b37a37f0b841. 2020-02-18 14:25:21 -05:00
TableGen
Target Reland "[DebugInfo] Enable the debug entry values feature by default" 2020-02-19 11:12:26 +01:00
Testing/Support
TextAPI
ToolDrivers
Transforms [Coroutines][4/6] New pass manager: coro-cleanup 2020-02-19 00:30:27 -05:00
WindowsManifest
WindowsResource
XRay Use std::foo_t rather than std::foo in LLVM. 2020-02-11 15:12:51 -08:00
CMakeLists.txt
InitializePasses.h
LinkAllIR.h
LinkAllPasses.h
module.extern.modulemap
module.install.modulemap
module.modulemap Fix modules build after https://reviews.llvm.org/D73835 (IRBuilder virtualization change) 2020-02-17 11:22:44 -08:00
module.modulemap.build
Pass.h
PassAnalysisSupport.h
PassInfo.h
PassRegistry.h
PassSupport.h