From e2194a8b39251497d770abf3fb6ee06de6072ed9 Mon Sep 17 00:00:00 2001
From: Richard Biener <rguenther@suse.de>
Date: Mon, 29 Nov 2021 12:24:30 +0100
Subject: [PATCH] Fix RTL FE issue with premature return

This fixes an issue discovered by -Wunreachable-code-return

2021-11-29  Richard Biener  <rguenther@suse.de>

	* read-rtl-function.c (function_reader::read_rtx_operand):
	Return only after resetting m_in_call_function_usage.
---
 gcc/read-rtl-function.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/read-rtl-function.c b/gcc/read-rtl-function.c
index 5699f574a376..81d7531ce472 100644
--- a/gcc/read-rtl-function.c
+++ b/gcc/read-rtl-function.c
@@ -886,8 +886,9 @@ function_reader::read_rtx_operand (rtx x, int idx)
       if (idx == 7 && CALL_P (x))
 	{
 	  m_in_call_function_usage = true;
-	  return rtx_reader::read_rtx_operand (x, idx);
+	  rtx tem = rtx_reader::read_rtx_operand (x, idx);
 	  m_in_call_function_usage = false;
+	  return tem;
 	}
       else
 	return rtx_reader::read_rtx_operand (x, idx);
-- 
GitLab