-
- Downloads
autovectorizer: Add basic support for convert optabs
Given the shift from modeling dot products as direct optabs to treating them as conversion optabs, we make necessary changes to the autovectorizer code to ensure that given the relevant tree code, together with the input and output data modes, we can retrieve the relevant optab and subsequently the insn_code for it. gcc/ChangeLog: * gimple-match-exports.cc (directly_supported_p): Add overload for conversion-type optabs. * gimple-match.h (directly_supported_p): Add new function prototype. * optabs.cc (expand_widen_pattern_expr): Make the DOT_PROD_EXPR tree code use `find_widening_optab_handler' to retrieve icode. * tree-vect-loop.cc (vect_is_emulated_mixed_dot_prod): make it call conversion-type overloaded `directly_supported_p'. * tree-vect-patterns.cc (vect_supportable_conv_optab_p): New. (vect_recog_dot_prod_pattern): s/direct/conv/ in call to `vect_supportable_direct_optab_p'.
Showing
- gcc/gimple-match-exports.cc 23 additions, 0 deletionsgcc/gimple-match-exports.cc
- gcc/gimple-match.h 2 additions, 0 deletionsgcc/gimple-match.h
- gcc/optabs.cc 2 additions, 1 deletiongcc/optabs.cc
- gcc/tree-vect-loop.cc 1 addition, 0 deletionsgcc/tree-vect-loop.cc
- gcc/tree-vect-patterns.cc 31 additions, 2 deletionsgcc/tree-vect-patterns.cc
Loading
Please register or sign in to comment