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

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

https://gcc.gnu.org/g:103a3966bc7b68f91b6cd3c5beb330c4b8570c90

commit r14-5613-g103a3966bc7b68f91b6cd3c5beb330c4b8570c90
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Mon Nov 20 10:03:20 2023 +0100

    tree-ssa-math-opts: popcount (X) == 1 to (X ^ (X - 1)) > (X - 1)
optimization for direct optab [PR90693]

    On Fri, Nov 17, 2023 at 03:01:04PM +0100, Jakub Jelinek wrote:
    > As a follow-up, I'm considering changing in this routine the popcount
    > call to IFN_POPCOUNT with 2 arguments and during expansion test costs.

    Here is the follow-up which does the rtx costs testing.

    2023-11-20  Jakub Jelinek  <ja...@redhat.com>

            PR tree-optimization/90693
            * tree-ssa-math-opts.cc (match_single_bit_test): Mark POPCOUNT with
            result only used in equality comparison against 1 with direct optab
            support as .POPCOUNT call with 2 arguments.
            * internal-fn.h (expand_POPCOUNT): Declare.
            * internal-fn.def (DEF_INTERNAL_INT_EXT_FN): New macro, document
it,
            undefine at the end.
            (POPCOUNT): Use it instead of DEF_INTERNAL_INT_FN.
            * internal-fn.cc (DEF_INTERNAL_INT_EXT_FN): Define to nothing
before
            inclusion to define expanders.
            (expand_POPCOUNT): New function.

Reply via email to