[AArch64][SVE] Implement integer compare intrinsics
authorCullen Rhodes <cullen.rhodes@arm.com>
Fri, 6 Dec 2019 10:04:23 +0000 (10:04 +0000)
committerCullen Rhodes <cullen.rhodes@arm.com>
Fri, 6 Dec 2019 10:39:06 +0000 (10:39 +0000)
commitbb8c679f4bf2a2056b4fafb8b3a3d61254e39219
treeda8e773996fdfd4356f4a9364ed79eb0954dde9b
parentd8821adacbb02fe9f9707079087d35cb02ef4a6c
[AArch64][SVE] Implement integer compare intrinsics

Summary:
Adds intrinsics for the following:

    * cmphs, cmphi
    * cmpge, cmpgt
    * cmpeq, cmpne
    * cmplt, cmple
    * cmplo, cmpls

Includes a minor change to `TLI.getMemValueType` that fixes a crash due to the
scalable flag being dropped.

Reviewers: sdesmalen, efriedma, rengolin, rovka, dancgr, huntergr

Reviewed By: efriedma

Subscribers: tschuett, kristof.beyls, hiraditya, rkruppe, psnobl, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D70889
llvm/include/llvm/CodeGen/TargetLowering.h
llvm/include/llvm/IR/IntrinsicsAArch64.td
llvm/lib/Target/AArch64/AArch64InstrFormats.td
llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
llvm/lib/Target/AArch64/SVEInstrFormats.td
llvm/test/CodeGen/AArch64/sve-intrinsics-int-compares-with-imm.ll [new file with mode: 0644]
llvm/test/CodeGen/AArch64/sve-intrinsics-int-compares.ll [new file with mode: 0644]