[AArch64][SVE] Asm: Support for vector element FP compare.
authorSander de Smalen <sander.desmalen@arm.com>
Tue, 3 Jul 2018 09:07:23 +0000 (09:07 +0000)
committerSander de Smalen <sander.desmalen@arm.com>
Tue, 3 Jul 2018 09:07:23 +0000 (09:07 +0000)
commit8fcc3f5feb23d56522b1705309f8a4f31073c34a
treec2b39e47ec9b0b7bfb2200d10fec5c09d45de67f
parent13a7b37ad4bae0e46258c3613f86445d474904e3
[AArch64][SVE] Asm: Support for vector element FP compare.

Contains the following variants:

- Compare with (elements from) other vector
  instructions: fcmeq, fcmgt, fcmge, fcmne, fcmuo.
  aliases: fcmle, fcmlt.

  e.g. fcmle   p0.h, p0/z, z0.h, z1.h => fcmge p0.h, p0/z, z1.h, z0.h

- Compare absolute values with (absolute values from) other vector.
  instructions: facge, facgt.
  aliases: facle, faclt.

  e.g. facle   p0.h, p0/z, z0.h, z1.h => facge   p0.h, p0/z, z1.h, z0.h

- Compare vector elements with #0.0
  instructions: fcmeq, fcmgt, fcmge, fcmle, fcmlt, fcmne.

  e.g. fcmle   p0.h, p0/z, z0.h, #0.0

llvm-svn: 336182
25 files changed:
llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
llvm/lib/Target/AArch64/SVEInstrFormats.td
llvm/test/MC/AArch64/SVE/facge-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/facge.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/facgt-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/facgt.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/facle-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/facle.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/faclt-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/faclt.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmeq-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmeq.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmge-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmge.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmgt-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmgt.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmle-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmle.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmlt-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmlt.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmne-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmne.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmuo-diagnostics.s [new file with mode: 0644]
llvm/test/MC/AArch64/SVE/fcmuo.s [new file with mode: 0644]