changeset 1832:22e4420d19f7

Merge
author kvn
date Wed, 06 Oct 2010 14:18:32 -0700
parents 1c52033222eb (diff) a50abfc67f31 (current diff)
children 0715f0cf171d 75588558f1bf
files src/cpu/x86/vm/c1_LIRAssembler_x86.cpp src/share/vm/runtime/arguments.cpp
diffstat 12 files changed, 68 insertions(+), 26 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Tue Oct 05 17:38:40 2010 -0700
+++ b/.hgtags	Wed Oct 06 14:18:32 2010 -0700
@@ -117,3 +117,9 @@
 bf496cbe9b74dda5975a1559da7ecfdd313e509e jdk7-b107
 0000000000000000000000000000000000000000 hs19-b06
 6c43216df13513a0f96532aa06f213066c49e27b hs19-b06
+e44a93947ccbfce712b51725f313163606f15486 jdk7-b108
+cc4bb3022b3144dc5db0805b9ef6c7eff2aa3b81 jdk7-b109
+2f25f2b8de2700a1822463b1bd3d02b5e218018f jdk7-b110
+07b042e13dde4f3479ba9ec55120fcd5e8623323 jdk7-b111
+5511edd5d719f3fc9fdd04879482026a3d2c8652 jdk7-b112
+5511edd5d719f3fc9fdd04879482026a3d2c8652 hs20-b01
--- a/make/linux/makefiles/sa.make	Tue Oct 05 17:38:40 2010 -0700
+++ b/make/linux/makefiles/sa.make	Wed Oct 06 14:18:32 2010 -0700
@@ -68,7 +68,7 @@
 	   $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \
 	fi
 
-$(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2) agent_files_preclean
+$(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2)
 	$(QUIETLY) echo "Making $@"
 	$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
 	  echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \
@@ -83,6 +83,17 @@
 	  mkdir -p $(SA_CLASSDIR);        \
 	fi
 	
+# Note: When indented, make tries to execute the '$(shell' comment.
+# In some environments, cmd processors have limited line length.
+# To prevent the javac invocation in the next block from using
+# a very long cmd line, we use javac's @file-list option. We
+# generate the file lists using make's built-in 'foreach' control
+# flow which also avoids cmd processor line length issues. Since
+# the 'foreach' is done as part of make's macro expansion phase,
+# the initialization of the lists is also done in the same phase
+# using '$(shell rm ...' instead of using the more traditional
+# 'rm ...' rule.
+	$(shell rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST))
 	$(foreach file,$(AGENT_FILES1),$(shell echo $(file) >> $(AGENT_FILES1_LIST)))
 	$(foreach file,$(AGENT_FILES2),$(shell echo $(file) >> $(AGENT_FILES2_LIST)))
 	
@@ -104,9 +115,6 @@
 	$(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.amd64.AMD64ThreadContext
 	$(QUIETLY) $(REMOTE) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.sparc.SPARCThreadContext
 
-agent_files_preclean:
-	rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST)
-
 clean:
 	rm -rf $(SA_CLASSDIR)
 	rm -rf $(GENERATED)/sa-jdi.jar
--- a/make/solaris/makefiles/dtrace.make	Tue Oct 05 17:38:40 2010 -0700
+++ b/make/solaris/makefiles/dtrace.make	Wed Oct 06 14:18:32 2010 -0700
@@ -165,7 +165,7 @@
 $(DTRACE.o): $(DTRACE).d $(JVMOFFS).h $(JVMOFFS)Index.h $(DTraced_Files)
 	@echo Compiling $(DTRACE).d
 
-	$(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -G -o $@ -s $(DTRACE).d \
+	$(QUIETLY) $(DTRACE_PROG) $(DTRACE_OPTS) -C -I. -G -xlazyload -o $@ -s $(DTRACE).d \
      $(DTraced_Files) ||\
   STATUS=$$?;\
 	if [ x"$$STATUS" = x"1" -a \
--- a/make/solaris/makefiles/sa.make	Tue Oct 05 17:38:40 2010 -0700
+++ b/make/solaris/makefiles/sa.make	Wed Oct 06 14:18:32 2010 -0700
@@ -59,7 +59,7 @@
 	   $(MAKE) -f sa.make $(GENERATED)/sa-jdi.jar; \
 	fi
 
-$(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2) agent_files_preclean
+$(GENERATED)/sa-jdi.jar: $(AGENT_FILES1) $(AGENT_FILES2)
 	$(QUIETLY) echo "Making $@";
 	$(QUIETLY) if [ "$(BOOT_JAVA_HOME)" = "" ]; then \
 	   echo "ALT_BOOTDIR, BOOTDIR or JAVA_HOME needs to be defined to build SA"; \
@@ -74,6 +74,17 @@
 	  mkdir -p $(SA_CLASSDIR);        \
 	fi
 	
+# Note: When indented, make tries to execute the '$(shell' comment.
+# In some environments, cmd processors have limited line length.
+# To prevent the javac invocation in the next block from using
+# a very long cmd line, we use javac's @file-list option. We
+# generate the file lists using make's built-in 'foreach' control
+# flow which also avoids cmd processor line length issues. Since
+# the 'foreach' is done as part of make's macro expansion phase,
+# the initialization of the lists is also done in the same phase
+# using '$(shell rm ...' instead of using the more traditional
+# 'rm ...' rule.
+	$(shell rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST))
 	$(foreach file,$(AGENT_FILES1),$(shell echo $(file) >> $(AGENT_FILES1_LIST)))
 	$(foreach file,$(AGENT_FILES2),$(shell echo $(file) >> $(AGENT_FILES2_LIST)))
 	
@@ -92,9 +103,6 @@
 	$(QUIETLY) $(RUN.JAR) uf $@ -C $(AGENT_SRC_DIR) META-INF/services/com.sun.jdi.connect.Connector
 	$(QUIETLY) $(RUN.JAVAH) -classpath $(SA_CLASSDIR) -d $(GENERATED) -jni sun.jvm.hotspot.debugger.proc.ProcDebuggerLocal
 
-agent_files_preclean:
-	rm -rf $(AGENT_FILES1_LIST) $(AGENT_FILES2_LIST)
-
 clean:
 	rm -rf $(SA_CLASSDIR)
 	rm -rf $(GENERATED)/sa-jdi.jar
--- a/make/templates/bsd-header	Tue Oct 05 17:38:40 2010 -0700
+++ b/make/templates/bsd-header	Wed Oct 06 14:18:32 2010 -0700
@@ -1,4 +1,4 @@
-Copyright %YEARS% Oracle and/or its affiliates. All rights reserved.
+Copyright (c) %YEARS%, Oracle and/or its affiliates. All rights reserved.
 
 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions
--- a/make/templates/gpl-cp-header	Tue Oct 05 17:38:40 2010 -0700
+++ b/make/templates/gpl-cp-header	Wed Oct 06 14:18:32 2010 -0700
@@ -1,4 +1,4 @@
-Copyright %YEARS% Oracle and/or its affiliates. All rights reserved.
+Copyright (c) %YEARS%, Oracle and/or its affiliates. All rights reserved.
 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
 This code is free software; you can redistribute it and/or modify it
--- a/make/templates/gpl-header	Tue Oct 05 17:38:40 2010 -0700
+++ b/make/templates/gpl-header	Wed Oct 06 14:18:32 2010 -0700
@@ -1,4 +1,4 @@
-Copyright %YEARS% Oracle and/or its affiliates. All rights reserved.
+Copyright (c) %YEARS%, Oracle and/or its affiliates. All rights reserved.
 DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
 
 This code is free software; you can redistribute it and/or modify it
--- a/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp	Tue Oct 05 17:38:40 2010 -0700
+++ b/src/cpu/x86/vm/c1_LIRAssembler_x86.cpp	Wed Oct 06 14:18:32 2010 -0700
@@ -1618,8 +1618,7 @@
 void LIR_Assembler::type_profile_helper(Register mdo,
                                         ciMethodData *md, ciProfileData *data,
                                         Register recv, Label* update_done) {
-  uint i;
-  for (i = 0; i < ReceiverTypeData::row_limit(); i++) {
+  for (uint i = 0; i < ReceiverTypeData::row_limit(); i++) {
     Label next_test;
     // See if the receiver is receiver[n].
     __ cmpptr(recv, Address(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_offset(i))));
@@ -1631,7 +1630,7 @@
   }
 
   // Didn't find receiver; find next empty slot and fill it in
-  for (i = 0; i < ReceiverTypeData::row_limit(); i++) {
+  for (uint i = 0; i < ReceiverTypeData::row_limit(); i++) {
     Label next_test;
     Address recv_addr(mdo, md->byte_offset_of_slot(data, ReceiverTypeData::receiver_offset(i)));
     __ cmpptr(recv_addr, (intptr_t)NULL_WORD);
--- a/src/share/vm/classfile/verificationType.cpp	Tue Oct 05 17:38:40 2010 -0700
+++ b/src/share/vm/classfile/verificationType.cpp	Wed Oct 06 14:18:32 2010 -0700
@@ -54,10 +54,12 @@
       // any object or array is assignable to java.lang.Object
       return true;
     }
-    klassOop this_class = SystemDictionary::resolve_or_fail(
+    klassOop obj = SystemDictionary::resolve_or_fail(
         name_handle(), Handle(THREAD, context->class_loader()),
         Handle(THREAD, context->protection_domain()), true, CHECK_false);
-    if (this_class->klass_part()->is_interface()) {
+    KlassHandle this_class(THREAD, obj);
+
+    if (this_class->is_interface()) {
       // We treat interfaces as java.lang.Object, including
       // java.lang.Cloneable and java.io.Serializable
       return true;
@@ -65,7 +67,7 @@
       klassOop from_class = SystemDictionary::resolve_or_fail(
           from.name_handle(), Handle(THREAD, context->class_loader()),
           Handle(THREAD, context->protection_domain()), true, CHECK_false);
-      return instanceKlass::cast(from_class)->is_subclass_of(this_class);
+      return instanceKlass::cast(from_class)->is_subclass_of(this_class());
     }
   } else if (is_array() && from.is_array()) {
     VerificationType comp_this = get_component(CHECK_false);
--- a/src/share/vm/runtime/arguments.cpp	Tue Oct 05 17:38:40 2010 -0700
+++ b/src/share/vm/runtime/arguments.cpp	Wed Oct 06 14:18:32 2010 -0700
@@ -120,7 +120,7 @@
   PropertyList_add(&_system_properties, new SystemProperty("java.vm.specification.name",
                                                                  "Java Virtual Machine Specification",  false));
   PropertyList_add(&_system_properties, new SystemProperty("java.vm.specification.vendor",
-                                                                 "Sun Microsystems Inc.",  false));
+        JDK_Version::is_gte_jdk17x_version() ? "Oracle Corporation" : "Sun Microsystems Inc.", false));
   PropertyList_add(&_system_properties, new SystemProperty("java.vm.version", VM_Version::vm_release(),  false));
   PropertyList_add(&_system_properties, new SystemProperty("java.vm.name", VM_Version::vm_name(),  false));
   PropertyList_add(&_system_properties, new SystemProperty("java.vm.vendor", VM_Version::vm_vendor(),  false));
--- a/src/share/vm/runtime/vm_version.cpp	Tue Oct 05 17:38:40 2010 -0700
+++ b/src/share/vm/runtime/vm_version.cpp	Wed Oct 06 14:18:32 2010 -0700
@@ -121,7 +121,8 @@
 #ifdef VENDOR
   return XSTR(VENDOR);
 #else
-  return "Sun Microsystems Inc.";
+  return JDK_Version::is_gte_jdk17x_version() ?
+    "Oracle Corporation" : "Sun Microsystems Inc.";
 #endif
 }
 
--- a/test/runtime/6626217/Test6626217.sh	Tue Oct 05 17:38:40 2010 -0700
+++ b/test/runtime/6626217/Test6626217.sh	Wed Oct 06 14:18:32 2010 -0700
@@ -1,9 +1,27 @@
-#   
-# Copyright 2009 Sun Microsystems, Inc. All rights reserved.
-# SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
-#
+# 
+#  Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved.
+#  DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+# 
+#  This code is free software; you can redistribute it and/or modify it
+#  under the terms of the GNU General Public License version 2 only, as
+#  published by the Free Software Foundation.
+# 
+#  This code is distributed in the hope that it will be useful, but WITHOUT
+#  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+#  FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+#  version 2 for more details (a copy is included in the LICENSE file that
+#  accompanied this code).
+# 
+#  You should have received a copy of the GNU General Public License version
+#  2 along with this work; if not, write to the Free Software Foundation,
+#  Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+# 
+#  Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+#  or visit www.oracle.com if you need additional information or have any
+#  questions.
+# 
 
-#
+ 
 # @test @(#)Test6626217.sh
 # @bug 6626217
 # @summary Loader-constraint table allows arrays instead of only the base-classes
@@ -96,6 +114,6 @@
 ${RM} many_loader.java
 
 ${JAVA} ${BIT_FLAG} -Xverify -Xint -cp . bug_21227 >test.out 2>&1
-grep "violates loader constraints" test.out
+grep "loader constraint" test.out
 exit $?