> Markus Franke wrote on 11/27/06 12:50:
>
> > Are there also some other optimisation passes working on the GIMPLE/SSA
> > representation which make use of any machine-dependent features?
> >
> Yes.  Passes like vectorization and loop optimizations will use so
> called 'target hooks' which allow the high-level passes to query the
> target for various capabilities and attributes.  See the tree-vect*.c
> files for several examples.

builtin_mask_for_load
builtin_vectorized_function
builtin_mul_widen_even
builtin_mul_widen_odd
are examples for such target hooks.
There's other machine-dependent bits, like the UNITS_PER_SIMD_WORD variable
that each target can define,
and anywhere we check whether an operation is supported in the relevant
vector mode
(e.g. - "if (optab->handlers[(int) vec_mode].insn_code ==
CODE_FOR_nothing)").

dorit

Reply via email to