use __builtin_constant_p() instead for arm as well

This commit is contained in:
Konstantinos Margaritis
2021-11-25 06:20:53 +00:00
parent d73bf231ee
commit 959fea25f7
2 changed files with 23 additions and 32 deletions

View File

@@ -328,11 +328,12 @@ m128 palignr_imm(m128 r, m128 l, int offset) {
static really_really_inline
m128 palignr(m128 r, m128 l, int offset) {
#if defined(HS_OPTIMIZE)
return (m128)vextq_s8((int8x16_t)l, (int8x16_t)r, offset);
#else
return palignr_imm(r, l, offset);
#if defined(HAVE__BUILTIN_CONSTANT_P)
if (__builtin_constant_p(offset)) {
return (m128)vextq_s8((int8x16_t)l, (int8x16_t)r, offset);
}
#endif
return palignr_imm(r, l, offset);
}
#undef CASE_ALIGN_VECTORS