This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: machine-dependent Passes on GIMPLE/SSA Tree's?


> 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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]