This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
This test case, simplified from libgfortran, currently results in a tail call to pthread_mutex_unlock on i686 with -fpic, and is the cause of all the libgomp fortran failures on the branch. That this isn't seen on mainline is simply a consequence of not using any threadded fortran code on mainline. That targetm.binds_local_p is no longer reliable is a serious bug. And unless GeoffK can be convinced that the current setting of TREE_PUBLIC is in fact ON, then we'll have to audit every single use of that symbol, and determine if it actually should be testing targetm.binds_local_p, or some new predicate yet to be determined. r~ typedef struct pthread_mutex_tag pthread_mutex_t; extern int pthread_mutex_unlock (pthread_mutex_t *__mutex) __attribute__ ((__nothrow__)); static __typeof(pthread_mutex_unlock) __gthrw_pthread_mutex_unlock __attribute__ ((__weakref__("pthread_mutex_unlock"))); void foo(pthread_mutex_t *m) { __gthrw_pthread_mutex_unlock (m); }
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |