blob: e85578630c8330fefc206cad34150058452d6bdc (
plain)
1
2
3
4
5
6
7
8
9
10
|
require_vector_vs;
P_LOOP(32, {
if ((INT32_MIN != ps1) | (INT16_MIN != P_SH(ps2, 1))) {
int64_t mres = ((int64_t) ps1 * P_SH(ps2, 1)) << 1;
pd = ((mres >> 15) + 1) >> 1;
} else {
pd = INT32_MAX;
P_SET_OV(1);
}
})
|