[PATCH][AVX512] Fix scalar floating point select.

Demikhovsky, Elena elena.demikhovsky at intel.com
Wed Dec 11 04:50:46 PST 2013


+; CHECK-LABEL: @select02
+; CHECK: cmpless           %xmm0, %xmm3, %k1
+; CHECK-NEXT: vmovups            %zmm2, %zmm1 {%k1}
+define float @select02(float %a, float %b, float %c, float %eps) {
+  %cmp = fcmp oge float %a, %eps
+  %cond = select i1 %cmp, float %c, float %b
+  ret float %cond
+}

Some comments:


1)      Please use VMOVSS xmm1 {k1}{z}, xmm2, xmm3 instead of VMOVUPS.

2)      Why "oge" has been translated to "le" and not to "lt" ?

-           Elena

From: Bader, Aleksey A
Sent: Wednesday, December 11, 2013 14:10
To: llvm-commits at cs.uiuc.edu
Cc: Demikhovsky, Elena
Subject: [PATCH][AVX512] Fix scalar floating point select.

Hi,

Attached is a small patch to fix compilation of select tests for scalar floating point arguments.

Thanks,
Alexey
---------------------------------------------------------------------
Intel Israel (74) Limited

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20131211/37d72cd2/attachment.html>


More information about the llvm-commits mailing list