objc-act.c (build_objc_method_call): Save the lookup_object so we do not call it twice.

2004-06-24  Andrew Pinski  <apinski@apple.com>

        * objc-act.c (build_objc_method_call): Save the lookup_object
        so we do not call it twice.

From-SVN: r83618
This commit is contained in:
Andrew Pinski 2004-06-24 22:52:42 +00:00 committed by Andrew Pinski
parent 500b9b49b2
commit c63817711e
2 changed files with 10 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2004-06-24 Andrew Pinski <apinski@apple.com>
* objc-act.c (build_objc_method_call): Save the lookup_object
so we do not call it twice.
2004-06-24 Richard Henderson <rth@redhat.com>
* tree-ssa-dom.c (real_avail_expr_hash): New.

View File

@ -5869,6 +5869,9 @@ build_objc_method_call (int super_flag, tree method_prototype,
tree method, t;
lookup_object = build_c_cast (rcv_p, lookup_object);
/* Use SAVE_EXPR to avoid evaluating the receiver twice. */
lookup_object = save_expr (lookup_object);
if (flag_next_runtime)
{
@ -5895,9 +5898,8 @@ build_objc_method_call (int super_flag, tree method_prototype,
tree object;
/* First, call the lookup function to get a pointer to the method,
then cast the pointer, then call it with the method arguments.
Use SAVE_EXPR to avoid evaluating the receiver twice. */
lookup_object = save_expr (lookup_object);
then cast the pointer, then call it with the method arguments. */
object = (super_flag ? self_decl : lookup_object);
t = tree_cons (NULL_TREE, selector, NULL_TREE);