Merge
diff --git a/.hgtags b/.hgtags
index 8461900..bc2c591 100644
--- a/.hgtags
+++ b/.hgtags
@@ -95,4 +95,5 @@
 3221d1887d30341bedfdac1dbf365ea41beff20f jdk7-b92
 310cdbc355355a13aa53c002b6bde4a8c5ba67ff hs18-b04
 9d865fc2f644fdd9a0108fd6407944ee610aadd9 jdk7-b93
+d38f45079fe98792a7381dbb4b64f5b589ec8c58 jdk7-b94
 8bfe9058ca4661779ac1d0572329f3943e68362e hs19-b01
diff --git a/src/share/vm/interpreter/bytecodes.cpp b/src/share/vm/interpreter/bytecodes.cpp
index 46d2727..c507bf4 100644
--- a/src/share/vm/interpreter/bytecodes.cpp
+++ b/src/share/vm/interpreter/bytecodes.cpp
@@ -26,11 +26,13 @@
 #include "incls/_bytecodes.cpp.incl"
 
 
+#if defined(WIN32) && (defined(_MSC_VER) && (_MSC_VER < 1600))
 // Windows AMD64 Compiler Hangs compiling this file
 // unless optimization is off
 #ifdef _M_AMD64
 #pragma optimize ("", off)
 #endif
+#endif
 
 
 bool            Bytecodes::_is_initialized = false;