From f6d65153a64dfc4d0b65b8a5a1a7673964a4b0fb Mon Sep 17 00:00:00 2001
From: Steve Ellcey <sje@cup.hp.com>
Date: Fri, 3 Mar 2006 16:43:43 +0000
Subject: [PATCH] re PR rtl-optimization/26345 (-fmove-loop-invariants loses
 POINTER attribute)

	PR rtl-optimization/26345
	PR target/19061
	* config/ia64/predicates.md (basereg_operand): Don't look in subregs.

From-SVN: r111678
---
 gcc/ChangeLog                 | 6 ++++++
 gcc/config/ia64/predicates.md | 4 +---
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 464b36dcfb54..4312f1f5c0ba 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2006-03-03  Steve Ellcey  <sje@cup.hp.com>
+
+	PR rtl-optimization/26345
+	PR target/19061
+	* config/ia64/predicates.md (basereg_operand): Don't look in subregs.
+
 2006-03-03  Roger Sayle  <roger@eyesopen.com>
 
 	PR tree-optimization/26524
diff --git a/gcc/config/ia64/predicates.md b/gcc/config/ia64/predicates.md
index ec0f8c318314..657c1501ddbe 100644
--- a/gcc/config/ia64/predicates.md
+++ b/gcc/config/ia64/predicates.md
@@ -586,8 +586,6 @@
 (define_predicate "basereg_operand"
   (match_operand 0 "register_operand")
 {
-  if (GET_CODE (op) == SUBREG)
-    op = SUBREG_REG (op);
-  return REG_POINTER (op);
+  return REG_P (op) && REG_POINTER (op);
 })
 
-- 
GitLab