changeset 4045:522c328b8b77

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
author kvn
date Wed, 23 Jan 2013 15:11:03 -0800
parents b30b3c2a0cf2
children 22ead76da3f4
files src/cpu/x86/vm/vm_version_x86.cpp
diffstat 1 files changed, 8 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/src/cpu/x86/vm/vm_version_x86.cpp	Tue Jan 22 15:34:16 2013 -0800
+++ b/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()) {