This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r259070 - in /trunk/gcc: ChangeLog config/nds32...
- From: jasonwucj at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 04 Apr 2018 08:48:57 -0000
- Subject: r259070 - in /trunk/gcc: ChangeLog config/nds32...
Author: jasonwucj
Date: Wed Apr 4 08:48:56 2018
New Revision: 259070
URL: https://gcc.gnu.org/viewcvs?rev=259070&root=gcc&view=rev
Log:
[NDS32] Refine movcc, cmov, cstore and cbranch patterns.
gcc/
* config/nds32/nds32-md-auxiliary.c (nds32_inverse_cond_code,
nds32_cond_code_str, output_cond_branch,
output_cond_branch_compare_zero, nds32_expand_cbranch,
nds32_expand_cstore, nds32_expand_movcc,
nds32_output_cbranchsi4_equality_zero,
nds32_output_cbranchsi4_equality_reg,
nds32_output_cbranchsi4_equality_reg_or_const_int,
nds32_output_cbranchsi4_greater_less_zero: New functions.
* config/nds32/nds32-protos.h (nds32_expand_cbranch,
nds32_expand_cstore, nds32_expand_movcc,
nds32_output_cbranchsi4_equality_zero,
nds32_output_cbranchsi4_equality_reg,
nds32_output_cbranchsi4_equality_reg_or_const_int,
nds32_output_cbranchsi4_greater_less_zero): Declare.
* config/nds32/predicates.md (nds32_movecc_comparison_operator,
nds32_rimm11s_operand): New predicates.
* config/nds32/nds32.h (nds32_expand_result_type): New enum type.
* config/nds32/nds32.md: Rewrite all the branch and conditional move
patterns.
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/nds32/nds32-md-auxiliary.c
trunk/gcc/config/nds32/nds32-protos.h
trunk/gcc/config/nds32/nds32.h
trunk/gcc/config/nds32/nds32.md
trunk/gcc/config/nds32/predicates.md