--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.cpp Thu Dec 05 12:49:55 2013 -0800
@@ -89,6 +89,27 @@
_supports_cx8 = has_v9();
_supports_atomic_getset4 = true; // swap instruction
+ // There are Fujitsu Sparc64 CPUs which support blk_init as well so
+ // we have to take this check out of the 'is_niagara()' block below.
+ if (has_blk_init()) {
+ // When using CMS or G1, we cannot use memset() in BOT updates
+ // because the sun4v/CMT version in libc_psr uses BIS which
+ // exposes "phantom zeros" to concurrent readers. See 6948537.
+ if (FLAG_IS_DEFAULT(UseMemSetInBOT) && (UseConcMarkSweepGC || UseG1GC)) {
+ FLAG_SET_DEFAULT(UseMemSetInBOT, false);
+ }
+ // Issue a stern warning if the user has explicitly set
+ // UseMemSetInBOT (it is known to cause issues), but allow
+ // use for experimentation and debugging.
+ if (UseConcMarkSweepGC || UseG1GC) {
+ if (UseMemSetInBOT) {
+ assert(!FLAG_IS_DEFAULT(UseMemSetInBOT), "Error");
+ warning("Experimental flag -XX:+UseMemSetInBOT is known to cause instability"
+ " on sun4v; please understand that you are using at your own risk!");
+ }
+ }
+ }
+
if (is_niagara()) {
// Indirect branch is the same cost as direct
if (FLAG_IS_DEFAULT(UseInlineCaches)) {
@@ -98,12 +119,6 @@
if (FLAG_IS_DEFAULT(OptoLoopAlignment)) {
FLAG_SET_DEFAULT(OptoLoopAlignment, 4);
}
- // When using CMS or G1, we cannot use memset() in BOT updates
- // because the sun4v/CMT version in libc_psr uses BIS which
- // exposes "phantom zeros" to concurrent readers. See 6948537.
- if (FLAG_IS_DEFAULT(UseMemSetInBOT) && (UseConcMarkSweepGC || UseG1GC)) {
- FLAG_SET_DEFAULT(UseMemSetInBOT, false);
- }
#ifdef _LP64
// 32-bit oops don't make sense for the 64-bit VM on sparc
// since the 32-bit VM has the same registers and smaller objects.
--- a/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/src/cpu/sparc/vm/vm_version_sparc.hpp Thu Dec 05 12:49:55 2013 -0800
@@ -94,7 +94,13 @@
static bool is_M_family(int features) { return (features & M_family_m) != 0; }
static bool is_T_family(int features) { return (features & T_family_m) != 0; }
static bool is_niagara() { return is_T_family(_features); }
- DEBUG_ONLY( static bool is_niagara(int features) { return (features & sun4v_m) != 0; } )
+#ifdef ASSERT
+ static bool is_niagara(int features) {
+ // 'sun4v_m' may be defined on both Sun/Oracle Sparc CPUs as well as
+ // on Fujitsu Sparc64 CPUs, but only Sun/Oracle Sparcs can be 'niagaras'.
+ return (features & sun4v_m) != 0 && (features & sparc64_family_m) == 0;
+ }
+#endif
// Returns true if it is niagara1 (T1).
static bool is_T1_model(int features) { return is_T_family(features) && ((features & T1_model_m) != 0); }
--- a/hotspot/src/cpu/x86/vm/c1_Runtime1_x86.cpp Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/src/cpu/x86/vm/c1_Runtime1_x86.cpp Thu Dec 05 12:49:55 2013 -0800
@@ -1719,10 +1719,12 @@
BarrierSet* bs = Universe::heap()->barrier_set();
CardTableModRefBS* ct = (CardTableModRefBS*)bs;
+ assert(sizeof(*ct->byte_map_base) == sizeof(jbyte), "adjust this code");
+
Label done;
Label runtime;
- // At this point we know new_value is non-NULL and the new_value crosses regsion.
+ // At this point we know new_value is non-NULL and the new_value crosses regions.
// Must check to see if card is already dirty
const Register thread = NOT_LP64(rax) LP64_ONLY(r15_thread);
@@ -1735,26 +1737,17 @@
__ push(rax);
__ push(rcx);
- NOT_LP64(__ get_thread(thread);)
- ExternalAddress cardtable((address)ct->byte_map_base);
- assert(sizeof(*ct->byte_map_base) == sizeof(jbyte), "adjust this code");
+ const Register cardtable = rax;
+ const Register card_addr = rcx;
- const Register card_addr = rcx;
-#ifdef _LP64
- const Register tmp = rscratch1;
f.load_argument(0, card_addr);
- __ shrq(card_addr, CardTableModRefBS::card_shift);
- __ lea(tmp, cardtable);
- // get the address of the card
- __ addq(card_addr, tmp);
-#else
- const Register card_index = rcx;
- f.load_argument(0, card_index);
- __ shrl(card_index, CardTableModRefBS::card_shift);
+ __ shrptr(card_addr, CardTableModRefBS::card_shift);
+ // Do not use ExternalAddress to load 'byte_map_base', since 'byte_map_base' is NOT
+ // a valid address and therefore is not properly handled by the relocation code.
+ __ movptr(cardtable, (intptr_t)ct->byte_map_base);
+ __ addptr(card_addr, cardtable);
- Address index(noreg, card_index, Address::times_1);
- __ leal(card_addr, __ as_Address(ArrayAddress(cardtable, index)));
-#endif
+ NOT_LP64(__ get_thread(thread);)
__ cmpb(Address(card_addr, 0), (int)G1SATBCardTableModRefBS::g1_young_card_val());
__ jcc(Assembler::equal, done);
--- a/hotspot/src/cpu/x86/vm/macroAssembler_x86.cpp Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/src/cpu/x86/vm/macroAssembler_x86.cpp Thu Dec 05 12:49:55 2013 -0800
@@ -3354,6 +3354,8 @@
BarrierSet* bs = Universe::heap()->barrier_set();
CardTableModRefBS* ct = (CardTableModRefBS*)bs;
+ assert(sizeof(*ct->byte_map_base) == sizeof(jbyte), "adjust this code");
+
Label done;
Label runtime;
@@ -3371,28 +3373,16 @@
// storing region crossing non-NULL, is card already dirty?
- ExternalAddress cardtable((address) ct->byte_map_base);
- assert(sizeof(*ct->byte_map_base) == sizeof(jbyte), "adjust this code");
-#ifdef _LP64
const Register card_addr = tmp;
-
- movq(card_addr, store_addr);
- shrq(card_addr, CardTableModRefBS::card_shift);
-
- lea(tmp2, cardtable);
-
- // get the address of the card
- addq(card_addr, tmp2);
-#else
- const Register card_index = tmp;
-
- movl(card_index, store_addr);
- shrl(card_index, CardTableModRefBS::card_shift);
-
- Address index(noreg, card_index, Address::times_1);
- const Register card_addr = tmp;
- lea(card_addr, as_Address(ArrayAddress(cardtable, index)));
-#endif
+ const Register cardtable = tmp2;
+
+ movptr(card_addr, store_addr);
+ shrptr(card_addr, CardTableModRefBS::card_shift);
+ // Do not use ExternalAddress to load 'byte_map_base', since 'byte_map_base' is NOT
+ // a valid address and therefore is not properly handled by the relocation code.
+ movptr(cardtable, (intptr_t)ct->byte_map_base);
+ addptr(card_addr, cardtable);
+
cmpb(Address(card_addr, 0), (int)G1SATBCardTableModRefBS::g1_young_card_val());
jcc(Assembler::equal, done);
@@ -3416,7 +3406,7 @@
movq(Address(tmp2, 0), card_addr);
#else
addl(tmp2, queue_index);
- movl(Address(tmp2, 0), card_index);
+ movl(Address(tmp2, 0), card_addr);
#endif
jmp(done);
@@ -3468,25 +3458,19 @@
// The calculation for byte_map_base is as follows:
// byte_map_base = _byte_map - (uintptr_t(low_bound) >> card_shift);
- // So this essentially converts an address to a displacement and
- // it will never need to be relocated. On 64bit however the value may be too
- // large for a 32bit displacement
-
+ // So this essentially converts an address to a displacement and it will
+ // never need to be relocated. On 64bit however the value may be too
+ // large for a 32bit displacement.
intptr_t disp = (intptr_t) ct->byte_map_base;
if (is_simm32(disp)) {
Address cardtable(noreg, obj, Address::times_1, disp);
movb(cardtable, 0);
} else {
- // By doing it as an ExternalAddress disp could be converted to a rip-relative
- // displacement and done in a single instruction given favorable mapping and
- // a smarter version of as_Address. Worst case it is two instructions which
- // is no worse off then loading disp into a register and doing as a simple
- // Address() as above.
- // We can't do as ExternalAddress as the only style since if disp == 0 we'll
- // assert since NULL isn't acceptable in a reloci (see 6644928). In any case
- // in some cases we'll get a single instruction version.
-
- ExternalAddress cardtable((address)disp);
+ // By doing it as an ExternalAddress 'disp' could be converted to a rip-relative
+ // displacement and done in a single instruction given favorable mapping and a
+ // smarter version of as_Address. However, 'ExternalAddress' generates a relocation
+ // entry and that entry is not properly handled by the relocation code.
+ AddressLiteral cardtable((address)ct->byte_map_base, relocInfo::none);
Address index(noreg, obj, Address::times_1);
movb(as_Address(ArrayAddress(cardtable, index)), 0);
}
--- a/hotspot/src/share/vm/opto/c2_globals.hpp Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/src/share/vm/opto/c2_globals.hpp Thu Dec 05 12:49:55 2013 -0800
@@ -637,7 +637,7 @@
diagnostic(bool, OptimizeExpensiveOps, true, \
"Find best control for expensive operations") \
\
- product(bool, UseMathExactIntrinsics, true, \
+ experimental(bool, UseMathExactIntrinsics, false, \
"Enables intrinsification of various java.lang.Math functions") \
\
experimental(bool, ReplaceInParentMaps, false, \
--- a/hotspot/src/share/vm/runtime/arguments.cpp Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/src/share/vm/runtime/arguments.cpp Thu Dec 05 12:49:55 2013 -0800
@@ -2278,18 +2278,6 @@
status = status && verify_percentage(MarkSweepDeadRatio, "MarkSweepDeadRatio");
status = status && verify_min_value(MarkSweepAlwaysCompactCount, 1, "MarkSweepAlwaysCompactCount");
-#ifdef SPARC
- if (UseConcMarkSweepGC || UseG1GC) {
- // Issue a stern warning if the user has explicitly set
- // UseMemSetInBOT (it is known to cause issues), but allow
- // use for experimentation and debugging.
- if (VM_Version::is_sun4v() && UseMemSetInBOT) {
- assert(!FLAG_IS_DEFAULT(UseMemSetInBOT), "Error");
- warning("Experimental flag -XX:+UseMemSetInBOT is known to cause instability"
- " on sun4v; please understand that you are using at your own risk!");
- }
- }
-#endif // SPARC
if (PrintNMTStatistics) {
#if INCLUDE_NMT
--- a/hotspot/test/compiler/intrinsics/mathexact/AddExactICondTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/AddExactICondTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8024924
* @summary Test non constant addExact
* @compile AddExactICondTest.java
- * @run main AddExactICondTest
+ * @run main AddExactICondTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/AddExactIConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/AddExactIConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8024924
* @summary Test constant addExact
* @compile AddExactIConstantTest.java Verify.java
- * @run main AddExactIConstantTest
+ * @run main AddExactIConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/AddExactILoadTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/AddExactILoadTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8024924
* @summary Test non constant addExact
* @compile AddExactILoadTest.java Verify.java
- * @run main AddExactILoadTest
+ * @run main AddExactILoadTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/AddExactILoopDependentTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/AddExactILoopDependentTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8024924
* @summary Test non constant addExact
* @compile AddExactILoopDependentTest.java Verify.java
- * @run main AddExactILoopDependentTest
+ * @run main AddExactILoopDependentTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/AddExactINonConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/AddExactINonConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8024924
* @summary Test non constant addExact
* @compile AddExactINonConstantTest.java Verify.java
- * @run main AddExactINonConstantTest
+ * @run main AddExactINonConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/AddExactIRepeatTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/AddExactIRepeatTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8025657
* @summary Test repeating addExact
* @compile AddExactIRepeatTest.java Verify.java
- * @run main AddExactIRepeatTest
+ * @run main AddExactIRepeatTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/AddExactLConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/AddExactLConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test constant addExact
* @compile AddExactLConstantTest.java Verify.java
- * @run main AddExactLConstantTest
+ * @run main AddExactLConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/AddExactLNonConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/AddExactLNonConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test non constant addExact
* @compile AddExactLNonConstantTest.java Verify.java
- * @run main AddExactLNonConstantTest
+ * @run main AddExactLNonConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/CompareTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/CompareTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026722
* @summary Verify that the compare after addExact is a signed compare
* @compile CompareTest.java
- * @run main CompareTest
+ * @run main CompareTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/DecExactITest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/DecExactITest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test decrementExact
* @compile DecExactITest.java Verify.java
- * @run main DecExactITest
+ * @run main DecExactITest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/DecExactLTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/DecExactLTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -25,8 +25,8 @@
* @test
* @bug 8026844
* @summary Test decrementExact
- * @compile DecExactITest.java Verify.java
- * @run main DecExactITest
+ * @compile DecExactLTest.java Verify.java
+ * @run main DecExactLTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/GVNTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/GVNTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8028207
* @summary Verify that GVN doesn't mess up the two addExacts
* @compile GVNTest.java
- * @run main GVNTest
+ * @run main GVNTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/IncExactITest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/IncExactITest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test incrementExact
* @compile IncExactITest.java Verify.java
- * @run main IncExactITest
+ * @run main IncExactITest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/IncExactLTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/IncExactLTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test incrementExact
* @compile IncExactLTest.java Verify.java
- * @run main IncExactLTest
+ * @run main IncExactLTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/MulExactICondTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/MulExactICondTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test multiplyExact as condition
* @compile MulExactICondTest.java
- * @run main MulExactICondTest
+ * @run main MulExactICondTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/MulExactIConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/MulExactIConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test constant multiplyExact
* @compile MulExactIConstantTest.java Verify.java
- * @run main MulExactIConstantTest
+ * @run main MulExactIConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/MulExactILoadTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/MulExactILoadTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test multiplyExact
* @compile MulExactILoadTest.java Verify.java
- * @run main MulExactILoadTest
+ * @run main MulExactILoadTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/MulExactILoopDependentTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/MulExactILoopDependentTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test loop dependent multiplyExact
* @compile MulExactILoopDependentTest.java Verify.java
- * @run main MulExactILoopDependentTest
+ * @run main MulExactILoopDependentTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
public class MulExactILoopDependentTest {
--- a/hotspot/test/compiler/intrinsics/mathexact/MulExactINonConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/MulExactINonConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test non constant multiplyExact
* @compile MulExactINonConstantTest.java Verify.java
- * @run main MulExactINonConstantTest
+ * @run main MulExactINonConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/MulExactIRepeatTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/MulExactIRepeatTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test repeating multiplyExact
* @compile MulExactIRepeatTest.java Verify.java
- * @run main MulExactIRepeatTest
+ * @run main MulExactIRepeatTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/MulExactLConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/MulExactLConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test constant mulExact
* @compile MulExactLConstantTest.java Verify.java
- * @run main MulExactLConstantTest
+ * @run main MulExactLConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/MulExactLNonConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/MulExactLNonConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test non constant mulExact
* @compile MulExactLNonConstantTest.java Verify.java
- * @run main MulExactLNonConstantTest
+ * @run main MulExactLNonConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/NegExactIConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/NegExactIConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test constant negExact
* @compile NegExactIConstantTest.java Verify.java
- * @run main NegExactIConstantTest
+ * @run main NegExactIConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/NegExactILoadTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/NegExactILoadTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test negExact
* @compile NegExactILoadTest.java Verify.java
- * @run main NegExactILoadTest
+ * @run main NegExactILoadTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/NegExactILoopDependentTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/NegExactILoopDependentTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test negExact loop dependent
* @compile NegExactILoopDependentTest.java Verify.java
- * @run main NegExactILoopDependentTest
+ * @run main NegExactILoopDependentTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
public class NegExactILoopDependentTest {
--- a/hotspot/test/compiler/intrinsics/mathexact/NegExactINonConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/NegExactINonConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test non constant negExact
* @compile NegExactINonConstantTest.java Verify.java
- * @run main NegExactINonConstantTest
+ * @run main NegExactINonConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/NegExactLConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/NegExactLConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test constant negExact
* @compile NegExactLConstantTest.java Verify.java
- * @run main NegExactLConstantTest
+ * @run main NegExactLConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/NegExactLNonConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/NegExactLNonConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test constant negExact
* @compile NegExactLNonConstantTest.java Verify.java
- * @run main NegExactLNonConstantTest
+ * @run main NegExactLNonConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/NestedMathExactTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/NestedMathExactTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8027444
* @summary Test nested loops
* @compile NestedMathExactTest.java
- * @run main NestedMathExactTest
+ * @run main NestedMathExactTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SplitThruPhiTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SplitThruPhiTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8028198
* @summary Verify that split through phi does the right thing
* @compile SplitThruPhiTest.java
- * @run main SplitThruPhiTest
+ * @run main SplitThruPhiTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SubExactICondTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SubExactICondTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test subtractExact as condition
* @compile SubExactICondTest.java Verify.java
- * @run main SubExactICondTest
+ * @run main SubExactICondTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SubExactIConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SubExactIConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test constant subtractExact
* @compile SubExactIConstantTest.java Verify.java
- * @run main SubExactIConstantTest
+ * @run main SubExactIConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SubExactILoadTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SubExactILoadTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test non constant subtractExact
* @compile SubExactILoadTest.java Verify.java
- * @run main SubExactILoadTest
+ * @run main SubExactILoadTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SubExactILoopDependentTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SubExactILoopDependentTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test non constant subtractExact
* @compile SubExactILoopDependentTest.java Verify.java
- * @run main SubExactILoopDependentTest
+ * @run main SubExactILoopDependentTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SubExactINonConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SubExactINonConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test non constant subtractExact
* @compile SubExactINonConstantTest.java Verify.java
- * @run main SubExactINonConstantTest
+ * @run main SubExactINonConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SubExactIRepeatTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SubExactIRepeatTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -26,7 +26,7 @@
* @bug 8026844
* @summary Test repeating subtractExact
* @compile SubExactIRepeatTest.java Verify.java
- * @run main SubExactIRepeatTest
+ * @run main SubExactIRepeatTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SubExactLConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SubExactLConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -27,7 +27,7 @@
* @bug 8027353
* @summary Test constant subtractExact
* @compile SubExactLConstantTest.java Verify.java
- * @run main SubExactLConstantTest
+ * @run main SubExactLConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/
--- a/hotspot/test/compiler/intrinsics/mathexact/SubExactLNonConstantTest.java Thu Dec 05 17:49:55 2013 +0100
+++ b/hotspot/test/compiler/intrinsics/mathexact/SubExactLNonConstantTest.java Thu Dec 05 12:49:55 2013 -0800
@@ -27,7 +27,7 @@
* @bug 8027353
* @summary Test non constant subtractExact
* @compile SubExactLNonConstantTest.java Verify.java
- * @run main SubExactLNonConstantTest
+ * @run main SubExactLNonConstantTest -XX:+IgnoreUnrecognizedVMOptions -XX:+UnlockExperimentalVMOptions -XX:+UseMathExactIntrinsics
*
*/