[Bug middle-end/45292] [4.5/4.6 regression] libgomp test failures for i586-linux
hjl dot tools at gmail dot com
gcc-bugzilla@gcc.gnu.org
Mon Aug 16 05:19:00 GMT 2010
------- Comment #6 from hjl dot tools at gmail dot com 2010-08-16 05:18 -------
-mtune=i586 miscompiled gomp_barrier_handle_tasks which
has a loop and calls:
static inline void gomp_mutex_lock (gomp_mutex_t *mutex)
{
if (!__sync_bool_compare_and_swap (mutex, 0, 1))
gomp_mutex_lock_slow (mutex);
}
setcc was moved out of loop. But for multi-thread
applications, __sync_bool_compare_and_swap may change
CC even if current thread doesn't change anything.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45292
More information about the Gcc-bugs
mailing list