llvm-6502/include/llvm
Sanjay Patel 871beb8dd7 make reciprocal estimate code generation more flexible by adding command-line options (2nd try)
The first try (r238051) to land this was reverted due to bot failures
that were hopefully addressed by r238788.

This patch adds a TargetRecip class for processing many recip codegen possibilities.
The class is intended to handle both command-line options to llc as well
as options passed in from a front-end such as clang with the -mrecip option.

The x86 backend is updated to use the new functionality.
Only -mcpu=btver2 with -ffast-math should see a functional change from this patch.
All other x86 CPUs continue to *not* use reciprocal estimates by default with -ffast-math.

Differential Revision: http://reviews.llvm.org/D8982



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238842 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-02 15:28:15 +00:00
..
ADT [ADT] Add Triple::getEnvironmentVersion 2015-06-01 23:38:09 +00:00
Analysis [PHITransAddr] Don't translate unreachable values 2015-06-01 00:15:08 +00:00
AsmParser Pass a MemoryBufferRef when we can avoid taking ownership. 2014-08-26 21:49:01 +00:00
Bitcode Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types 2015-05-29 19:43:39 +00:00
CodeGen make reciprocal estimate code generation more flexible by adding command-line options (2nd try) 2015-06-02 15:28:15 +00:00
Config [omp] Add a configuration variable for the default OpenMP runtime. 2015-05-28 01:47:22 +00:00
DebugInfo [DWARF] Fix a bug in line info handling 2015-05-31 23:37:04 +00:00
ExecutionEngine Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types 2015-05-29 19:43:39 +00:00
IR revert 238809 2015-06-02 07:45:19 +00:00
IRReader Pass a MemoryBufferRef when we can avoid taking ownership. 2014-08-26 21:49:01 +00:00
LineEditor Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
Linker Linker: Add flag to override linkage rules 2015-04-22 04:11:00 +00:00
LTO Make the C++ LTO API easier to use from C++ clients. 2015-06-01 20:08:30 +00:00
MC Create a MCSymbolELF. 2015-06-02 00:25:12 +00:00
Object Simplify now that we always use an alignment of 2 for ELF files. 2015-06-02 12:05:27 +00:00
Option Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
Passes [PM] Create a separate library for high-level pass management code. 2015-03-07 09:02:36 +00:00
ProfileData Tidy comments in SampleProfile header. NFC. 2015-05-12 22:03:00 +00:00
Support Simplify now that we always use an alignment of 2 for ELF files. 2015-06-02 12:05:27 +00:00
TableGen [TableGen] Use range-based for loops. NFC 2015-06-02 06:19:28 +00:00
Target make reciprocal estimate code generation more flexible by adding command-line options (2nd try) 2015-06-02 15:28:15 +00:00
Transforms Extend EarlyCSE to handle basic cases from JumpThreading and CVP 2015-05-22 23:53:24 +00:00
CMakeLists.txt Remove llvm_headers_do_not_build for the benefit of XCode and Visual Studio users. 2014-08-14 00:51:47 +00:00
InitializePasses.h Resubmit r237954 (MIR Serialization: print and parse LLVM IR using MIR format). 2015-05-27 18:02:19 +00:00
LinkAllIR.h
LinkAllPasses.h Add a speculative execution pass 2015-05-15 17:54:48 +00:00
module.modulemap Fix modules build post-r235612. 2015-04-23 23:22:26 +00:00
module.modulemap.build
Pass.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
PassAnalysisSupport.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
PassInfo.h Removing LLVM_DELETED_FUNCTION, as MSVC 2012 was the last reason for requiring the macro. NFC; LLVM edition. 2015-02-15 22:54:22 +00:00
PassRegistry.h Revert r231276 (including r231277): Add a lock() function in PassRegistry to speed up multi-thread synchronization. 2015-03-05 17:53:00 +00:00
PassSupport.h Defining a new API for debug options that doesn't rely on static global cl::opts. 2014-10-15 21:54:35 +00:00