8003878: compiler/7196199 test failed on OS X since 8b54, jdk7u12b01
Summary: Limit vectors size to 16 bytes on BSD until the problem is fixed
Reviewed-by: twisti
--- a/hotspot/src/cpu/x86/vm/vm_version_x86.cpp Tue Jan 22 15:34:16 2013 -0800
+++ b/hotspot/src/cpu/x86/vm/vm_version_x86.cpp Wed Jan 23 15:11:03 2013 -0800
@@ -661,6 +661,14 @@
}
}
}
+#if defined(COMPILER2) && defined(_ALLBSD_SOURCE)
+ if (MaxVectorSize > 16) {
+ // Limit vectors size to 16 bytes on BSD until it fixes
+ // restoring upper 128bit of YMM registers on return
+ // from signal handler.
+ FLAG_SET_DEFAULT(MaxVectorSize, 16);
+ }
+#endif // COMPILER2
// Use population count instruction if available.
if (supports_popcnt()) {