]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/target.def
[Patch 1/4] Simplify the representation of CCMP patterns by using
authorWilco Dijkstra <wdijkstr@arm.com>
Tue, 19 Jan 2016 13:59:56 +0000 (13:59 +0000)
committerJiong Wang <jiwang@gcc.gnu.org>
Tue, 19 Jan 2016 13:59:56 +0000 (13:59 +0000)
commitc8012fbce973bebc5cf2a9905ebfa9fbaec1afa0
tree40411588caf22f22a87c45f55d64e7352997b459
parent756f4e9049bb7739624a8ad7b2ff36f151a7a983
[Patch 1/4] Simplify the representation of CCMP patterns by using

    2015-01-19  Wilco Dijkstra  <wdijkstr@arm.com>

    gcc/
        * target.def (gen_ccmp_first): Update documentation.
        (gen_ccmp_next): Likewise.
        * doc/tm.texi (gen_ccmp_first): Update documentation.
        (gen_ccmp_next): Likewise.
        * ccmp.c (expand_ccmp_expr): Extract cmp_code from return value of
        expand_ccmp_expr_1.  Improve comments.
        * config/aarch64/aarch64.md (ccmp_and): Use if_then_else for ccmp.
        (ccmp_ior<mode>): Remove pattern.
        (cmp<mode>): Remove expand.
        (cmp): Globalize pattern.
        (cstorecc4): Use cc_register.
        (mov<mode>cc): Remove ccmp_cc_register check.
        * config/aarch64/aarch64.c (aarch64_get_condition_code_1):
        Simplify after removal of CC_DNE/* modes.
        (aarch64_ccmp_mode_to_code): Remove.
        (aarch64_print_operand): Remove 'K' case.  Merge 'm' and 'M' cases.
        In 'k' case use integer as condition.
        (aarch64_nzcv_codes): Remove inverted cases.
        (aarch64_code_to_ccmode): Remove.
        (aarch64_gen_ccmp_first): Use cmp pattern directly.  Return the correct
        comparison with CC register to be used in folowing CCMP/branch/CSEL.
        (aarch64_gen_ccmp_next): Use previous comparison and mode in CCMP
        pattern.  Return the comparison with CC register.  Invert conditions
        when bitcode is OR.
        * config/aarch64/aarch64-modes.def: Remove CC_DNE/* modes.
        * config/aarch64/predicates.md (ccmp_cc_register): Remove.

From-SVN: r232561
gcc/ChangeLog
gcc/ccmp.c
gcc/config/aarch64/aarch64-modes.def
gcc/config/aarch64/aarch64.c
gcc/config/aarch64/aarch64.md
gcc/config/aarch64/predicates.md
gcc/doc/tm.texi
gcc/target.def