On 02/10/2012 01:44 AM, Richard Guenther wrote: > What is the reason to keep a GIMPLE_TRANSACTION stmt after > TM lowering and not lower it to a builtin function call?
Because "real" optimization hasn't happened yet, and we hold out hope that we'll be able to delete stuff as unreachable. Especially all instances of transaction_cancel. > It seems the body is empty after lowering (what's the label thing?) The label is the transaction cancel label. When we finally convert GIMPLE_TRANSACTION a builtin, we'll generate different code layouts with and without a cancel. r~