On 14 November 2014 16:38, Jiong Wang wrote:
>
> gcc/
> * config/aarch64/iterators.md (VS): New mode iterator.
> (vsi2qi): New mode attribute.
> (VSI2QI): Likewise.
> * config/aarch64/aarch64-simd-builtins.def: New entry for ctz.
> * config/aarch64/aarch64-simd.md (ctz2): New pattern for
This patch add vector pattern for __builtin_ctz.
like __builtin_clz, only 32bit version of ctz supported.
for scalar version ctz, we expand it into:
rbit
clz
reverse bits first, then turn cout tailing zero into count leading zero.
while for vector version, rbit only support byte granulari