162 "handles.") \ |
162 "handles.") \ |
163 \ |
163 \ |
164 product(bool, ZapMemory, false, "Write 0x0101... to empty memory." \ |
164 product(bool, ZapMemory, false, "Write 0x0101... to empty memory." \ |
165 " Use this to ease debugging.") \ |
165 " Use this to ease debugging.") \ |
166 \ |
166 \ |
167 /* Use Restricted Transactional Memory for lock eliding */ \ |
167 /* Use Restricted Transactional Memory for lock elision */ \ |
168 product(bool, UseRTMLocking, false, \ |
168 product(bool, UseRTMLocking, false, \ |
169 "Enable RTM lock eliding for inflated locks in compiled code") \ |
169 "Enable RTM lock eliding for inflated locks in compiled code") \ |
170 \ |
170 \ |
171 experimental(bool, UseRTMForStackLocks, false, \ |
171 experimental(bool, UseRTMForStackLocks, false, \ |
172 "Enable RTM lock eliding for stack locks in compiled code") \ |
172 "Enable RTM lock eliding for stack locks in compiled code") \ |
173 \ |
173 \ |
174 product(bool, UseRTMDeopt, false, \ |
174 product(bool, UseRTMDeopt, false, \ |
175 "Perform deopt and recompilation based on RTM abort ratio") \ |
175 "Perform deopt and recompilation based on RTM abort ratio") \ |
176 \ |
176 \ |
177 product(uintx, RTMRetryCount, 5, \ |
177 product(int, RTMRetryCount, 5, \ |
178 "Number of RTM retries on lock abort or busy") \ |
178 "Number of RTM retries on lock abort or busy") \ |
179 \ |
179 range(0, max_jint) \ |
180 experimental(intx, RTMSpinLoopCount, 100, \ |
180 \ |
|
181 experimental(int, RTMSpinLoopCount, 100, \ |
181 "Spin count for lock to become free before RTM retry") \ |
182 "Spin count for lock to become free before RTM retry") \ |
182 \ |
183 range(0, 32767) /* immediate operand limit on ppc */ \ |
183 experimental(intx, RTMAbortThreshold, 1000, \ |
184 \ |
|
185 experimental(int, RTMAbortThreshold, 1000, \ |
184 "Calculate abort ratio after this number of aborts") \ |
186 "Calculate abort ratio after this number of aborts") \ |
185 \ |
187 range(0, max_jint) \ |
186 experimental(intx, RTMLockingThreshold, 10000, \ |
188 \ |
|
189 experimental(int, RTMLockingThreshold, 10000, \ |
187 "Lock count at which to do RTM lock eliding without " \ |
190 "Lock count at which to do RTM lock eliding without " \ |
188 "abort ratio calculation") \ |
191 "abort ratio calculation") \ |
189 \ |
192 range(0, max_jint) \ |
190 experimental(intx, RTMAbortRatio, 50, \ |
193 \ |
|
194 experimental(int, RTMAbortRatio, 50, \ |
191 "Lock abort ratio at which to stop use RTM lock eliding") \ |
195 "Lock abort ratio at which to stop use RTM lock eliding") \ |
192 \ |
196 range(0, 100) /* natural range, checked in vm_version_ppc.cpp */ \ |
193 experimental(intx, RTMTotalCountIncrRate, 64, \ |
197 \ |
|
198 experimental(int, RTMTotalCountIncrRate, 64, \ |
194 "Increment total RTM attempted lock count once every n times") \ |
199 "Increment total RTM attempted lock count once every n times") \ |
|
200 range(1, 32767) /* immediate operand limit on ppc */ \ |
195 \ |
201 \ |
196 experimental(intx, RTMLockingCalculationDelay, 0, \ |
202 experimental(intx, RTMLockingCalculationDelay, 0, \ |
197 "Number of milliseconds to wait before start calculating aborts " \ |
203 "Number of milliseconds to wait before start calculating aborts " \ |
198 "for RTM locking") \ |
204 "for RTM locking") \ |
199 \ |
205 \ |