[AArch64][SME]: Generate streaming-compatible code for fp_to_int and int_to_fp.
authorHassnaa Hamdi <hassnaa.hamdi@arm.com>
Fri, 18 Nov 2022 10:50:37 +0000 (10:50 +0000)
committerHassnaa Hamdi <hassnaa.hamdi@arm.com>
Mon, 21 Nov 2022 18:12:58 +0000 (18:12 +0000)
commit70180ee0ae6e0ccd1601c512f340f175f4d196e7
tree80e28dfcae8177d2a19c419797c89cd51a32503e
parentbc010cec3d6435b98952b7780d45899fffd6a52f
[AArch64][SME]: Generate streaming-compatible code for fp_to_int and int_to_fp.

1-To generate code compatible to streaming mode:
  - enable custom lowering fp_to_int, int_to_fp, fp_round, fmul, trunc.
  - disable fp_to_int combining into invalid NEON intrinsic.
2-Add testing files:
  fp_to_int.ll
  fp-convert.ll
  int_to_fp.ll
  trunc.ll

Differential Revision: https://reviews.llvm.org/D138281
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-convert.ll
llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-to-int.ll
llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-to-fp.ll
llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc.ll