This is the mail archive of the gcc-bugs@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]

[Bug middle-end/80929] [6/7/8 Regression] Division with constant no more optimized to mult highpart


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80929

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu.org

--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
The problem is that for non-single set PARALLELs there is just not a good guess
what to do without target's help.  For some targets and such insns, the best
cost estimate could be maximum of the cost of both sets, for others ignoring
one of them and looking only at the other one, for others the sum of both
costs.
E.g. the various compare + arithmetics pattern on many targets really have the
cost of the arithmetics - pattern_cost even has code for that case.
insn_cost (I'm not aware of insn_rtx_cost) has a way for the target to override
it and therefore you could in the backend decide what to do.
seq_cost doesn't, perhaps it could just call insn_cost for non-single_set
insns.

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