2014-04-04 00:01:44 +08:00
|
|
|
; RUN: llc -mtriple=arm-eabi %s -o /dev/null
|
|
|
|
; RUN: llc -mtriple=arm-linux %s -o /dev/null
|
2007-06-29 08:09:08 +08:00
|
|
|
|
|
|
|
define void @foo(<8 x float>* %f, <8 x float>* %g, <4 x i64>* %y)
|
|
|
|
{
|
2015-02-28 05:17:42 +08:00
|
|
|
%h = load <8 x float>, <8 x float>* %f
|
2009-06-05 06:49:04 +08:00
|
|
|
%i = fmul <8 x float> %h, <float 0x3FF19999A0000000, float 0x400A666660000000, float 0x40119999A0000000, float 0x40159999A0000000, float 0.5, float 0x3FE3333340000000, float 0x3FE6666660000000, float 0x3FE99999A0000000>
|
2007-06-29 08:09:08 +08:00
|
|
|
%m = bitcast <8 x float> %i to <4 x i64>
|
2015-02-28 05:17:42 +08:00
|
|
|
%z = load <4 x i64>, <4 x i64>* %y
|
2007-06-29 08:09:08 +08:00
|
|
|
%n = mul <4 x i64> %z, %m
|
|
|
|
%p = bitcast <4 x i64> %n to <8 x float>
|
|
|
|
store <8 x float> %p, <8 x float>* %g
|
|
|
|
ret void
|
|
|
|
}
|