1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 03:33:20 +01:00
Go to file
Pirama Arumuga Nainar 4cd983fcee Fix *_EXTEND_VECTOR_INREG legalization
Summary:
While promoting *_EXTEND_VECTOR_INREG nodes whose inputs are already
promoted, perform the appropriate sign extension for the promoted node
before doing the *_EXTEND_VECTOR_INREG operation.  If not, the undefined
high-order bits of the promoted operand may (a) be garbage inc ase of
zext) or (b) contribute the wrong sign-bit (in case of sext)

Updated the promote-vec3.ll test after this change.  The diff shows
explicit zeroing in case of zext and intermediate sign extension in case
of sext.

Reviewers: RKSimon

Subscribers: llvm-commits, srhines

Differential Revision: https://reviews.llvm.org/D25790

llvm-svn: 284752
2016-10-20 17:56:36 +00:00
bindings [Go bindings] Update for r284678 API changes. 2016-10-20 09:14:39 +00:00
cmake [docs] Increase minimum supported GCC version for building LLVM to 4.8 2016-10-18 17:17:37 +00:00
docs Update docs to reflect new minimum MSVC version requirement 2016-10-19 23:04:41 +00:00
examples [BuildingAJIT] Use the remote target triple to construct the TargetMachine in 2016-10-19 22:41:03 +00:00
include [Target] remove TargetRecip class; 2nd try 2016-10-20 16:55:45 +00:00
lib Fix *_EXTEND_VECTOR_INREG legalization 2016-10-20 17:56:36 +00:00
projects [CMake] Correct configuration order of the sub-projects based on ther dependancies 2016-10-09 20:38:29 +00:00
resources
runtimes [CMake] Make the runtimes directory work with bootstrap builds 2016-10-19 21:50:25 +00:00
test Fix *_EXTEND_VECTOR_INREG legalization 2016-10-20 17:56:36 +00:00
tools Remove LLVM_NOEXCEPT and replace it with noexcept 2016-10-19 23:52:38 +00:00
unittests [Support] Remove llvm::alignOf now that all uses are gone. 2016-10-20 15:36:38 +00:00
utils Improve tablegen gen-subtarget diagnostics for missing machine models. 2016-10-18 04:17:44 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt [cmake] Declare LLVM_CMAKE_PATH for use in subprojects 2016-10-19 12:18:34 +00:00
CODE_OWNERS.TXT
configure
CREDITS.TXT
LICENSE.TXT
llvm.spec.in
LLVMBuild.txt
README.txt
RELEASE_TESTERS.TXT

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 are writing a package for LLVM, see docs/Packaging.rst for our
suggestions.