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
| Paths 
 |  Differential  D138281  
[AArch64][SME]: Generate streaming-compatible code for fp_to_int and int_to_fp, fp-convert, trunk. ClosedPublic Authored by hassnaa-arm on Nov 18 2022, 2:56 AM. 
Details Summary 1-To generate code compatible to streaming mode: 
 2-Add testing files: 
 
Diff Detail 
 Event TimelineComment Actions Hi @hassnaa-arm, the patch looks fine to me, but given you've added custom lowering for ISD::TRUNCATE should there are also be a sve-streaming-mode-fixed-length-trunc.ll in this patch to cover the truncates? There is already a sve-fixed-length-trunc.ll test I think. hassnaa-arm retitled this revision from [AArch64][SME]: Generate streaming-compatible code for fp_to_int and int_to_fp. to [AArch64][SME]: Generate streaming-compatible code for fp_to_int and int_to_fp, fp-convert, trunk..Nov 18 2022, 7:37 AM This revision is now accepted and ready to land.Nov 18 2022, 8:01 AM Comment Actions LGTM with nit addressed 
 hassnaa-arm marked an inline comment as done.Comment Actions fix format 
 
 This revision was landed with ongoing or failed builds.Nov 21 2022, 10:13 AM Closed by commit rG70180ee0ae6e: [AArch64][SME]: Generate streaming-compatible code for fp_to_int and int_to_fp. (authored by Hassnaa Hamdi <hassnaa.hamdi@arm.com>).  ·  Explain Why This revision was automatically updated to reflect the committed changes. 
Revision Contents 
 
 
Diff 476940 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
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
nit: These conditions can be combined into: