diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 251141d14fb21c6fa9420778350b9603f5db5f4a..59fbd3471967595aaf120fddf265e96c88d4626b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,14 @@
+2007-09-05  Jan Hubicka  <jh@suse.cz>
+
+	Revert:
+
+	2007-09-04  Jan Hubicka  <jh@suse.cz>
+	* tree-tailcall.c (eliminate_tail_call): Expect unrenamed return value.
+
+	2007-09-04  Richard Guenther  <rguenther@suse.de>
+	* tree-ssa-operands.c (add_virtual_operand): Only mark
+	stores as has_volatile_ops if alias information is not available.
+
 2007-09-05  Jakub Jelinek  <jakub@redhat.com>
 
 	* config/rs6000/tramp.asm: Include config.h.
diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c
index b01dd9952354f633705c0df07bd178c38645dc23..4996e09e8549602921b01a9f375b0b20358638e9 100644
--- a/gcc/tree-ssa-operands.c
+++ b/gcc/tree-ssa-operands.c
@@ -1494,8 +1494,7 @@ add_virtual_operand (tree var, stmt_ann_t s_ann, int flags,
 
   if (aliases == NULL)
     {
-      if (!gimple_aliases_computed_p (cfun)
-	  && (flags & opf_def))
+      if (!gimple_aliases_computed_p (cfun))
         s_ann->has_volatile_ops = true;
 
       /* The variable is not aliased or it is an alias tag.  */
diff --git a/gcc/tree-tailcall.c b/gcc/tree-tailcall.c
index 3e15b1b6ae0339fd457513ee3502c93f53dfc6ba..8651b60fc0d8f4de77cb7cf0eba16357d6a0796d 100644
--- a/gcc/tree-tailcall.c
+++ b/gcc/tree-tailcall.c
@@ -800,8 +800,7 @@ eliminate_tail_call (struct tailcall *t)
 
       /* Result of the call will no longer be defined.  So adjust the
 	 SSA_NAME_DEF_STMT accordingly.  */
-      if (TREE_CODE (rslt) == SSA_NAME)
-        SSA_NAME_DEF_STMT (rslt) = build_empty_stmt ();
+      SSA_NAME_DEF_STMT (rslt) = build_empty_stmt ();
     }
 
   bsi_remove (&t->call_bsi, true);