From 9a28c8460662b1cfee787f039a33cf45e5fe843f Mon Sep 17 00:00:00 2001
From: bergner <bergner@138bc75d-0d04-0410-961f-82ee72b054a4>
Date: Fri, 22 Sep 2006 13:42:51 +0000
Subject: [PATCH] Set REG_POINTER flag according to MEM_POINTER flag.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@117143 138bc75d-0d04-0410-961f-82ee72b054a4
---
 gcc/ChangeLog | 6 ++++++
 gcc/explow.c  | 2 ++
 2 files changed, 8 insertions(+)

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 311f26bd4273..190d3873bd73 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2006-09-22  Peter Bergner <bergner@vnet.ibm.com>
+
+	PR middle-end/28690
+	* explow.c (force_reg): Set REG_POINTER flag according to
+	MEM_POINTER flag.
+
 2006-09-22  Zdenek Dvorak <dvorakz@suse.cz>
 
 	PR tree-optimization/28888
diff --git a/gcc/explow.c b/gcc/explow.c
index 2cc34899197f..e21e9c112ecb 100644
--- a/gcc/explow.c
+++ b/gcc/explow.c
@@ -710,6 +710,8 @@ force_reg (enum machine_mode mode, rtx x)
 
 	align = MIN (sa, ca);
       }
+    else if (MEM_P (x) && MEM_POINTER (x))
+      align = MEM_ALIGN (x);
 
     if (align)
       mark_reg_pointer (temp, align);
-- 
GitLab