Mercurial > hg > truffle
comparison src/share/vm/utilities/bitMap.cpp @ 14379:c66479743828
Merge
author | hseigel |
---|---|
date | Sat, 15 Feb 2014 14:41:04 -0500 |
parents | 3dc1055f4e87 |
children | 8a9bb7821e28 |
comparison
equal
deleted
inserted
replaced
14378:48314d596a04 | 14379:c66479743828 |
---|---|
105 intptr_t mr = (intptr_t)inverted_bit_mask_for_range(beg, end); | 105 intptr_t mr = (intptr_t)inverted_bit_mask_for_range(beg, end); |
106 intptr_t nw = value ? (w | ~mr) : (w & mr); | 106 intptr_t nw = value ? (w | ~mr) : (w & mr); |
107 while (true) { | 107 while (true) { |
108 intptr_t res = Atomic::cmpxchg_ptr(nw, pw, w); | 108 intptr_t res = Atomic::cmpxchg_ptr(nw, pw, w); |
109 if (res == w) break; | 109 if (res == w) break; |
110 w = *pw; | 110 w = res; |
111 nw = value ? (w | ~mr) : (w & mr); | 111 nw = value ? (w | ~mr) : (w & mr); |
112 } | 112 } |
113 } | 113 } |
114 } | 114 } |
115 | 115 |