Hi, 2015-12-07 8:20 GMT+01:00 Tobias Burnus <bur...@net-b.de>: > Always - or only with optimization? >
Only with optimization. > I wonder whether using > > __asm__ __volatile__ ("":::"memory"); > > would be sufficient as it has a way lower overhead than > __sync_synchronize(). > > > That would be something like: > > r = build_stmt (input_location, ASM_EXPR, string, > output_operands, input_operands, > clobbers, labels); > ASM_VOLATILE_P (r) = 1; > > with string = "", output_operands = NULL_TREE, input_operands = NULL_TREE, > clobbers = "memory" and labels = NULL_TREE. (Except that string+clobbers > are trees and not char[].) > I'm going to try it. Thanks.