+2011-12-11 Patrick Marlier <patrick.marlier@gmail.com>
+
+ * trans-mem.c (ipa_tm_transform_calls_redirect): Do not remove
+ edge.
+
2011-12-10 Richard Henderson <rth@redhat.com>
* config/rs6000/altivec.md (altivec_vmrghb): Rewrite pattern as
--- /dev/null
+// { dg-do compile }
+// { dg-options "-fgnu-tm -O3" }
+
+template<typename _InputIterator, typename _Distance> inline void advance(_InputIterator& __i, _Distance __n)
+ {
+ if (__n > 0)
+ while (__n--)
+ --__i;
+ else
+ --__i;
+ }
+
+void _Rb_tree_increment ();
+
+template<typename _Tp> struct _Rb_tree_iterator
+ {
+ typedef _Rb_tree_iterator<_Tp> iterator;
+
+ iterator& operator--()
+ {
+ _Rb_tree_increment();
+ }
+ };
+
+void update ()
+ {
+ _Rb_tree_iterator<int>::iterator it;
+ __transaction_relaxed
+ {
+ advance (it, 0);
+ }
+ }
+
{
*need_ssa_rename_p |=
ipa_tm_insert_gettmclone_call (node, region, gsi, stmt);
- cgraph_remove_edge (e);
return;
}