Commit 34311c5e by Eric Botcazou Committed by Eric Botcazou

visium.c (visium_select_cc_mode): Return CCmode for any RTX present on the RHS of a SET.

	* config/visium/visium.c (visium_select_cc_mode): Return CCmode
	for any RTX present on the RHS of a SET.
	* compare-elim.c (try_eliminate_compare): Restore comment.

From-SVN: r253830
parent 8e7014b4
2017-10-17 Eric Botcazou <ebotcazou@adacore.com>
* config/visium/visium.c (visium_select_cc_mode): Return CCmode for
any RTX present on the RHS of a SET.
* compare-elim.c (try_eliminate_compare): Restore comment.
2017-10-17 Jakub Jelinek <jakub@redhat.com> 2017-10-17 Jakub Jelinek <jakub@redhat.com>
* langhooks.h (struct lang_hooks): Document that tree_size langhook * langhooks.h (struct lang_hooks): Document that tree_size langhook
...@@ -729,6 +729,7 @@ try_eliminate_compare (struct comparison *cmp) ...@@ -729,6 +729,7 @@ try_eliminate_compare (struct comparison *cmp)
if (try_merge_compare (cmp)) if (try_merge_compare (cmp))
return true; return true;
/* We must have found an interesting "clobber" preceding the compare. */
if (cmp->prev_clobber == NULL) if (cmp->prev_clobber == NULL)
return false; return false;
......
...@@ -2938,12 +2938,6 @@ visium_select_cc_mode (enum rtx_code code, rtx op0, rtx op1) ...@@ -2938,12 +2938,6 @@ visium_select_cc_mode (enum rtx_code code, rtx op0, rtx op1)
/* This is a btst, the result is in C instead of Z. */ /* This is a btst, the result is in C instead of Z. */
return CCCmode; return CCCmode;
case CONST_INT:
/* This is a degenerate case, typically an uninitialized variable. */
gcc_assert (op0 == constm1_rtx);
/* ... fall through ... */
case REG: case REG:
case AND: case AND:
case IOR: case IOR:
...@@ -2960,6 +2954,17 @@ visium_select_cc_mode (enum rtx_code code, rtx op0, rtx op1) ...@@ -2960,6 +2954,17 @@ visium_select_cc_mode (enum rtx_code code, rtx op0, rtx op1)
when applied to a comparison with zero. */ when applied to a comparison with zero. */
return CCmode; return CCmode;
/* ??? Cater to the junk RTXes sent by try_merge_compare. */
case ASM_OPERANDS:
case CALL:
case CONST_INT:
case LO_SUM:
case HIGH:
case MEM:
case UNSPEC:
case ZERO_EXTEND:
return CCmode;
default: default:
gcc_unreachable (); gcc_unreachable ();
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment