diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index ea9f3f42e64279f7dec35d51aa60e2af3ff86e85..95cabdb74f408c82fe5ac4d35822c72b04ac575b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2016-02-24  Marcin Kościelnicki  <koriakin@0x04.net>
+
+	* rs6000-tdep.c (rs6000_frame_cache): Initialize frame and pc to 0
+	to avoid spurious warnings.
+
 2016-02-24  Gary Benson  <gbenson@redhat.com>
 
 	* exec.c (exec_file_locate_attach): Do not attempt to
diff --git a/gdb/rs6000-tdep.c b/gdb/rs6000-tdep.c
index a56b8b638d20a928c0c3bc4e6436dcd9d95b2e8d..d0c56d76cc9513bf88b03e3a4ce276150a1cf5dd 100644
--- a/gdb/rs6000-tdep.c
+++ b/gdb/rs6000-tdep.c
@@ -3209,7 +3209,7 @@ rs6000_frame_cache (struct frame_info *this_frame, void **this_cache)
   enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
   struct rs6000_framedata fdata;
   int wordsize = tdep->wordsize;
-  CORE_ADDR func, pc;
+  CORE_ADDR func = 0, pc = 0;
 
   if ((*this_cache) != NULL)
     return (struct rs6000_frame_cache *) (*this_cache);