summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/emit-rtl.c1
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2cfb60a0cf0..213846d78d9 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2010-10-04 Joern Rennecke <amylaar@spamcop.net>
+
+ PR middle-end/44765
+ * emit-rtl.c (gen_rtx_REG): Before using PIC_OFFSET_TABLE_REGNUM
+ as an index, check it is not INVALID_REGNUM.
+
2010-11-04 Ira Rosen <irar@il.ibm.com>
PR tree-optimization/46213
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c
index eb4ea2a97d8..60fe39b1ebf 100644
--- a/gcc/emit-rtl.c
+++ b/gcc/emit-rtl.c
@@ -603,6 +603,7 @@ gen_rtx_REG (enum machine_mode mode, unsigned int regno)
return return_address_pointer_rtx;
#endif
if (regno == (unsigned) PIC_OFFSET_TABLE_REGNUM
+ && PIC_OFFSET_TABLE_REGNUM != INVALID_REGNUM
&& fixed_regs[PIC_OFFSET_TABLE_REGNUM])
return pic_offset_table_rtx;
if (regno == STACK_POINTER_REGNUM)