From mboxrd@z Thu Jan 1 00:00:00 1970 From: pbonzini@redhat.com (Paolo Bonzini) Date: Tue, 15 Jun 2010 10:52:23 +0200 Subject: [ltt-dev] [PATCH] fix the "unknown" case In-Reply-To: <20100614182557.GC2338@linux.vnet.ibm.com> References: <20100610225242.GA21978@linux.vnet.ibm.com> <20100611014631.GA13838@Krystal> <20100611171613.GD2394@linux.vnet.ibm.com> <20100613212033.GF5427@Krystal> <20100613212807.GF2428@linux.vnet.ibm.com> <4C16612B.8040103@redhat.com> <20100614182557.GC2338@linux.vnet.ibm.com> Message-ID: <4C173F47.1070809@redhat.com> On 06/14/2010 08:25 PM, Paul E. McKenney wrote: >> Anyway, a simple configure test is to compile this with -fdump-rtl-expand: >> >> int >> f() >> { >> __sync_synchronize(); >> } >> >> If the assembly output includes "__sync_synchronize", or the dump >> file includes the text "unspec:BLK", it should be fine. In >> particular, ia64, mips, and Alpha are ok. Else you can use the >> pthreads trick. I can try to make a patch if you're interested. >> Or, more simply, it's possible to hardcode the above three platforms >> since it's unlikely that others will be added soon. > > And I attached the input file, the .expand file, and the .s file. > > I see neither __sync_synchronize in the .s file nor "unspec" in the > .expand file. Or was I confused about what to look for? No, the __sync_synchronize instruction is optimized out. I think I'll make GCC 4.6+ give a warning. Paolo