This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Gimple vs ternary operations?
- From: Bernd Schmidt <bernds at codesourcery dot com>
- To: GCC List <gcc at gcc dot gnu dot org>
- Cc: Jim Wilson <wilson at codesourcery dot com>
- Date: Mon, 21 Jun 2010 17:25:08 +0200
- Subject: Gimple vs ternary operations?
In PR43902, Jim has posted a patch to add support for widening
multiply-accumulate to tree-ssa-math-opts. They are represented as a
GIMPLE_SINGLE_RHS with a WIDEN_MULT_PLUS_EXPR tree which holds the
actual operands of the multiply-accumulate. I've modified this a bit so
that we now support gimple statements with a GIMPLE_TERNARY_RHS class
(see the other patch I've added to the PR), but while testing I found
that we already create DOT_PROD_EXPRs, which are also three-operand
expressions, with the same GIMPLE_SINGLE_RHS representation used by
Jim's patch.
What's actually intended here? Should we add real support for
three-operand gimple statements and change the code that generates
DOT_PROD_EXPR, or should we add WIDEN_MULT_{PLUS,MINUS}_EXPR in the same
way DOT_PROD_EXPR is handled at the moment?
Bernd