Sophie

Sophie

distrib > Mageia > 5 > i586 > by-pkgid > b7b8b32bb04bd446e18064781a60a954 > files > 24

gcc-4.9.2-4.1.mga5.src.rpm

From 9a043d4edc2a8c9c3787be87ca8d4e4d7c29be9f Mon Sep 17 00:00:00 2001
From: unknown author <cooker@mandrivalinux.org>
Date: Tue, 10 Feb 2009 15:47:48 +0000
Subject: gcc33 pr9929 testcase

2003-04-06  Jan Hubicka  <jh@suse.cz>

	PR target/9929
	* reload.c (find_reloads_toplev):  Remove now redundant alternative
	(find_reloads_address_1): Synchronize handling of subregs with
	find_reloads_toplev;  Always reload whole subreg when the inner
	value requires more registers.
---
 gcc/testsuite/gcc.dg/20030721-2.c |   16 ++++++++++++++++
 1 files changed, 16 insertions(+), 0 deletions(-)
 create mode 100644 gcc/testsuite/gcc.dg/20030721-2.c

diff --git a/gcc/testsuite/gcc.dg/20030721-2.c b/gcc/testsuite/gcc.dg/20030721-2.c
new file mode 100644
index 0000000..d1f618f
--- /dev/null
+++ b/gcc/testsuite/gcc.dg/20030721-2.c
@@ -0,0 +1,16 @@
+/* PR target/9929 */
+/* { dg-do compile } */
+/* { dg-options "-O -fPIC" } */
+
+typedef struct X {
+  char * ptr;
+  int    offset;
+} X_t;
+
+X_t foo(X_t *d1, char * A0);
+
+void bar() {
+  X_t l1, l2, l3;
+  l3 = foo(&l1, l2.ptr);
+  (*(X_t *)(l2.ptr + l3.offset)) = l1;
+}
-- 
1.6.2.4