gcc/
2016-07-21 Claudiu Zissulescu <[email protected]>
* config/arc/arc.c (arc_ccfsm_post_advance): Handle return
instruction type.
---
gcc/config/arc/arc.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/gcc/config/arc/arc.c b/gcc/config/arc/arc.c
index 7eadb3c..a033dd0 100644
--- a/gcc/config/arc/arc.c
+++ b/gcc/config/arc/arc.c
@@ -4251,9 +4251,8 @@ arc_ccfsm_post_advance (rtx_insn *insn, struct arc_ccfsm
*state)
&& GET_CODE (PATTERN (insn)) != ADDR_VEC
&& GET_CODE (PATTERN (insn)) != ADDR_DIFF_VEC
&& ((type = get_attr_type (insn)) == TYPE_BRANCH
- || (type == TYPE_UNCOND_BRANCH
- /* ??? Maybe should also handle TYPE_RETURN here,
- but we don't have a testcase for that. */
+ || ((type == TYPE_UNCOND_BRANCH
+ || type == TYPE_RETURN)
&& ARC_CCFSM_BRANCH_DELETED_P (state))))
{
if (ARC_CCFSM_BRANCH_DELETED_P (state))
--
1.9.1