LLVM backend for 6502
Go to file
Andrea Di Biagio a069e64112 [X86] Refactor the logic to select horizontal adds/subs to a helper function.
This patch moves part of the logic implemented by the target specific
combine rules added at r210477 to a separate helper function.
This should make easier to add more rules for matching AVX/AVX2 horizontal
adds/subs.

This patch also fixes a problem caused by a wrong check performed on indices
of extract_vector_elt dag nodes in input to the scalar adds/subs.

New tests have been added to verify that we correctly check indices of
extract_vector_elt dag nodes when selecting a horizontal operation.



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@210644 91177308-0d34-0410-b5e6-96231b3b80d8
2014-06-11 07:57:50 +00:00
autoconf Remove path_tclsh.m4. 2014-06-02 12:54:32 +00:00
bindings [OCaml] Unbreak Llvm_target.TargetMachine.set_verbose_asm 2014-06-09 17:34:34 +00:00
cmake Remove clang-specific libxml2 check from CMake 2014-06-06 05:08:42 +00:00
docs Reduce verbiage of lit.local.cfg files 2014-06-09 22:42:55 +00:00
examples Try to fix the msvc build. 2014-04-29 23:37:02 +00:00
include Create macro INITIALIZE_TM_PASS. 2014-06-11 07:04:37 +00:00
lib [X86] Refactor the logic to select horizontal adds/subs to a helper function. 2014-06-11 07:57:50 +00:00
projects
test [X86] Refactor the logic to select horizontal adds/subs to a helper function. 2014-06-11 07:57:50 +00:00
tools Use an enum class. 2014-06-11 01:22:20 +00:00
unittests Convert StringMapEntry::Create to use StringRef instead of start/end pointers. Simpliies all in tree call sites. No functional change. 2014-06-11 05:35:56 +00:00
utils Remove windows_error. 2014-06-11 03:58:34 +00:00
.arcconfig
.clang-format
.gitignore
CMakeLists.txt Make LINK_POLLY_INTO_TOOLS work with the CMake build 2014-06-06 06:39:00 +00:00
CODE_OWNERS.TXT
configure Touch configure to force clang's config.h.in reconfiguration on the build servers 2014-06-06 10:36:38 +00:00
CREDITS.TXT Update Credits. 2014-05-29 19:59:58 +00:00
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
Makefile
Makefile.common
Makefile.config.in
Makefile.rules autoconf: Fix libLLVM-Major-Minor-Patch.so symlink 2014-05-15 19:50:25 +00:00
README.txt Trivial test commit. 2014-04-26 19:05:45 +00:00

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

This directory and its subdirectories contain source code for the Low Level
Virtual Machine, 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.