[llvm] ccc48d4 - [X86][NFC] Replace X32 check prefixes with X86

Phoebe Wang via llvm-commits llvm-commits at lists.llvm.org
Sun Mar 3 19:15:10 PST 2024


Author: Phoebe Wang
Date: 2024-03-04T11:13:13+08:00
New Revision: ccc48d45b832def14c8bc1849cf64c805892368d

URL: https://github.com/llvm/llvm-project/commit/ccc48d45b832def14c8bc1849cf64c805892368d
DIFF: https://github.com/llvm/llvm-project/commit/ccc48d45b832def14c8bc1849cf64c805892368d.diff

LOG: [X86][NFC] Replace X32 check prefixes with X86

We try to only use X32 for gnux32 triple tests.

Added: 
    

Modified: 
    llvm/test/CodeGen/X86/half-constrained.ll

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/X86/half-constrained.ll b/llvm/test/CodeGen/X86/half-constrained.ll
index b4db61a4a4a342..eae9b25e43e06f 100644
--- a/llvm/test/CodeGen/X86/half-constrained.ll
+++ b/llvm/test/CodeGen/X86/half-constrained.ll
@@ -1,6 +1,6 @@
 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
-; RUN: llc < %s -mtriple=i686-linux-gnu | FileCheck %s --check-prefix=X32-NOF16C
-; RUN: llc < %s -mtriple=i686-linux-gnu -mattr=f16c | FileCheck %s --check-prefix=X32-F16C
+; RUN: llc < %s -mtriple=i686-linux-gnu | FileCheck %s --check-prefix=X86-NOF16C
+; RUN: llc < %s -mtriple=i686-linux-gnu -mattr=f16c | FileCheck %s --check-prefix=X86-F16C
 ; RUN: llc < %s -mtriple=x86_64-linux-gnu | FileCheck %s --check-prefix=X64-NOF16C
 ; RUN: llc < %s -mtriple=x86_64-linux-gnu -mattr=f16c | FileCheck %s --check-prefix=X64-F16C
 
@@ -9,30 +9,30 @@
 @c = global half 0xH0000, align 2
 
 define float @half_to_float() strictfp {
-; X32-NOF16C-LABEL: half_to_float:
-; X32-NOF16C:       # %bb.0:
-; X32-NOF16C-NEXT:    subl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-NOF16C-NEXT:    movzwl a, %eax
-; X32-NOF16C-NEXT:    movl %eax, (%esp)
-; X32-NOF16C-NEXT:    calll __gnu_h2f_ieee
-; X32-NOF16C-NEXT:    addl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-NOF16C-NEXT:    retl
+; X86-NOF16C-LABEL: half_to_float:
+; X86-NOF16C:       # %bb.0:
+; X86-NOF16C-NEXT:    subl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-NOF16C-NEXT:    movzwl a, %eax
+; X86-NOF16C-NEXT:    movl %eax, (%esp)
+; X86-NOF16C-NEXT:    calll __gnu_h2f_ieee
+; X86-NOF16C-NEXT:    addl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-NOF16C-NEXT:    retl
 ;
-; X32-F16C-LABEL: half_to_float:
-; X32-F16C:       # %bb.0:
-; X32-F16C-NEXT:    pushl %eax
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 8
-; X32-F16C-NEXT:    movzwl a, %eax
-; X32-F16C-NEXT:    vmovd %eax, %xmm0
-; X32-F16C-NEXT:    vcvtph2ps %xmm0, %xmm0
-; X32-F16C-NEXT:    vmovss %xmm0, (%esp)
-; X32-F16C-NEXT:    flds (%esp)
-; X32-F16C-NEXT:    wait
-; X32-F16C-NEXT:    popl %eax
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-F16C-NEXT:    retl
+; X86-F16C-LABEL: half_to_float:
+; X86-F16C:       # %bb.0:
+; X86-F16C-NEXT:    pushl %eax
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 8
+; X86-F16C-NEXT:    movzwl a, %eax
+; X86-F16C-NEXT:    vmovd %eax, %xmm0
+; X86-F16C-NEXT:    vcvtph2ps %xmm0, %xmm0
+; X86-F16C-NEXT:    vmovss %xmm0, (%esp)
+; X86-F16C-NEXT:    flds (%esp)
+; X86-F16C-NEXT:    wait
+; X86-F16C-NEXT:    popl %eax
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-F16C-NEXT:    retl
 ;
 ; X64-NOF16C-LABEL: half_to_float:
 ; X64-NOF16C:       # %bb.0:
@@ -58,31 +58,31 @@ define float @half_to_float() strictfp {
 }
 
 define double @half_to_double() strictfp {
-; X32-NOF16C-LABEL: half_to_double:
-; X32-NOF16C:       # %bb.0:
-; X32-NOF16C-NEXT:    subl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-NOF16C-NEXT:    movzwl a, %eax
-; X32-NOF16C-NEXT:    movl %eax, (%esp)
-; X32-NOF16C-NEXT:    calll __gnu_h2f_ieee
-; X32-NOF16C-NEXT:    addl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-NOF16C-NEXT:    retl
+; X86-NOF16C-LABEL: half_to_double:
+; X86-NOF16C:       # %bb.0:
+; X86-NOF16C-NEXT:    subl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-NOF16C-NEXT:    movzwl a, %eax
+; X86-NOF16C-NEXT:    movl %eax, (%esp)
+; X86-NOF16C-NEXT:    calll __gnu_h2f_ieee
+; X86-NOF16C-NEXT:    addl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-NOF16C-NEXT:    retl
 ;
-; X32-F16C-LABEL: half_to_double:
-; X32-F16C:       # %bb.0:
-; X32-F16C-NEXT:    subl $12, %esp
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-F16C-NEXT:    movzwl a, %eax
-; X32-F16C-NEXT:    vmovd %eax, %xmm0
-; X32-F16C-NEXT:    vcvtph2ps %xmm0, %xmm0
-; X32-F16C-NEXT:    vcvtss2sd %xmm0, %xmm0, %xmm0
-; X32-F16C-NEXT:    vmovsd %xmm0, (%esp)
-; X32-F16C-NEXT:    fldl (%esp)
-; X32-F16C-NEXT:    wait
-; X32-F16C-NEXT:    addl $12, %esp
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-F16C-NEXT:    retl
+; X86-F16C-LABEL: half_to_double:
+; X86-F16C:       # %bb.0:
+; X86-F16C-NEXT:    subl $12, %esp
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-F16C-NEXT:    movzwl a, %eax
+; X86-F16C-NEXT:    vmovd %eax, %xmm0
+; X86-F16C-NEXT:    vcvtph2ps %xmm0, %xmm0
+; X86-F16C-NEXT:    vcvtss2sd %xmm0, %xmm0, %xmm0
+; X86-F16C-NEXT:    vmovsd %xmm0, (%esp)
+; X86-F16C-NEXT:    fldl (%esp)
+; X86-F16C-NEXT:    wait
+; X86-F16C-NEXT:    addl $12, %esp
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-F16C-NEXT:    retl
 ;
 ; X64-NOF16C-LABEL: half_to_double:
 ; X64-NOF16C:       # %bb.0:
@@ -110,27 +110,27 @@ define double @half_to_double() strictfp {
 }
 
 define x86_fp80 @half_to_fp80() strictfp {
-; X32-NOF16C-LABEL: half_to_fp80:
-; X32-NOF16C:       # %bb.0:
-; X32-NOF16C-NEXT:    subl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-NOF16C-NEXT:    movzwl a, %eax
-; X32-NOF16C-NEXT:    movl %eax, (%esp)
-; X32-NOF16C-NEXT:    calll __gnu_h2f_ieee
-; X32-NOF16C-NEXT:    addl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-NOF16C-NEXT:    retl
+; X86-NOF16C-LABEL: half_to_fp80:
+; X86-NOF16C:       # %bb.0:
+; X86-NOF16C-NEXT:    subl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-NOF16C-NEXT:    movzwl a, %eax
+; X86-NOF16C-NEXT:    movl %eax, (%esp)
+; X86-NOF16C-NEXT:    calll __gnu_h2f_ieee
+; X86-NOF16C-NEXT:    addl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-NOF16C-NEXT:    retl
 ;
-; X32-F16C-LABEL: half_to_fp80:
-; X32-F16C:       # %bb.0:
-; X32-F16C-NEXT:    subl $12, %esp
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-F16C-NEXT:    vpinsrw $0, a, %xmm0, %xmm0
-; X32-F16C-NEXT:    vpextrw $0, %xmm0, (%esp)
-; X32-F16C-NEXT:    calll __extendhfxf2
-; X32-F16C-NEXT:    addl $12, %esp
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-F16C-NEXT:    retl
+; X86-F16C-LABEL: half_to_fp80:
+; X86-F16C:       # %bb.0:
+; X86-F16C-NEXT:    subl $12, %esp
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-F16C-NEXT:    vpinsrw $0, a, %xmm0, %xmm0
+; X86-F16C-NEXT:    vpextrw $0, %xmm0, (%esp)
+; X86-F16C-NEXT:    calll __extendhfxf2
+; X86-F16C-NEXT:    addl $12, %esp
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-F16C-NEXT:    retl
 ;
 ; X64-NOF16C-LABEL: half_to_fp80:
 ; X64-NOF16C:       # %bb.0:
@@ -159,26 +159,26 @@ define x86_fp80 @half_to_fp80() strictfp {
 }
 
 define void @float_to_half(float %0) strictfp {
-; X32-NOF16C-LABEL: float_to_half:
-; X32-NOF16C:       # %bb.0:
-; X32-NOF16C-NEXT:    subl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-NOF16C-NEXT:    flds {{[0-9]+}}(%esp)
-; X32-NOF16C-NEXT:    fstps (%esp)
-; X32-NOF16C-NEXT:    wait
-; X32-NOF16C-NEXT:    calll __gnu_f2h_ieee
-; X32-NOF16C-NEXT:    movw %ax, a
-; X32-NOF16C-NEXT:    addl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-NOF16C-NEXT:    retl
+; X86-NOF16C-LABEL: float_to_half:
+; X86-NOF16C:       # %bb.0:
+; X86-NOF16C-NEXT:    subl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-NOF16C-NEXT:    flds {{[0-9]+}}(%esp)
+; X86-NOF16C-NEXT:    fstps (%esp)
+; X86-NOF16C-NEXT:    wait
+; X86-NOF16C-NEXT:    calll __gnu_f2h_ieee
+; X86-NOF16C-NEXT:    movw %ax, a
+; X86-NOF16C-NEXT:    addl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-NOF16C-NEXT:    retl
 ;
-; X32-F16C-LABEL: float_to_half:
-; X32-F16C:       # %bb.0:
-; X32-F16C-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
-; X32-F16C-NEXT:    vcvtps2ph $4, %xmm0, %xmm0
-; X32-F16C-NEXT:    vmovd %xmm0, %eax
-; X32-F16C-NEXT:    movw %ax, a
-; X32-F16C-NEXT:    retl
+; X86-F16C-LABEL: float_to_half:
+; X86-F16C:       # %bb.0:
+; X86-F16C-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
+; X86-F16C-NEXT:    vcvtps2ph $4, %xmm0, %xmm0
+; X86-F16C-NEXT:    vmovd %xmm0, %eax
+; X86-F16C-NEXT:    movw %ax, a
+; X86-F16C-NEXT:    retl
 ;
 ; X64-NOF16C-LABEL: float_to_half:
 ; X64-NOF16C:       # %bb.0:
@@ -207,30 +207,30 @@ define void @float_to_half(float %0) strictfp {
 }
 
 define void @double_to_half(double %0) strictfp {
-; X32-NOF16C-LABEL: double_to_half:
-; X32-NOF16C:       # %bb.0:
-; X32-NOF16C-NEXT:    subl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-NOF16C-NEXT:    fldl {{[0-9]+}}(%esp)
-; X32-NOF16C-NEXT:    fstpl (%esp)
-; X32-NOF16C-NEXT:    wait
-; X32-NOF16C-NEXT:    calll __truncdfhf2
-; X32-NOF16C-NEXT:    movw %ax, a
-; X32-NOF16C-NEXT:    addl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-NOF16C-NEXT:    retl
+; X86-NOF16C-LABEL: double_to_half:
+; X86-NOF16C:       # %bb.0:
+; X86-NOF16C-NEXT:    subl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-NOF16C-NEXT:    fldl {{[0-9]+}}(%esp)
+; X86-NOF16C-NEXT:    fstpl (%esp)
+; X86-NOF16C-NEXT:    wait
+; X86-NOF16C-NEXT:    calll __truncdfhf2
+; X86-NOF16C-NEXT:    movw %ax, a
+; X86-NOF16C-NEXT:    addl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-NOF16C-NEXT:    retl
 ;
-; X32-F16C-LABEL: double_to_half:
-; X32-F16C:       # %bb.0:
-; X32-F16C-NEXT:    subl $12, %esp
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-F16C-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero
-; X32-F16C-NEXT:    vmovq %xmm0, (%esp)
-; X32-F16C-NEXT:    calll __truncdfhf2
-; X32-F16C-NEXT:    vpextrw $0, %xmm0, a
-; X32-F16C-NEXT:    addl $12, %esp
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-F16C-NEXT:    retl
+; X86-F16C-LABEL: double_to_half:
+; X86-F16C:       # %bb.0:
+; X86-F16C-NEXT:    subl $12, %esp
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-F16C-NEXT:    vmovq {{.*#+}} xmm0 = mem[0],zero
+; X86-F16C-NEXT:    vmovq %xmm0, (%esp)
+; X86-F16C-NEXT:    calll __truncdfhf2
+; X86-F16C-NEXT:    vpextrw $0, %xmm0, a
+; X86-F16C-NEXT:    addl $12, %esp
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-F16C-NEXT:    retl
 ;
 ; X64-NOF16C-LABEL: double_to_half:
 ; X64-NOF16C:       # %bb.0:
@@ -260,31 +260,31 @@ define void @double_to_half(double %0) strictfp {
 }
 
 define void @fp80_to_half(x86_fp80 %0) strictfp {
-; X32-NOF16C-LABEL: fp80_to_half:
-; X32-NOF16C:       # %bb.0:
-; X32-NOF16C-NEXT:    subl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-NOF16C-NEXT:    fldt {{[0-9]+}}(%esp)
-; X32-NOF16C-NEXT:    fstpt (%esp)
-; X32-NOF16C-NEXT:    wait
-; X32-NOF16C-NEXT:    calll __truncxfhf2
-; X32-NOF16C-NEXT:    movw %ax, a
-; X32-NOF16C-NEXT:    addl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-NOF16C-NEXT:    retl
+; X86-NOF16C-LABEL: fp80_to_half:
+; X86-NOF16C:       # %bb.0:
+; X86-NOF16C-NEXT:    subl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-NOF16C-NEXT:    fldt {{[0-9]+}}(%esp)
+; X86-NOF16C-NEXT:    fstpt (%esp)
+; X86-NOF16C-NEXT:    wait
+; X86-NOF16C-NEXT:    calll __truncxfhf2
+; X86-NOF16C-NEXT:    movw %ax, a
+; X86-NOF16C-NEXT:    addl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-NOF16C-NEXT:    retl
 ;
-; X32-F16C-LABEL: fp80_to_half:
-; X32-F16C:       # %bb.0:
-; X32-F16C-NEXT:    subl $12, %esp
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-F16C-NEXT:    fldt {{[0-9]+}}(%esp)
-; X32-F16C-NEXT:    fstpt (%esp)
-; X32-F16C-NEXT:    wait
-; X32-F16C-NEXT:    calll __truncxfhf2
-; X32-F16C-NEXT:    vpextrw $0, %xmm0, a
-; X32-F16C-NEXT:    addl $12, %esp
-; X32-F16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-F16C-NEXT:    retl
+; X86-F16C-LABEL: fp80_to_half:
+; X86-F16C:       # %bb.0:
+; X86-F16C-NEXT:    subl $12, %esp
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-F16C-NEXT:    fldt {{[0-9]+}}(%esp)
+; X86-F16C-NEXT:    fstpt (%esp)
+; X86-F16C-NEXT:    wait
+; X86-F16C-NEXT:    calll __truncxfhf2
+; X86-F16C-NEXT:    vpextrw $0, %xmm0, a
+; X86-F16C-NEXT:    addl $12, %esp
+; X86-F16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-F16C-NEXT:    retl
 ;
 ; X64-NOF16C-LABEL: fp80_to_half:
 ; X64-NOF16C:       # %bb.0:
@@ -320,43 +320,43 @@ define void @fp80_to_half(x86_fp80 %0) strictfp {
 }
 
 define void @add() strictfp {
-; X32-NOF16C-LABEL: add:
-; X32-NOF16C:       # %bb.0:
-; X32-NOF16C-NEXT:    subl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 16
-; X32-NOF16C-NEXT:    movzwl a, %eax
-; X32-NOF16C-NEXT:    movl %eax, (%esp)
-; X32-NOF16C-NEXT:    calll __gnu_h2f_ieee
-; X32-NOF16C-NEXT:    fstps {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
-; X32-NOF16C-NEXT:    wait
-; X32-NOF16C-NEXT:    movzwl b, %eax
-; X32-NOF16C-NEXT:    movl %eax, (%esp)
-; X32-NOF16C-NEXT:    calll __gnu_h2f_ieee
-; X32-NOF16C-NEXT:    flds {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
-; X32-NOF16C-NEXT:    faddp %st, %st(1)
-; X32-NOF16C-NEXT:    fstps (%esp)
-; X32-NOF16C-NEXT:    wait
-; X32-NOF16C-NEXT:    calll __gnu_f2h_ieee
-; X32-NOF16C-NEXT:    movw %ax, c
-; X32-NOF16C-NEXT:    addl $12, %esp
-; X32-NOF16C-NEXT:    .cfi_def_cfa_offset 4
-; X32-NOF16C-NEXT:    retl
+; X86-NOF16C-LABEL: add:
+; X86-NOF16C:       # %bb.0:
+; X86-NOF16C-NEXT:    subl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 16
+; X86-NOF16C-NEXT:    movzwl a, %eax
+; X86-NOF16C-NEXT:    movl %eax, (%esp)
+; X86-NOF16C-NEXT:    calll __gnu_h2f_ieee
+; X86-NOF16C-NEXT:    fstps {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Spill
+; X86-NOF16C-NEXT:    wait
+; X86-NOF16C-NEXT:    movzwl b, %eax
+; X86-NOF16C-NEXT:    movl %eax, (%esp)
+; X86-NOF16C-NEXT:    calll __gnu_h2f_ieee
+; X86-NOF16C-NEXT:    flds {{[-0-9]+}}(%e{{[sb]}}p) # 4-byte Folded Reload
+; X86-NOF16C-NEXT:    faddp %st, %st(1)
+; X86-NOF16C-NEXT:    fstps (%esp)
+; X86-NOF16C-NEXT:    wait
+; X86-NOF16C-NEXT:    calll __gnu_f2h_ieee
+; X86-NOF16C-NEXT:    movw %ax, c
+; X86-NOF16C-NEXT:    addl $12, %esp
+; X86-NOF16C-NEXT:    .cfi_def_cfa_offset 4
+; X86-NOF16C-NEXT:    retl
 ;
-; X32-F16C-LABEL: add:
-; X32-F16C:       # %bb.0:
-; X32-F16C-NEXT:    movzwl a, %eax
-; X32-F16C-NEXT:    vmovd %eax, %xmm0
-; X32-F16C-NEXT:    vcvtph2ps %xmm0, %xmm0
-; X32-F16C-NEXT:    movzwl b, %eax
-; X32-F16C-NEXT:    vmovd %eax, %xmm1
-; X32-F16C-NEXT:    vcvtph2ps %xmm1, %xmm1
-; X32-F16C-NEXT:    vaddss %xmm1, %xmm0, %xmm0
-; X32-F16C-NEXT:    vxorps %xmm1, %xmm1, %xmm1
-; X32-F16C-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3]
-; X32-F16C-NEXT:    vcvtps2ph $4, %xmm0, %xmm0
-; X32-F16C-NEXT:    vmovd %xmm0, %eax
-; X32-F16C-NEXT:    movw %ax, c
-; X32-F16C-NEXT:    retl
+; X86-F16C-LABEL: add:
+; X86-F16C:       # %bb.0:
+; X86-F16C-NEXT:    movzwl a, %eax
+; X86-F16C-NEXT:    vmovd %eax, %xmm0
+; X86-F16C-NEXT:    vcvtph2ps %xmm0, %xmm0
+; X86-F16C-NEXT:    movzwl b, %eax
+; X86-F16C-NEXT:    vmovd %eax, %xmm1
+; X86-F16C-NEXT:    vcvtph2ps %xmm1, %xmm1
+; X86-F16C-NEXT:    vaddss %xmm1, %xmm0, %xmm0
+; X86-F16C-NEXT:    vxorps %xmm1, %xmm1, %xmm1
+; X86-F16C-NEXT:    vblendps {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3]
+; X86-F16C-NEXT:    vcvtps2ph $4, %xmm0, %xmm0
+; X86-F16C-NEXT:    vmovd %xmm0, %eax
+; X86-F16C-NEXT:    movw %ax, c
+; X86-F16C-NEXT:    retl
 ;
 ; X64-NOF16C-LABEL: add:
 ; X64-NOF16C:       # %bb.0:


        


More information about the llvm-commits mailing list