Skip to content

Commit 489c297

Browse files
committed
Increase accuracy of atan2pi for half
Change-Id: Ia8704610e0ba5067fcac35c82fdc97ad8de67976
1 parent 75a7742 commit 489c297

File tree

1 file changed

+7
-3
lines changed

1 file changed

+7
-3
lines changed

amd/device-libs/ocml/src/atanpiredH.cl

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,13 @@
1010
CONSTATTR half
1111
MATH_PRIVATE(atanpired)(half v)
1212
{
13+
const half ch = 0x1.45cp-2h;
14+
const half cl = 0x1.85cp-13h;
1315
half t = v * v;
14-
half z = MATH_MAD(t, MATH_MAD(t, MATH_MAD(t,
15-
-0x1.ef4p-7h, 0x1.a44p-5h), -0x1.ac8p-4h), 0x1.46p-2h);
16-
return v * z;
16+
half y = MATH_MAD(t, MATH_MAD(t, MATH_MAD(t, 0x1.f04p-8h, -0x1.dfp-6h), 0x1.e3p-5h), -0x1.b08p-4h);
17+
half ph = v * ch;
18+
half pl = MATH_MAD(v, ch, -ph);
19+
half r = MATH_MAD(v, MATH_MAD(t, y, cl), pl) + ph;
20+
return r;
1721
}
1822

0 commit comments

Comments
 (0)