author | Lijo George<lijo.x.george@oracle.com> |
Tue, 18 Apr 2017 03:03:20 -0700 | |
branch | s11u3-sru |
changeset 7891 | 95cc369493f9 |
parent 2720 | ce63a14b34c3 |
permissions | -rw-r--r-- |
2720
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
1 |
# 2013-02-07 Stefan Teleman <[email protected]> |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
2 |
# Not everything aligns on 4. |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
3 |
# |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
4 |
# * Fix Solaris alignment. (st) |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
5 |
# |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
6 |
--- gcc-4.7.3/libitm/config/posix/rwlock.h 2011-12-23 17:42:35.000000000 -0800 |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
7 |
+++ gcc-4.7.3/libitm/config/posix/rwlock.h 2013-02-25 14:28:47.945337684 -0800 |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
8 |
@@ -47,10 +47,14 @@ |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
9 |
|
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
10 |
class gtm_rwlock |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
11 |
{ |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
12 |
- pthread_mutex_t mutex; // Held if manipulating any field. |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
13 |
- pthread_cond_t c_readers; // Readers wait here |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
14 |
- pthread_cond_t c_writers; // Writers wait here for writers |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
15 |
- pthread_cond_t c_confirmed_writers; // Writers wait here for readers |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
16 |
+ pthread_mutex_t mutex |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
17 |
+ __attribute__((__aligned__(8))); // Held if manipulating any field. |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
18 |
+ pthread_cond_t c_readers |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
19 |
+ __attribute__((__aligned__(8))); // Readers wait here |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
20 |
+ pthread_cond_t c_writers |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
21 |
+ __attribute__((__aligned__(8))); // Writers wait here for writers |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
22 |
+ pthread_cond_t c_confirmed_writers |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
23 |
+ __attribute__((__aligned__(8))); // Writers wait here for readers |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
24 |
|
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
25 |
static const unsigned a_writer = 1; // An active writer. |
ce63a14b34c3
15823988 SUNBT7205673-12.0 Upgrade GCC to >= 4.7.2
Stefan Teleman <stefan.teleman@oracle.com>
parents:
diff
changeset
|
26 |
static const unsigned w_writer = 2; // The w_writers field != 0 |