OSDN Git Service

android-x86/external-llvm.git
7 years ago[AVX-512] Fix the ExeDomain for vcmpss/vcmpsd.
Craig Topper [Tue, 21 Feb 2017 04:26:04 +0000 (04:26 +0000)]
[AVX-512] Fix the ExeDomain for vcmpss/vcmpsd.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295691 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[ValueTracking] clang-format a section I'm about to touch; NFC
Sanjoy Das [Tue, 21 Feb 2017 02:42:42 +0000 (02:42 +0000)]
[ValueTracking] clang-format a section I'm about to touch; NFC

(Whitespace only change)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295690 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoScheduleDAG: Cleanup; NFC
Matthias Braun [Tue, 21 Feb 2017 01:27:33 +0000 (01:27 +0000)]
ScheduleDAG: Cleanup; NFC

- Fix doxygen comments (do not repeat documented name, remove definition
    comment if there is already one at the declaration, add \p, ...)
- Add some const modifiers
- Use range based for

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295688 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoSubtargetFeature: Cleanup; NFC
Matthias Braun [Tue, 21 Feb 2017 01:27:29 +0000 (01:27 +0000)]
SubtargetFeature: Cleanup; NFC

- Fix doxygen comments
- Remove duplicated comments
- Remove section comments (which became wrong over time)
- Use more `const` and references but less `auto`

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295687 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoAdd a wrapper around copy_if in STLExtras; NFC
Sanjoy Das [Tue, 21 Feb 2017 00:38:44 +0000 (00:38 +0000)]
Add a wrapper around copy_if in STLExtras; NFC

I will add one more use for this in a later change.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295685 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[BranchFolding] Update debug location along with the update of branch instruction.
Taewook Oh [Tue, 21 Feb 2017 00:12:38 +0000 (00:12 +0000)]
[BranchFolding] Update debug location along with the update of branch instruction.

Summary:
Currently, BranchFolder drops DebugLoc for branch instructions in some places. For example, for the test code attached, the branch instruction of 'entry' block has a DILocation of

```
!12 = !DILocation(line: 6, column: 3, scope: !11)
```

, but this information is gone when then block is lowered because BranchFolder misses it. This patch is a fix for this issue.

Reviewers: qcolombet, aprantl, craig.topper, MatzeB

Reviewed By: aprantl

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295684 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Add additonal check lines to one of the rotate tests.
Craig Topper [Mon, 20 Feb 2017 23:38:51 +0000 (23:38 +0000)]
[X86] Add additonal check lines to one of the rotate tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295682 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] FileCheckize one of the rotate tests.
Craig Topper [Mon, 20 Feb 2017 23:38:48 +0000 (23:38 +0000)]
[X86] FileCheckize one of the rotate tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295681 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[IndVars] Add an assert
Sanjoy Das [Mon, 20 Feb 2017 23:37:11 +0000 (23:37 +0000)]
[IndVars] Add an assert

We've already checked that the loop is in simplify form before, but a
little paranoia never hurt anyone.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295680 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[IR/Verifier] List the CU we weren't able to find in `llvm.dbg.cu`.
Davide Italiano [Mon, 20 Feb 2017 22:51:42 +0000 (22:51 +0000)]
[IR/Verifier] List the CU we weren't able to find in `llvm.dbg.cu`.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295678 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoMemorySSA: Add support for renaming uses in the updater.
Daniel Berlin [Mon, 20 Feb 2017 22:26:03 +0000 (22:26 +0000)]
MemorySSA: Add support for renaming uses in the updater.

Summary:
This lets one add aliasing stores to the updater.
(i'm next going to move the creation/etc functions to the updater)

Reviewers: george.burgess.iv

Subscribers: llvm-commits, Prazek

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295677 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] FileCheckize one of the rotate tests.
Craig Topper [Mon, 20 Feb 2017 19:44:10 +0000 (19:44 +0000)]
[X86] FileCheckize one of the rotate tests.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295676 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoFix use-after-free found by ASAN
Steven Wu [Mon, 20 Feb 2017 18:33:40 +0000 (18:33 +0000)]
Fix use-after-free found by ASAN

DenseMap::lookup returns copy of the value in the map. Returning the
address of the temporary return value will cause use-after-free.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295675 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Add a few more patterns for selecting masked vpternlog with broadcast loads...
Craig Topper [Mon, 20 Feb 2017 17:44:09 +0000 (17:44 +0000)]
[AVX-512] Add a few more patterns for selecting masked vpternlog with broadcast loads where the passthru operand is not operand 0.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295673 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Tidyup combineExtractVectorElt. NFCI.
Simon Pilgrim [Mon, 20 Feb 2017 16:09:45 +0000 (16:09 +0000)]
[X86] Tidyup combineExtractVectorElt. NFCI.

Pull out repeated code for extraction index operand and source vector value type.

Use isNullConstant helper to check for zero extraction index.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295670 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][SSE] Regenerate extracted bitcasted constant tests and add 32-bit test target
Simon Pilgrim [Mon, 20 Feb 2017 15:57:14 +0000 (15:57 +0000)]
[X86][SSE] Regenerate extracted bitcasted constant tests and add 32-bit test target

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295669 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[globalisel] OperandPredicateMatcher's shouldn't need to generate the MachineOperand...
Daniel Sanders [Mon, 20 Feb 2017 15:30:43 +0000 (15:30 +0000)]
[globalisel] OperandPredicateMatcher's shouldn't need to generate the MachineOperand expr. NFC

Summary:
Each OperandPredicateMatcher shouldn't need to know how to generate the expression
to reference a MachineOperand. The OperandMatcher should provide it.

In addition to separating responsibilities, this also lays some groundwork for
decoupling source patterns from destination patterns to allow invented operands
or operands provided by GlobalISel's equivalent to the ComplexPattern<> class.

Depends on D29709

Reviewers: t.p.northover, ab, rovka, qcolombet, aditya_nandakumar

Reviewed By: ab

Subscribers: dberris, kristof.beyls, llvm-commits, igorb

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295668 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][SSE] Regenerate re-materialized store tests and add 64-bit test target
Simon Pilgrim [Mon, 20 Feb 2017 15:20:37 +0000 (15:20 +0000)]
[X86][SSE] Regenerate re-materialized store tests and add 64-bit test target

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295666 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][SSE] Regenerate vselect widening tests and add 32-bit test target
Simon Pilgrim [Mon, 20 Feb 2017 15:16:43 +0000 (15:16 +0000)]
[X86][SSE] Regenerate vselect widening tests and add 32-bit test target

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295665 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[ARM] GlobalISel: Don't select atomic loads
Diana Picus [Mon, 20 Feb 2017 14:45:58 +0000 (14:45 +0000)]
[ARM] GlobalISel: Don't select atomic loads

There used to be a check in the IRTranslator that prevented us from having to
deal with atomic loads/stores. That check has been removed in r294993 and the
AArch64 backend was updated accordingly. This commit does the same thing for the
ARM backend.

In general, in the ARM backend we introduce fences during the atomic expand
pass, so we don't have to worry about atomics, *except* for the 32-bit ARMv8
target, which handles atomics more like AArch64. Since we don't want to worry
about that yet, just bail out of instruction selection if we find any atomic
loads.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295662 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[globalisel] Separate the SelectionDAG importer from the emitter. NFC
Daniel Sanders [Mon, 20 Feb 2017 14:31:27 +0000 (14:31 +0000)]
[globalisel] Separate the SelectionDAG importer from the emitter. NFC

Summary:
In the near future the rules will be sorted between these two steps to
ensure that more important rules are not prevented by less important ones.

Reviewers: t.p.northover, ab, rovka, qcolombet, aditya_nandakumar

Reviewed By: ab

Subscribers: dberris, kristof.beyls, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295661 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Fix EXTRACT_VECTOR_ELT with variable index from v32i16 and v64i8 vector.
Igor Breger [Mon, 20 Feb 2017 14:16:29 +0000 (14:16 +0000)]
[X86] Fix EXTRACT_VECTOR_ELT with variable index from v32i16 and v64i8 vector.

Its more profitable to go through memory (1 cycles throughput)
than using VMOVD + VPERMV/PSHUFB sequence ( 2/3 cycles throughput) to implement EXTRACT_VECTOR_ELT with variable index.
IACA tool was used to get performace estimation (https://software.intel.com/en-us/articles/intel-architecture-code-analyzer)
For example for var_shuffle_v16i8_v16i8_xxxxxxxxxxxxxxxx_i8 test from vector-shuffle-variable-128.ll I get 26 cycles vs 79 cycles.
Removing the VINSERT node, we don't need it any more.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295660 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[SLP] Additional test for vectorization of cal/invoke args vectorization
Alexey Bataev [Mon, 20 Feb 2017 12:41:16 +0000 (12:41 +0000)]
[SLP] Additional test for vectorization of cal/invoke args vectorization

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295657 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][AVX512] Add support for ASHR v2i64/v4i64 support without VLX
Simon Pilgrim [Mon, 20 Feb 2017 12:16:38 +0000 (12:16 +0000)]
[X86][AVX512] Add support for ASHR v2i64/v4i64 support without VLX

Use v8i64 ASHR instructions if we don't have VLX.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295656 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[ARM] Add a div regression test for Cortex-M23
Sanne Wouda [Mon, 20 Feb 2017 12:05:07 +0000 (12:05 +0000)]
[ARM] Add a div regression test for Cortex-M23

Summary:
This file was missed in the commit for Cortex-M23 and Cortex-M33
support.  See https://reviews.llvm.org/D29073?id=85814 .

Reviewers: rengolin, javed.absar, samparker

Reviewed By: samparker

Subscribers: llvm-commits, aemerson

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295655 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoStrip trailing whitespace.
Simon Pilgrim [Mon, 20 Feb 2017 11:56:43 +0000 (11:56 +0000)]
Strip trailing whitespace.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295653 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[SelectionDAG] Add scalarization support for ISD::*_EXTEND_VECTOR_INREG opcodes.
Simon Pilgrim [Mon, 20 Feb 2017 11:55:58 +0000 (11:55 +0000)]
[SelectionDAG] Add scalarization support for ISD::*_EXTEND_VECTOR_INREG opcodes.

Thanks to Mikael Holmén for the initial test case

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295652 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoAArch64AsmParser: tablegen the isBranchTarget helper functions
Sjoerd Meijer [Mon, 20 Feb 2017 10:57:54 +0000 (10:57 +0000)]
AArch64AsmParser: tablegen the isBranchTarget helper functions

Use tablegen to autogenerate isBranchtarget helper functions. This is a cleanup
that removes almost identical functions that differ only in a few constants.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295649 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[mips] Add test for mul macro variants
Simon Dardis [Mon, 20 Feb 2017 10:53:03 +0000 (10:53 +0000)]
[mips] Add test for mul macro variants

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295648 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agollvm/examples/Kaleidoscope/BuildingAJIT: More fixup corresponding to r295636.
NAKAMURA Takumi [Mon, 20 Feb 2017 10:07:41 +0000 (10:07 +0000)]
llvm/examples/Kaleidoscope/BuildingAJIT: More fixup corresponding to r295636.

I missed updating them since I just ran check-llvm (with examples) in r295645.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295646 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agollvm/examples/Kaleidoscope/include/KaleidoscopeJIT.h: Fixup corresponding to r295636.
NAKAMURA Takumi [Mon, 20 Feb 2017 09:56:24 +0000 (09:56 +0000)]
llvm/examples/Kaleidoscope/include/KaleidoscopeJIT.h: Fixup corresponding to r295636.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295645 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][AVX] Extend hasVEX_WPrefix bit to accept WIG value (W Ignore) + update all...
Ayman Musa [Mon, 20 Feb 2017 08:27:54 +0000 (08:27 +0000)]
[X86][AVX] Extend hasVEX_WPrefix bit to accept WIG value (W Ignore) + update all AVX instructions with the new value.

Add WIG value to all of AVX instructions which ignore the W-bit in their encoding, instead of giving them the default value of 0.
This patch is needed for a follow up work on EVEX2VEX pass (replacing EVEX encoded instructions with their corresponding VEX version when possible).

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295643 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[SLP] nullptr'ize initial value in `findBuildAggregate()`, NFC.
Alexey Bataev [Mon, 20 Feb 2017 08:04:11 +0000 (08:04 +0000)]
[SLP] nullptr'ize initial value in `findBuildAggregate()`, NFC.

Initial value of V is sett nullptr, as it is not used.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295642 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[SLP] Rework `findBuildAggregate()` from ercursive form to iterative, NFC.
Alexey Bataev [Mon, 20 Feb 2017 07:49:39 +0000 (07:49 +0000)]
[SLP] Rework `findBuildAggregate()` from ercursive form to iterative, NFC.

Reviewers: mkuper

Subscribers: llvm-commits, mzolotukhin

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295641 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Add more patterns to fold masked VPTERNLOG with load when the passthru...
Craig Topper [Mon, 20 Feb 2017 07:00:40 +0000 (07:00 +0000)]
[AVX-512] Add more patterns to fold masked VPTERNLOG with load when the passthru isn't operand 0.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295640 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Add tests for missed opportunities to fold masked VPTERNLOG with load when...
Craig Topper [Mon, 20 Feb 2017 07:00:37 +0000 (07:00 +0000)]
[AVX-512] Add tests for missed opportunities to fold masked VPTERNLOG with load when the passthru op isn't operand 0.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295639 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Fix mistake in the immediate swizzle for some of the VPTERNLOG patterns.
Craig Topper [Mon, 20 Feb 2017 07:00:34 +0000 (07:00 +0000)]
[AVX-512] Fix mistake in the immediate swizzle for some of the VPTERNLOG patterns.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295638 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Use a better immediate in the VPTERNLOG commuting tests so its easier to...
Craig Topper [Mon, 20 Feb 2017 07:00:31 +0000 (07:00 +0000)]
[AVX-512] Use a better immediate in the VPTERNLOG commuting tests so its easier to spot bad swizzling.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295637 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[Orc] Rename ObjectLinkingLayer -> RTDyldObjectLinkingLayer.
Lang Hames [Mon, 20 Feb 2017 05:45:14 +0000 (05:45 +0000)]
[Orc] Rename ObjectLinkingLayer -> RTDyldObjectLinkingLayer.

The current ObjectLinkingLayer (now RTDyldObjectLinkingLayer) links objects
in-process using MCJIT's RuntimeDyld class. In the near future I hope to add new
object linking layers (e.g. a remote linking layer that links objects in the JIT
target process, rather than the client), so I'm renaming this class to be more
descriptive.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295636 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Add more VPTERNLOG patterns to enable folding of broadcast loads that aren...
Craig Topper [Mon, 20 Feb 2017 02:47:42 +0000 (02:47 +0000)]
[AVX-512] Add more VPTERNLOG patterns to enable folding of broadcast loads that aren't in operand 2.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295634 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Use memory form of shift right by 1 when the rotl immediate is one less than...
Craig Topper [Mon, 20 Feb 2017 00:37:23 +0000 (00:37 +0000)]
[X86] Use memory form of shift right by 1 when the rotl immediate is one less than the operation size.

An earlier commit already did this for the register form.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295626 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Add test cases showing missed opportunities to use rotate right by 1 instructio...
Craig Topper [Mon, 20 Feb 2017 00:37:20 +0000 (00:37 +0000)]
[X86] Add test cases showing missed opportunities to use rotate right by 1 instructions when operation reads/writes memory.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295625 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agos/REQUIRES: Asserts/REQUIRES: asserts/
Daniel Jasper [Sun, 19 Feb 2017 23:26:00 +0000 (23:26 +0000)]
s/REQUIRES: Asserts/REQUIRES: asserts/

Other than this, we consistently use lower case.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295623 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Remove AddedComplexity from masked operations. The size of the patterns...
Craig Topper [Sun, 19 Feb 2017 21:44:35 +0000 (21:44 +0000)]
[AVX-512] Remove AddedComplexity from masked operations. The size of the patterns already increases their priority.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295619 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Use peekThroughOneUseBitcasts helper. NFCI.
Simon Pilgrim [Sun, 19 Feb 2017 21:40:51 +0000 (21:40 +0000)]
[X86] Use peekThroughOneUseBitcasts helper. NFCI.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295618 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Prefer static_cast<> to C-style cast. NFCI.
Davide Italiano [Sun, 19 Feb 2017 21:35:41 +0000 (21:35 +0000)]
[X86] Prefer static_cast<> to C-style cast. NFCI.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295617 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Disable peephole optimizations on the VPTERNLOG commute test. Add new patte...
Craig Topper [Sun, 19 Feb 2017 21:32:15 +0000 (21:32 +0000)]
[AVX-512] Disable peephole optimizations on the VPTERNLOG commute test. Add new patterns to enable isel to fold the loads on it own.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295616 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AArch64] Prefer static_cast<> to C-style cast. NFCI.
Davide Italiano [Sun, 19 Feb 2017 21:31:14 +0000 (21:31 +0000)]
[AArch64] Prefer static_cast<> to C-style cast. NFCI.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295615 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][SSE] Use getTargetConstantBitsFromNode to find zeroable shuffle elements.
Simon Pilgrim [Sun, 19 Feb 2017 19:40:31 +0000 (19:40 +0000)]
[X86][SSE] Use getTargetConstantBitsFromNode to find zeroable shuffle elements.

Replaces existing approach that could only search BUILD_VECTOR nodes.

Requires getTargetConstantBitsFromNode to discriminate cases with all/partial UNDEF bits in each element - this should also be useful when we get around to supporting getTargetShuffleMaskIndices with UNDEF elements.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295613 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Add patterns to recognize masked vpternlog when the passthrough operand...
Craig Topper [Sun, 19 Feb 2017 19:36:58 +0000 (19:36 +0000)]
[AVX-512] Add patterns to recognize masked vpternlog when the passthrough operand is not operand 0.

This uses a SDNodeXForm to swizzle the appropriate immediate bits to allow this to be matched.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295612 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Add test cases that show failure to select masked VPTERNLOG when a select...
Craig Topper [Sun, 19 Feb 2017 19:36:54 +0000 (19:36 +0000)]
[AVX-512] Add test cases that show failure to select masked VPTERNLOG when a select is used to force the passthru operand to be not operand 0.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295611 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][SSE] Enable initial support for domain crossing at high shuffle combine depths.
Simon Pilgrim [Sun, 19 Feb 2017 17:19:38 +0000 (17:19 +0000)]
[X86][SSE] Enable initial support for domain crossing at high shuffle combine depths.

As discussed on D27692, this permits another domain to be used to combine a shuffle at high depths.

We currently set the required depth at 4 or more combined shuffles, this is probably too high for most targets but is a good starting point and already helps avoid a number of costly variable shuffles.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295608 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoRemove redundant call to GluedNodes.back() [NFC]
Artyom Skrobov [Sun, 19 Feb 2017 16:56:18 +0000 (16:56 +0000)]
Remove redundant call to GluedNodes.back() [NFC]

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295607 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][SSE] Generalize INSERTPS/SHUFPS/SHUFPD combines across domains.
Simon Pilgrim [Sun, 19 Feb 2017 15:15:40 +0000 (15:15 +0000)]
[X86][SSE] Generalize INSERTPS/SHUFPS/SHUFPD combines across domains.

Relax the INSERTPS/SHUFPS/SHUFPD combines to support integer inputs if permitted.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295606 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[llvm-cov] Respect Windows line endings when parsing demangled symbols.
Igor Kudrin [Sun, 19 Feb 2017 14:26:52 +0000 (14:26 +0000)]
[llvm-cov] Respect Windows line endings when parsing demangled symbols.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295605 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][SSE] Add domain crossing support for target shuffle combines.
Simon Pilgrim [Sun, 19 Feb 2017 14:12:25 +0000 (14:12 +0000)]
[X86][SSE] Add domain crossing support for target shuffle combines.

Add the infrastructure to flag whether float and/or int domains are permitable.

A future patch will enable domain crossing based off shuffle depth and the value types of the source vectors.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295604 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoRemoved extra ';'
Simon Pilgrim [Sun, 19 Feb 2017 12:32:44 +0000 (12:32 +0000)]
Removed extra ';'

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295603 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Add broadcast VPTERNLOG instructions to special case commuting switch.
Craig Topper [Sun, 19 Feb 2017 08:03:26 +0000 (08:03 +0000)]
[AVX-512] Add broadcast VPTERNLOG instructions to special case commuting switch.

The instructions are marked commutable, but without special handling we don't get the immediate correct.

While here also remove the masked memory forms that aren't commutable.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295602 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Add patterns to show missed opportunities for folding vpternlog with broadc...
Craig Topper [Sun, 19 Feb 2017 08:03:23 +0000 (08:03 +0000)]
[AVX-512] Add patterns to show missed opportunities for folding vpternlog with broadcast loads. Also demonstrates a bug in the commuting of broadcast vpternlog instructions when we are able to select them.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295601 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoUntabify.
NAKAMURA Takumi [Sun, 19 Feb 2017 06:51:46 +0000 (06:51 +0000)]
Untabify.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295599 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoRe-add debugcounter.ll with Requires: Asserts so that it only triggers when asserts...
Daniel Berlin [Sun, 19 Feb 2017 06:45:02 +0000 (06:45 +0000)]
Re-add debugcounter.ll with Requires: Asserts so that it only triggers when asserts are on

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295598 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoWhich, in turn, causes build bots to fail that have it unexpectedly passing. So remov...
Daniel Berlin [Sun, 19 Feb 2017 04:56:07 +0000 (04:56 +0000)]
Which, in turn, causes build bots to fail that have it unexpectedly passing. So remove debugcounter.ll for now

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295597 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoXFAIL this test until we figure out what to do here, since it will fail if NDEBUG...
Daniel Berlin [Sun, 19 Feb 2017 04:55:02 +0000 (04:55 +0000)]
XFAIL this test until we figure out what to do here, since it will fail if NDEBUG defined

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295596 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoAdd two files lost in rebase, causing build break
Daniel Berlin [Sun, 19 Feb 2017 04:29:50 +0000 (04:29 +0000)]
Add two files lost in rebase, causing build break

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295595 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoAdd a DebugCounter for PredicateInfo renaming, and an associated test
Daniel Berlin [Sun, 19 Feb 2017 04:29:01 +0000 (04:29 +0000)]
Add a DebugCounter for PredicateInfo renaming, and an associated test

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295594 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoAdd initial support for debug counting
Daniel Berlin [Sun, 19 Feb 2017 04:28:56 +0000 (04:28 +0000)]
Add initial support for debug counting

Summary:

We have support for bisection, and bugpoint can reduce testcases
often to a single pass. But that doesn't help reduce it to a single
transform by a single pass.  Which debug counting lets us do.

Debug counting lets you instrument a pass so that it only executes a
certain thing (rwhatever you want) after skipping it a certain time of
times, and then only does a certain number of executions before saying
"skip" again.

To make it concrete, for predicateinfo, if i instrument use renaming,
i can make it so it skips renaming the first N uses, renames the next
N, and then skips the rest.

This lets you narrow down a miscompilation to, often, a single
transformation, and then also debug it (by using the same command line
parameters).

Reviewers: chandlerc, davide, mehdi_amini

Subscribers: mgorny, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295593 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agollvm/test/CodeGen/AMDGPU/r600.alu-limits.ll should require +Asserts. This would run...
NAKAMURA Takumi [Sun, 19 Feb 2017 02:31:06 +0000 (02:31 +0000)]
llvm/test/CodeGen/AMDGPU/r600.alu-limits.ll should require +Asserts. This would run into infinite loop anyways with -Asserts.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295591 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Remove patterns for MOVSD with v4i32 types. We don't appear to really need...
Craig Topper [Sun, 19 Feb 2017 02:08:48 +0000 (02:08 +0000)]
[X86] Remove patterns for MOVSD with v4i32 types. We don't appear to really need them and if we do we should just use a bitcast to a 64-bit element type.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295589 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Tighten up some of the SDNode type constraints.
Craig Topper [Sun, 19 Feb 2017 01:54:47 +0000 (01:54 +0000)]
[X86] Tighten up some of the SDNode type constraints.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295588 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoFix unused variable warning when assertions are disabled.
Simon Pilgrim [Sun, 19 Feb 2017 00:33:37 +0000 (00:33 +0000)]
Fix unused variable warning when assertions are disabled.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295587 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Fix enumeral/non-enumeral conditional expression warning.
Simon Pilgrim [Sun, 19 Feb 2017 00:04:30 +0000 (00:04 +0000)]
[X86] Fix enumeral/non-enumeral conditional expression warning.

gcc only allows you to mix enums / ints if they have the same signedness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295586 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoFix 'variable set but not used' warning when assertions are disabled.
Simon Pilgrim [Sun, 19 Feb 2017 00:03:46 +0000 (00:03 +0000)]
Fix 'variable set but not used' warning when assertions are disabled.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295585 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoNewGVN: Start making use of predicateinfo pass.
Daniel Berlin [Sat, 18 Feb 2017 23:06:50 +0000 (23:06 +0000)]
NewGVN: Start making use of predicateinfo pass.

Summary: This begins using the predicateinfo pass in NewGVN.

Reviewers: davide

Subscribers: llvm-commits, Prazek

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295583 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoNewGVN: Make ranking prefer undef to constants. Fix direction of
Daniel Berlin [Sat, 18 Feb 2017 23:06:47 +0000 (23:06 +0000)]
NewGVN: Make ranking prefer undef to constants. Fix direction of
shouldSwapOperands to be correct.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295582 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoPredicateInfo: Clean up predicate info a little, using insertion
Daniel Berlin [Sat, 18 Feb 2017 23:06:38 +0000 (23:06 +0000)]
PredicateInfo: Clean up predicate info a little, using insertion
helpers, and fixing support for the renaming the comparison.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295581 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoFix signed/unsigned comparison warning.
Simon Pilgrim [Sat, 18 Feb 2017 22:56:17 +0000 (22:56 +0000)]
Fix signed/unsigned comparison warning.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295580 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][XOP] Reduce the size of a multiclass by moving more stuff to parameters instead...
Craig Topper [Sat, 18 Feb 2017 22:53:43 +0000 (22:53 +0000)]
[X86][XOP] Reduce the size of a multiclass by moving more stuff to parameters instead of doing 128-bit and 256-bit simultaneously.

This requires some instructions to be renamed to move the Y earlier in the instruction name. The new names are more consistent with other instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295579 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[TableGen] Make sure EnforceSameSize populates the type sets if necessary.
Craig Topper [Sat, 18 Feb 2017 22:53:38 +0000 (22:53 +0000)]
[TableGen] Make sure EnforceSameSize populates the type sets if necessary.

This was found by another commit I'm working on.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295578 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AArch64] Fix enumeral/non-enumeral conditional expression warning.
Simon Pilgrim [Sat, 18 Feb 2017 22:50:28 +0000 (22:50 +0000)]
[AArch64] Fix enumeral/non-enumeral conditional expression warning.

gcc only allows you to mix enums / ints if they have the same signedness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295577 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Fix enumeral/non-enumeral comparison warning.
Simon Pilgrim [Sat, 18 Feb 2017 22:40:58 +0000 (22:40 +0000)]
[X86] Fix enumeral/non-enumeral comparison warning.

gcc only allows you to mix enums / ints if they have the same signedness.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295576 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][SSE] Avoid repeated calls to SDValue::getValueType.
Simon Pilgrim [Sat, 18 Feb 2017 22:25:27 +0000 (22:25 +0000)]
[X86][SSE] Avoid repeated calls to SDValue::getValueType.

Added assertion to check input type of X86ISD::VZEXT during target known bits calculation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295575 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[InstCombine] add nsw/nuw X, signbit --> or X, signbit
Sanjay Patel [Sat, 18 Feb 2017 22:20:09 +0000 (22:20 +0000)]
[InstCombine] add nsw/nuw X, signbit --> or X, signbit

Changing to 'or' (rather than 'xor' when no wrapping flags are set)
allows icmp simplifies to happen as expected.

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295574 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[InstSimplify] add nsw/nuw (xor X, signbit), signbit --> X
Sanjay Patel [Sat, 18 Feb 2017 21:59:09 +0000 (21:59 +0000)]
[InstSimplify] add nsw/nuw (xor X, signbit), signbit --> X

The change to InstCombine in:
https://reviews.llvm.org/D29729
...exposes this missing fold in InstSimplify, so adding this
first to avoid a regression.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295573 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[InstSimplify] add tests for add nsw/nuw (xor X, signbit), signbit --> X; NFC
Sanjay Patel [Sat, 18 Feb 2017 21:51:14 +0000 (21:51 +0000)]
[InstSimplify] add tests for add nsw/nuw (xor X, signbit), signbit --> X; NFC

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295572 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoRecommit "[X86] Remove XOP VPCMOV intrinsics and autoupgrade them to native IR."
Craig Topper [Sat, 18 Feb 2017 21:50:58 +0000 (21:50 +0000)]
Recommit "[X86] Remove XOP VPCMOV intrinsics and autoupgrade them to native IR."

Clang has now been fixed to not use these intrinsics.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295571 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[x86] remove stale comments from tests; NFC
Sanjay Patel [Sat, 18 Feb 2017 21:07:37 +0000 (21:07 +0000)]
[x86] remove stale comments from tests; NFC

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295569 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[x86] fold sext (xor Bool, -1) --> sub (zext Bool), 1
Sanjay Patel [Sat, 18 Feb 2017 21:03:28 +0000 (21:03 +0000)]
[x86] fold sext (xor Bool, -1) --> sub (zext Bool), 1

This is the same transform that is current used for:
select Bool, 0, -1

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295568 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[MemorySSA] NFC small fixes
Piotr Padlewski [Sat, 18 Feb 2017 20:34:36 +0000 (20:34 +0000)]
[MemorySSA] NFC small fixes

Summary:
2 small fixes extracted from
https://reviews.llvm.org/D29064

Reviewers: kuhar, davide, dberlin, george.burgess.iv

Subscribers: llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295566 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoRevert "[X86] Remove XOP VPCMOV intrinsics and autoupgrade them to native IR."
Craig Topper [Sat, 18 Feb 2017 20:14:20 +0000 (20:14 +0000)]
Revert "[X86] Remove XOP VPCMOV intrinsics and autoupgrade them to native IR."

This reverts r295564. I missed that clang was still using the intrinsics despite our half implemented autoupgrade support.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295565 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86] Remove XOP VPCMOV intrinsics and autoupgrade them to native IR.
Craig Topper [Sat, 18 Feb 2017 19:51:25 +0000 (19:51 +0000)]
[X86] Remove XOP VPCMOV intrinsics and autoupgrade them to native IR.

It seems we were already upgrading 128-bit VPCMOV, but the intrinsic was still defined and being used in isel patterns. While I was here I also simplified the tablegen multiclasses.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295564 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][IR] Simplify the XOP vpcmov autoupgrade code. NFC
Craig Topper [Sat, 18 Feb 2017 19:51:19 +0000 (19:51 +0000)]
[X86][IR] Simplify the XOP vpcmov autoupgrade code. NFC

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295563 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[X86][IR] Merge together some very similar AutoUpgrade handling. NFC
Craig Topper [Sat, 18 Feb 2017 19:51:14 +0000 (19:51 +0000)]
[X86][IR] Merge together some very similar AutoUpgrade handling. NFC

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295562 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoAMDGPU: Fix assembler subtarget predicate for gfx9
Matt Arsenault [Sat, 18 Feb 2017 19:12:26 +0000 (19:12 +0000)]
AMDGPU: Fix assembler subtarget predicate for gfx9

This was accepting GFX9 instructions on VI.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295557 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoAMDGPU: Fix disassembly of aperture registers
Matt Arsenault [Sat, 18 Feb 2017 18:41:41 +0000 (18:41 +0000)]
AMDGPU: Fix disassembly of aperture registers

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295555 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoAMDGPU: Merge initial gfx9 support
Matt Arsenault [Sat, 18 Feb 2017 18:29:53 +0000 (18:29 +0000)]
AMDGPU: Merge initial gfx9 support

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295554 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[InstCombine] add tests for trunc(insertelement); NFC
Sanjay Patel [Sat, 18 Feb 2017 18:27:04 +0000 (18:27 +0000)]
[InstCombine] add tests for trunc(insertelement); NFC

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295553 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoRefactor instruction simplification code in visitors. NFC.
Easwaran Raman [Sat, 18 Feb 2017 17:22:52 +0000 (17:22 +0000)]
Refactor instruction simplification code in visitors. NFC.

Several visitors check if operands to the instruction are constants,
either as it is or after looking up SimplifiedValues, check if the
result is a constant and update the SimplifiedValues map. This
refactoring splits it into a common function that does the checking of
whether the operands are constants and updating of the SimplifiedValues
table, and an instruction specific part that is implemented by each
instruction visitor as a lambda and passed to the common function.

Differential revision: https://reviews.llvm.org/D30104

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295552 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[InstCombine] update trunc(shuffle) tests to reflect IR reality; NFC
Sanjay Patel [Sat, 18 Feb 2017 15:24:31 +0000 (15:24 +0000)]
[InstCombine] update trunc(shuffle) tests to reflect IR reality; NFC

We're ok shrinking splats, but not shuffles in general.

See https://reviews.llvm.org/D30123 for discussion.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295547 91177308-0d34-0410-b5e6-96231b3b80d8

7 years agoopt-viewer: Fix syntax highlighting
Brian Cain [Sat, 18 Feb 2017 15:13:58 +0000 (15:13 +0000)]
opt-viewer: Fix syntax highlighting

Syntax highlighting has been done line-at-a-time. Done this way, the lexer
resets the context at each line, distorting the formatting.

This change will render the whole file at once and feed the highlighted text
line-at-a-time to be wrapped by the SourceFileRenderer.

Leading/trailing newlines were being ignored by Pygments but since each line
was rendered in its own row, it didn't matter. This bug was masked by the
line-at-a-time algorithm. So now we need to add "stripnl=False" to the
CppLexer to change its behavior to match the expectation.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295546 91177308-0d34-0410-b5e6-96231b3b80d8

7 years ago[AVX-512] Remove 128/256-bit masked fp max/min intrinsics. Upgrade them to legacy...
Craig Topper [Sat, 18 Feb 2017 07:07:50 +0000 (07:07 +0000)]
[AVX-512] Remove 128/256-bit masked fp max/min intrinsics. Upgrade them to legacy unmasked intrinsics and select instructions.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@295543 91177308-0d34-0410-b5e6-96231b3b80d8