1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-21 03:53:04 +02:00
llvm-mirror/include/llvm
Gerolf Hoflehner d63bafa58b [MachineCombiner] Support for floating-point FMA on ARM64
Evaluates fmul+fadd -> fmadd combines and similar code sequences in the
machine combiner. It adds support for float and double similar to the existing
integer implementation. The key features are:

- DAGCombiner checks whether it should combine greedily or let the machine
combiner do the evaluation. This is only supported on ARM64.
- It gives preference to throughput over latency: the heuristic used is
to combine always in loops. The targets decides whether the machine
combiner should optimize for throughput or latency.
- Supports for fmadd, f(n)msub, fmla, fmls patterns
- On by default at O3 ffast-math

llvm-svn: 267098
2016-04-22 02:15:19 +00:00
..
ADT Add a CachedHash structure. 2016-04-21 12:16:21 +00:00
Analysis Initial implementation of optimization bisect support. 2016-04-21 17:58:54 +00:00
AsmParser [AsmParser] Expose an API to parse a string starting with a type. 2016-03-08 00:37:07 +00:00
Bitcode [ThinLTO] Remove unused/incomplete lazy summary reading support (NFC) 2016-04-22 01:52:00 +00:00
CodeGen [MachineCombiner] Support for floating-point FMA on ARM64 2016-04-22 02:15:19 +00:00
Config [CMake] Add PACKAGE_VENDOR for customizing version output 2016-03-15 18:07:46 +00:00
DebugInfo Fix PDB warnings and test 2016-04-21 22:37:55 +00:00
ExecutionEngine Thread Expected<...> up from libObject’s getName() for symbols to allow llvm-objdump to produce a good error message. 2016-04-20 21:24:34 +00:00
IR Untabify. 2016-04-22 01:33:50 +00:00
IRReader [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
LibDriver [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
LineEditor Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
Linker ThinLTO/ModuleLinker: add a flag to not always pull-in linkonce when performing importing 2016-04-21 01:59:39 +00:00
LTO ThinLTO: initialize variables 2016-04-21 06:43:41 +00:00
MC MachO: enable .data_region directives everywhere 2016-04-21 23:00:17 +00:00
Object [ThinLTO] Remove unused/incomplete lazy summary reading support (NFC) 2016-04-22 01:52:00 +00:00
ObjectYAML [msan fix] unitalized variable 2016-03-17 19:16:54 +00:00
Option Option parser: class for consuming a joined arg in addition to all remaining args 2016-04-15 00:23:30 +00:00
Passes [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
ProfileData [ProfileData] Report errors from InstrProfSymtab::create 2016-04-21 21:07:25 +00:00
Support [Support] Fix Wcast-qual warning 2016-04-21 22:40:59 +00:00
TableGen Reverting r263474; it turns out there are uses of the public interface, but MSVC wasn't caring about them. 2016-03-14 20:03:15 +00:00
Target [MachineCombiner] Support for floating-point FMA on ARM64 2016-04-22 02:15:19 +00:00
Transforms [esan] EfficiencySanitizer instrumentation pass 2016-04-21 21:30:22 +00:00
CMakeLists.txt
InitializePasses.h [esan] EfficiencySanitizer instrumentation pass 2016-04-21 21:30:22 +00:00
LinkAllIR.h Remove every uses of getGlobalContext() in LLVM (but the C API) 2016-04-14 21:59:01 +00:00
LinkAllPasses.h Port InstrProfiling pass to the new pass manager 2016-04-18 17:47:38 +00:00
module.modulemap Add Lanai.def to the module map. 2016-03-12 01:31:53 +00:00
module.modulemap.build
Pass.h Initial implementation of optimization bisect support. 2016-04-21 17:58:54 +00:00
PassAnalysisSupport.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
PassInfo.h Reformat partially. 2015-10-05 04:46:30 +00:00
PassRegistry.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00
PassSupport.h [NFC] Header cleanup 2016-04-18 09:17:29 +00:00