LLVM backend for 6502
Go to file
Andrea Di Biagio f033db57e9 [TTI] Improved cost heuristic for cttz/ctlz calls.
This patch is a follow-up of r228826 (see code-review: D7506).

Now that SimplifyCFG uses TargetTransformInfo for cost analysis, we 
have to fix the cost heuristic for intrinsic calls to cttz/ctlz.

This patch defines method 'getIntrinsicCost' in BasicTTIImpl: now, BasicTTIImpl
queries TLI to check if a call to cttz/ctlz is cheap for the target.

Added test cases in Transforms/SimplifyCFG/X86 to verify that on x86,
SimplifyCFG only speculates a call to cttz/ctlz if it is cheap.

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


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@228829 91177308-0d34-0410-b5e6-96231b3b80d8
2015-02-11 14:22:18 +00:00
autoconf Fix some bashims. More information on https://wiki.ubuntu.com/DashAsBinSh. Reported initially on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772302 & https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772301 2015-02-01 14:55:43 +00:00
bindings [OCaml] Add Llvm.build_empty_phi. 2015-02-06 13:42:03 +00:00
cmake Teach llvm_add_library() to find include dirs. 2015-02-10 05:04:37 +00:00
docs Don't promote asynch EH invokes of nounwind functions to calls 2015-02-11 01:23:16 +00:00
examples [Orc] Add a JITSymbol class to the Orc APIs, refactor APIs, update clients. 2015-02-09 01:20:51 +00:00
include [TTI] Improved cost heuristic for cttz/ctlz calls. 2015-02-11 14:22:18 +00:00
lib [SimplifyCFG] Swap to using TargetTransformInfo for cost 2015-02-11 12:15:41 +00:00
projects
test [TTI] Improved cost heuristic for cttz/ctlz calls. 2015-02-11 14:22:18 +00:00
tools Oops. Don't call Windows functions on non-windows. 2015-02-10 22:47:14 +00:00
unittests Fix warning due to unused private member variable. 2015-02-11 00:33:00 +00:00
utils [emacs] Get llvm-mode to font-lock "personality" 2015-02-09 00:30:03 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt Revert "Raising minimum required CMake version to 2.8.12.2." 2015-02-09 22:07:49 +00:00
CODE_OWNERS.TXT Assume code ownership for the PS4 to ensure patches get reviewed, per the Developer Policy. 2015-01-28 18:33:39 +00:00
configure Fix some bashims. More information on https://wiki.ubuntu.com/DashAsBinSh. Reported initially on https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772302 & https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=772301 2015-02-01 14:55:43 +00:00
CREDITS.TXT Rise from the dead and update personal info 2014-08-25 17:51:04 +00:00
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt Remove the very substantial, largely unmaintained legacy PGO 2013-10-02 15:42:23 +00:00
Makefile
Makefile.common
Makefile.config.in
Makefile.rules
README.txt Revert test commit 2015-02-04 18:46:00 +00:00

Low Level Virtual Machine (LLVM)
================================

This directory and its subdirectories contain source code for LLVM,
a toolkit for the construction of highly optimized compilers,
optimizers, and runtime environments.

LLVM is open source software. You may freely distribute it under the terms of
the license agreement found in LICENSE.txt.

Please see the documentation provided in docs/ for further
assistance with LLVM, and in particular docs/GettingStarted.rst for getting
started with LLVM and docs/README.txt for an overview of LLVM's
documentation setup.

If you're writing a package for LLVM, see docs/Packaging.rst for our
suggestions.