llvm-project/llvm
Artur Pilipenko 3c8fc57e16 Support arbitrary addrspace pointers in masked load/store intrinsics
This patch fixes the problem which occurs when loop-vectorize tries to use @llvm.masked.load/store intrinsic for a non-default addrspace pointer. It fails with "Calling a function with a bad signature!" assertion in CallInst constructor because it tries to pass a non-default addrspace pointer to the pointer argument which has default addrspace.

The fix is to add pointer type as another overloaded type to @llvm.masked.load/store intrinsics.

Reviewed By: reames

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

llvm-svn: 263158
2016-03-10 20:39:22 +00:00
..
bindings Kill LLVMAddTargetData 2016-02-16 00:22:02 +00:00
cmake cmake: include what you use 2016-03-08 18:56:00 +00:00
docs Support arbitrary addrspace pointers in masked load/store intrinsics 2016-03-10 20:39:22 +00:00
examples Refactor duplicated code for linking with pthread. 2016-03-01 15:54:40 +00:00
include Support arbitrary addrspace pointers in masked load/store intrinsics 2016-03-10 20:39:22 +00:00
lib Support arbitrary addrspace pointers in masked load/store intrinsics 2016-03-10 20:39:22 +00:00
projects Remove autoconf support 2016-01-26 21:29:08 +00:00
resources
test Support arbitrary addrspace pointers in masked load/store intrinsics 2016-03-10 20:39:22 +00:00
tools [CG] Actually hoist up the generic CallGraphPrinter pass from a weird 2016-03-10 11:08:44 +00:00
unittests [AsmParser] Expose an API to parse a string starting with a type. 2016-03-08 00:37:07 +00:00
utils [TableGen] more helpful error message in MapTableEmitter 2016-03-10 18:51:58 +00:00
.arcconfig
.clang-format
.clang-tidy
.gitignore
CMakeLists.txt [CMake] Add test-depends target to build dependencies of check-all 2016-03-02 17:56:30 +00:00
CODE_OWNERS.TXT Add self to CODE_OWNERS 2016-03-08 19:01:15 +00:00
CREDITS.TXT
LICENSE.TXT
LLVMBuild.txt
README.txt Revert previous test commit. 2016-01-04 19:13:29 +00:00
configure Remove autoconf support 2016-01-26 21:29:08 +00:00
llvm.spec.in

README.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.