[libcxx-commits] [libc] [flang] [clang-tools-extra] [lldb] [llvm] [clang] [libcxx] [compiler-rt] [X86][BF16] Try to use `f16` for lowering (PR #76901)

Freddy Ye via libcxx-commits libcxx-commits at lists.llvm.org
Thu Jan 4 22:22:02 PST 2024


================
@@ -22,10 +22,7 @@ define void @add(ptr %pa, ptr %pb, ptr %pc) nounwind {
 ; X86-NEXT:    vaddss %xmm0, %xmm1, %xmm0
 ; X86-NEXT:    vmovss %xmm0, (%esp)
 ; X86-NEXT:    calll __truncsfbf2
-; X86-NEXT:    fstps {{[0-9]+}}(%esp)
-; X86-NEXT:    vmovd {{.*#+}} xmm0 = mem[0],zero,zero,zero
-; X86-NEXT:    vmovd %xmm0, %eax
-; X86-NEXT:    movw %ax, (%esi)
+; X86-NEXT:    vmovsh %xmm0, (%esi)
----------------
FreddyLeaf wrote:

Sorry being not clear. I saw the original codes containing `; X86-NEXT: movw %ax, (%esi)` seems like we are changing from a word store to a xmm store here.

https://github.com/llvm/llvm-project/pull/76901


More information about the libcxx-commits mailing list