Issue 170273
Summary [X86] EmitX86BuiltinExpr - attempt to convert SSE41/AVX1 roundps/d/ss/sd builtins to regular rounding modes
Labels good first issue, backend:X86, clang:frontend
Assignees
Reporter RKSimon
    Certain rounding modes used for _mm_round_ps etc. can be translated to the generic equivalents:

https://github.com/llvm/llvm-project/blob/535f604dabfb6563dab2a2478fb665699523fd0a/llvm/lib/Target/X86/X86ISelDAGToDAG.cpp#L1254-L1268

We should be trying to convert these to the ceil/floor/trunc/roundeven/nearbyint/rint intrinsics (either regular or strict/constrained depending on fp strict mode).

The scalar cases are a bit trickier requiring extraction/insertion.

I don't expect AVX512 rndscale equivalents to be fully handled in this patch, which can be messier to deal with.
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to