[llvm-commits] [llvm] r143682 - /llvm/trunk/test/CodeGen/X86/f16c-intrinsics.ll
Craig Topper
craig.topper at gmail.com
Thu Nov 3 23:59:21 PDT 2011
Author: ctopper
Date: Fri Nov 4 01:59:21 2011
New Revision: 143682
URL: http://llvm.org/viewvc/llvm-project?rev=143682&view=rev
Log:
Add intrinsics for X86 vcvtps2ph and vcvtph2ps instructions
Added:
llvm/trunk/test/CodeGen/X86/f16c-intrinsics.ll
Added: llvm/trunk/test/CodeGen/X86/f16c-intrinsics.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/f16c-intrinsics.ll?rev=143682&view=auto
==============================================================================
--- llvm/trunk/test/CodeGen/X86/f16c-intrinsics.ll (added)
+++ llvm/trunk/test/CodeGen/X86/f16c-intrinsics.ll Fri Nov 4 01:59:21 2011
@@ -0,0 +1,32 @@
+; RUN: llc < %s -march=x86 -mattr=+avx,+f16c | FileCheck %s
+
+define <4 x float> @test_x86_vcvtph2ps_128(<8 x i16> %a0) {
+ ; CHECK: vcvtph2ps
+ %res = call <4 x float> @llvm.x86.vcvtph2ps.128(<8 x i16> %a0) ; <<4 x float>> [#uses=1]
+ ret <4 x float> %res
+}
+declare <4 x float> @llvm.x86.vcvtph2ps.128(<8 x i16>) nounwind readonly
+
+
+define <8 x float> @test_x86_vcvtph2ps_256(<8 x i16> %a0) {
+ ; CHECK: vcvtph2ps
+ %res = call <8 x float> @llvm.x86.vcvtph2ps.256(<8 x i16> %a0) ; <<8 x float>> [#uses=1]
+ ret <8 x float> %res
+}
+declare <8 x float> @llvm.x86.vcvtph2ps.256(<8 x i16>) nounwind readonly
+
+
+define <8 x i16> @test_x86_vcvtps2ph_128(<4 x float> %a0) {
+ ; CHECK: vcvtps2ph
+ %res = call <8 x i16> @llvm.x86.vcvtps2ph.128(<4 x float> %a0, i32 0) ; <<8 x i16>> [#uses=1]
+ ret <8 x i16> %res
+}
+declare <8 x i16> @llvm.x86.vcvtps2ph.128(<4 x float>, i32) nounwind readonly
+
+
+define <8 x i16> @test_x86_vcvtps2ph_256(<8 x float> %a0) {
+ ; CHECK: vcvtps2ph
+ %res = call <8 x i16> @llvm.x86.vcvtps2ph.256(<8 x float> %a0, i32 0) ; <<8 x i16>> [#uses=1]
+ ret <8 x i16> %res
+}
+declare <8 x i16> @llvm.x86.vcvtps2ph.256(<8 x float>, i32) nounwind readonly
More information about the llvm-commits
mailing list