Hi Robin,

> > -;; Vector crypto, assumed to be a generic operation for now.
> > -(define_insn_reservation "vec_crypto" 4
> > +;; Vector population count
> > +(define_insn_reservation "vec_pop" 4
> >    (and (eq_attr "tune" "generic_ooo,generic")
> > -       (eq_attr "type" "crypto,vclz,vctz,vcpop"))
> > +       (eq_attr "type" "vcpop"))
> >    "vxu_ooo_issue,vxu_ooo_alu")
>
> Hmm, generally I'd say it's reasonable to remove "crypto" but I wonder
whether
> vcpop is special enough to have its own reservation?  IMHO vclz, vctz,
vbrev,
> etc. are all kind of similar in that they are not regular arithmetic
operations
> but rather bitmanip ones (as opposed to vandn, vwsll or so).  I guess they
> could all execute on an ALU pipe but I wouldn't be surprised if
implementations
> differed here.
>
> Not that I have a very strong opinion but right now I'd slightly lean
towards
> removing vclz and friends from vec_alu and add them here instead.  Let's
see
> what others think still.

On tt-ascalon-d8 vctz and vclz are 1 cycle and vcpop is 2 cycles, so I
somewhat selfishly split it out as above. We'll add a pipeline description
for it soon, so I don't have a strong opinion either.

Thanks,
Anton

Reply via email to