Commit Graph

10 Commits

Author SHA1 Message Date
Simon Pilgrim
5c8f5359c9 InterleavedLoadCombine - merge isa<> and dyn_cast<> duplicates. NFCI.
Silence static analyzer null dereference warning of *dyn_cast<BinaryOperator> by merging with the isa<BinaryOperator> above.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@371935 91177308-0d34-0410-b5e6-96231b3b80d8
2019-09-15 16:20:12 +00:00
Simon Pilgrim
88a6655a2e computePolynomialFromPointer - add missing early-out return for non-pointer types.
Reported in https://www.viva64.com/en/b/0629/

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@359486 91177308-0d34-0410-b5e6-96231b3b80d8
2019-04-29 19:25:16 +00:00
James Y Knight
6c00b3f35f [opaque pointer types] Pass value type to LoadInst creation.
This cleans up all LoadInst creation in LLVM to explicitly pass the
value type rather than deriving it from the pointer's element-type.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@352911 91177308-0d34-0410-b5e6-96231b3b80d8
2019-02-01 20:44:24 +00:00
Chandler Carruth
6b547686c5 Update the file headers across all of the LLVM projects in the monorepo
to reflect the new license.

We understand that people may be surprised that we're moving the header
entirely to discuss the new license. We checked this carefully with the
Foundation's lawyer and we believe this is the correct approach.

Essentially, all code in the project is now made available by the LLVM
project under our new license, so you will see that the license headers
include that license only. Some of our contributors have contributed
code under our old license, and accordingly, we have retained a copy of
our old license notice in the top-level files in each project and
repository.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@351636 91177308-0d34-0410-b5e6-96231b3b80d8
2019-01-19 08:50:56 +00:00
Simon Pilgrim
8604a7645f Fix unused function warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347252 91177308-0d34-0410-b5e6-96231b3b80d8
2018-11-19 19:18:00 +00:00
Simon Pilgrim
7e9b96e2e8 Add missing stream operator for Polynomial class to fix debug builds.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347249 91177308-0d34-0410-b5e6-96231b3b80d8
2018-11-19 18:57:49 +00:00
Martin Elshuber
418c4bb296 [InterleavedLoadCombine] Fix warnings
* remove unused function
* fix compare



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347241 91177308-0d34-0410-b5e6-96231b3b80d8
2018-11-19 18:35:31 +00:00
Martin Elshuber
3d5599fc65 [InterleavedLoadCombine] Fix warning unused variable
Differential Revision: https://reviews.llvm.org/D52653



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347229 91177308-0d34-0410-b5e6-96231b3b80d8
2018-11-19 17:11:48 +00:00
Benjamin Kramer
a0ef91d751 [InterleavedLoadCombine] Remove unused include. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347226 91177308-0d34-0410-b5e6-96231b3b80d8
2018-11-19 17:01:19 +00:00
Martin Elshuber
5e067bb37c Subject: [PATCH] [CodeGen] Add pass to combine interleaved loads.
This patch defines an interleaved-load-combine pass. The pass searches
for ShuffleVector instructions that represent interleaved loads. Matches are
converted such that they will be captured by the InterleavedAccessPass.

The pass extends LLVMs capabilities to use target specific instruction
selection of interleaved load patterns (e.g.: ld4 on Aarch64
architectures).

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



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@347208 91177308-0d34-0410-b5e6-96231b3b80d8
2018-11-19 14:26:10 +00:00