blob: 9a0fad224fe7245019143b32406c0cafa03148ca [file] [log] [blame]
/* This testcase checks that the shift operand of r*sbg instructions is in
range. */
/* { dg-do compile } */
/* { dg-options "-O3 -march=zEC12 -Wno-shift-count-overflow" } */
int g;
void pos_ll_129 (long long b)
{
if (b >> 129 & 1)
g = b;
}
void sizepos_ll_134 (long long b)
{
if (b >> 134 & 1)
g = b;
}
void pos_ll_65 (long long b)
{
if (b >> 65 & 1)
g = b;
}
void sizepos_ll_70 (long long b)
{
if (b >> 70 & 1)
g = b;
}
void pos_ll_33 (long long b)
{
if (b >> 33 & 1)
g = b;
}
void sizepos_ll_38 (long long b)
{
if (b >> 38 & 1)
g = b;
}
void pos_ll_17 (long long b)
{
if (b >> 17 & 1)
g = b;
}
void sizepos_ll_22 (long long b)
{
if (b >> 22 & 1)
g = b;
}
void pos_ll_8 (long long b)
{
if (b >> 8 & 1)
g = b;
}
void sizepos_ll_13 (long long b)
{
if (b >> 13 & 1)
g = b;
}
void pos_l_129 (long b)
{
if (b >> 129 & 1)
g = b;
}
void sizepos_l_134 (long b)
{
if (b >> 134 & 1)
g = b;
}
void pos_l_65 (long b)
{
if (b >> 65 & 1)
g = b;
}
void sizepos_l_70 (long b)
{
if (b >> 70 & 1)
g = b;
}
void pos_l_33 (long b)
{
if (b >> 33 & 1)
g = b;
}
void sizepos_l_38 (long b)
{
if (b >> 38 & 1)
g = b;
}
void pos_l_17 (long b)
{
if (b >> 17 & 1)
g = b;
}
void sizepos_l_22 (long b)
{
if (b >> 22 & 1)
g = b;
}
void pos_l_8 (long b)
{
if (b >> 8 & 1)
g = b;
}
void sizepos_l_13 (long b)
{
if (b >> 13 & 1)
g = b;
}
void pos_i_129 (int b)
{
if (b >> 129 & 1)
g = b;
}
void sizepos_i_134 (int b)
{
if (b >> 134 & 1)
g = b;
}
void pos_i_65 (int b)
{
if (b >> 65 & 1)
g = b;
}
void sizepos_i_70 (int b)
{
if (b >> 70 & 1)
g = b;
}
void pos_i_33 (int b)
{
if (b >> 33 & 1)
g = b;
}
void sizepos_i_38 (int b)
{
if (b >> 38 & 1)
g = b;
}
void pos_i_17 (int b)
{
if (b >> 17 & 1)
g = b;
}
void sizepos_i_22 (int b)
{
if (b >> 22 & 1)
g = b;
}
void pos_i_8 (int b)
{
if (b >> 8 & 1)
g = b;
}
void sizepos_i_13 (int b)
{
if (b >> 13 & 1)
g = b;
}
void pos_s_129 (short b)
{
if (b >> 129 & 1)
g = b;
}
void sizepos_s_134 (short b)
{
if (b >> 134 & 1)
g = b;
}
void pos_s_65 (short b)
{
if (b >> 65 & 1)
g = b;
}
void sizepos_s_70 (short b)
{
if (b >> 70 & 1)
g = b;
}
void pos_s_33 (short b)
{
if (b >> 33 & 1)
g = b;
}
void sizepos_s_38 (short b)
{
if (b >> 38 & 1)
g = b;
}
void pos_s_17 (short b)
{
if (b >> 17 & 1)
g = b;
}
void sizepos_s_22 (short b)
{
if (b >> 22 & 1)
g = b;
}
void pos_s_8 (short b)
{
if (b >> 8 & 1)
g = b;
}
void sizepos_s_13 (short b)
{
if (b >> 13 & 1)
g = b;
}
void pos_c_129 (signed char b)
{
if (b >> 129 & 1)
g = b;
}
void sizepos_c_134 (signed char b)
{
if (b >> 134 & 1)
g = b;
}
void pos_c_65 (signed char b)
{
if (b >> 65 & 1)
g = b;
}
void sizepos_c_70 (signed char b)
{
if (b >> 70 & 1)
g = b;
}
void pos_c_33 (signed char b)
{
if (b >> 33 & 1)
g = b;
}
void sizepos_c_38 (signed char b)
{
if (b >> 38 & 1)
g = b;
}
void pos_c_17 (signed char b)
{
if (b >> 17 & 1)
g = b;
}
void sizepos_c_22 (signed char b)
{
if (b >> 22 & 1)
g = b;
}
void pos_c_8 (signed char b)
{
if (b >> 8 & 1)
g = b;
}
void sizepos_c_13 (signed char b)
{
if (b >> 13 & 1)
g = b;
}
/* { dg-final { scan-assembler-not "risbg.*-\[0-9\]+\\\+1\n" } } */