This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [tree-ssa] PATCH to volatile support


In message <wvlsmpy6x6m.fsf@prospero.boston.redhat.com>, Jason Merrill writes:
 >On Wed, 25 Jun 2003 03:29:39 -0400, Jason Merrill <jason@redhat.com> wrote:
 >
 >> ! 	  /* If there were posteffects after the MODIFY_EXPR, we need a
 >> ! 	     temporary.  We also copy the result of a CALL_EXPR into a
 >> ! 	     temporary; apparently this simplifies dealing with
 >> ! 	     TRY_FINALLY_EXPR somehow.  */
 >> ! 	  if (ret
 >> ! 	      && (ret != last
 >> ! 		  || TREE_CODE (TREE_OPERAND (ret, 1)) == CALL_EXPR))
 >> ! 	    {
 >> ! 	      tree tmp = create_tmp_var (TREE_TYPE (result), "retval");
 >> ! 	      TREE_OPERAND (ret, 0) = tmp;
 >> ! 	      ret = build (MODIFY_EXPR, TREE_TYPE (result), result, tmp);
 >> ! 	    }
 >
 >BTW, Jeff, is this special handling of CALL_EXPR in gimplify_return_expr
 >still necessary now that we force an rhs which can throw into a temporary?
 >I'm guessing not.
I'd guess not as well well, at least the coping of the result of the CALL_EXPR
through a temporary.  I suspect the post effects stuff would probably still
be needed though.

jeff

jeff


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]