aboutsummaryrefslogtreecommitdiff
path: root/fixincludes/inclhack.def
diff options
context:
space:
mode:
authorUros Bizjak <uros@kss-loka.si>2006-10-03 07:52:05 +0200
committerUros Bizjak <uros@gcc.gnu.org>2006-10-03 07:52:05 +0200
commit4d98def06f2eb0fe9169d6d61f907fda91d33ea4 (patch)
tree00c426b2364c9235ae1659b9df36e06c02cd0647 /fixincludes/inclhack.def
parent6aacba37551b5235eb7958186c308337cfba8a0c (diff)
downloadgcc-4d98def06f2eb0fe9169d6d61f907fda91d33ea4.zip
gcc-4d98def06f2eb0fe9169d6d61f907fda91d33ea4.tar.gz
gcc-4d98def06f2eb0fe9169d6d61f907fda91d33ea4.tar.bz2
inclhack.def (glibc_mutex_init): Also fix PTHREAD_MUTEX_(RECURSIVE|ERRORCHECK|ADAPTIVE)_NP and...
* inclhack.def (glibc_mutex_init): Also fix PTHREAD_MUTEX_(RECURSIVE|ERRORCHECK|ADAPTIVE)_NP and PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP initializers. From-SVN: r117386
Diffstat (limited to 'fixincludes/inclhack.def')
-rw-r--r--fixincludes/inclhack.def43
1 files changed, 37 insertions, 6 deletions
diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def
index 04c6ef5..a1cdab1 100644
--- a/fixincludes/inclhack.def
+++ b/fixincludes/inclhack.def
@@ -1298,6 +1298,8 @@ fix = {
select = '\{ *\{ *0, *\} *\}';
sed = "/define[ \t]\\+PTHREAD_MUTEX_INITIALIZER[ \t]*\\\\/,+1"
"s/{ { 0, } }/{ { 0, 0, 0, 0, 0, 0 } }/";
+ sed = "s/{ \\(0, 0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\|ERRORCHECK\\|ADAPTIVE\\)_NP\\) }/{ \\1, 0 }/";
+ sed = "s/{ \\(0, 0, 0, PTHREAD_MUTEX_\\(RECURSIVE\\|ERRORCHECK\\|ADAPTIVE\\)_NP\\) }/{ \\1, 0, 0 }/";
sed = "/define[ \t]\\+PTHREAD_RWLOCK_INITIALIZER[ \t]*\\\\/"
"N;s/^[ \t]*#[ \t]*"
"\\(define[ \t]\\+PTHREAD_RWLOCK_INITIALIZER[ \t]*\\\\\\)\\n"
@@ -1308,15 +1310,44 @@ fix = {
"# \\1\\n"
" { { 0, 0, 0, 0, 0, 0, 0, 0 } }\\n"
"# endif/";
+ sed = "s/{ \\(0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP\\) }/{ \\1, 0 }/";
sed = "/define[ \t]\\+PTHREAD_COND_INITIALIZER/"
"s/{ { 0, } }/{ { 0, 0, 0, 0, 0, (void *) 0, 0, 0 } }/";
- test_text =
- "#define PTHREAD_MUTEX_INITIALIZER \\\\\n"
- " { { 0, } }\n"
- "# define PTHREAD_RWLOCK_INITIALIZER \\\\\n"
- " { { 0, } }\n"
- "#define PTHREAD_COND_INITIALIZER { { 0, } }";
+ test_text = <<- _EOText_
+#define PTHREAD_MUTEX_INITIALIZER \\
+ { { 0, } }
+#ifdef __USE_GNU
+# if __WORDSIZE == 64
+# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \\
+ { { 0, 0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP } }
+# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \\
+ { { 0, 0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP } }
+# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \\
+ { { 0, 0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP } }
+# else
+# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \\
+ { { 0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP } }
+# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \\
+ { { 0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP } }
+# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \\
+ { { 0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP } }
+# endif
+#endif
+# define PTHREAD_RWLOCK_INITIALIZER \\
+ { { 0, } }
+# ifdef __USE_GNU
+# if __WORDSIZE == 64
+# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \\
+ { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \\
+ PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP } }
+# else
+# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \\
+ { { 0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP } }
+# endif
+# endif
+#define PTHREAD_COND_INITIALIZER { { 0, } }
+_EOText_;
};