[aarch64-port-dev ] population count intrinsic performance
Edward Nevill
edward.nevill at gmail.com
Wed Jun 10 14:24:28 UTC 2015
On Wed, 2015-06-10 at 14:06 +0000, Alexeev, Alexander wrote:
>
>
> instruct popCountI(iRegINoSp dst, iRegIorL2I src) %{
> match(Set dst (PopCountI src));
> ins_cost(INSN_COST * 13);
>
> format %{ "popCountI TODO\n\t" %}
> ins_encode %{
> __ mov(vscratch1, __ T1D, 0, as_Register($src$$reg));
> __ cnt(vscratch2, __ T8B, vscratch1);
> __ addv(vscratch1, __ T8B, vscratch2);
> __ mov(as_Register($dst$$reg), vscratch1, __ T1D, 0);
> %}
>
> ins_pipe(ialu_reg);
> %}
What are 'vscratch1' & 'vscratch2'. Could you send the complete patch so I can try this out,
Thanks,
Ed.
More information about the aarch64-port-dev
mailing list