Patchwork [trans-mem] handle invisible references for decls (PR/47554)

login
register
mail settings
Submitter Aldy Hernandez
Date Feb. 7, 2011, 7:13 p.m.
Message ID <4D504445.9080606@redhat.com>
Download mbox | patch
Permalink /patch/82124/
State New
Headers show

Comments

Aldy Hernandez - Feb. 7, 2011, 7:13 p.m.
>> I sincerely believe that the test in aggregate_value_p is a mistake.
>> We should not be lying about the fact that this value is a pointer.
>> But looking at how DECL_BY_REFERENCE is used elsewhere, it'll be a
>> hard one to unravel.  And that certainly should not be done on this
>> branch.
>
> Hm, I think we fixed this on trunk and DECL_BY_REFERENCE result-decls
> are now even in SSA form.

Thanks Richi.  I have put a note on the source to double check the 
existence of this failure after the next (long over due) merge.

Committed as obvious.

Aldy
* trans-mem.c (requires_barrier): Add comment.

Patch

Index: trans-mem.c
===================================================================
--- trans-mem.c	(revision 169838)
+++ trans-mem.c	(working copy)
@@ -1471,7 +1471,11 @@  requires_barrier (basic_block entry_bloc
 	{
 	  /* ??? This value is a pointer, but aggregate_value_p has been
 	     jigged to return true which confuses needs_to_live_in_memory.
-	     This ought to be cleaned up generically.  */
+	     This ought to be cleaned up generically.
+
+	     FIXME: Verify this still happens after the next mainline
+	     merge.  Testcase ie g++.dg/tm/pr47554.C.
+	  */
 	  return false;
 	}