ir/tests/c/rol_001.irt

22 lines
390 B
Plaintext

--TEST--
001: rol function
--ARGS--
--emit-c
--CODE--
{
l_1 = START(l_4);
int32_t x = PARAM(l_1, "x", 1);
int32_t y = PARAM(l_1, "y", 2);
int32_t ret = ROL(x, y);
l_4 = RETURN(l_1, ret);
}
--EXPECT--
int32_t test(int32_t x, int32_t y)
{
int32_t d_1 = x;
int32_t d_2 = y;
int32_t d_3;
d_3 = ((uint32_t)d_1 << (uint32_t)d_2) | ((uint32_t)d_1 >> (32 - (uint32_t)d_2));
return d_3;
}