changeset 4882:874e94d3b21d

Recent changes to patch queue
author goetz
date Thu, 04 Jul 2013 11:30:05 +0200
parents edf2bb42e70f
children 48f6312a5673
files ppc_patches/0003-2_C_interpreter-fix_for_8010460.patch ppc_patches/0005_rt-use_stubs_to_implement_safefetch_.patch ppc_patches/0007_C_interpreter-biased_locking.patch ppc_patches/0009_linux_ppc_files.patch ppc_patches/0013_basic_Aix_adaptions.patch ppc_patches/0015_aix_ppc_files.patch ppc_patches/0102_C_interpreter-implement_G1_support.patch ppc_patches/0103_C_interpreter-support_method_handles.patch ppc_patches/0104_C_interpreter-support_compressed_Oops.patch ppc_patches/0105-2_C_interpreter-enable_new_features.patch ppc_patches/0105_C_interpreter-support_early_return.patch ppc_patches/0201_C_interpreter-implement_bytecode_profiling.patch ppc_patches/0212_rt-gc_memory_ordering.patch ppc_patches/series src/share/vm/interpreter/bytecodeInterpreter.cpp src/share/vm/runtime/arguments.cpp
diffstat 16 files changed, 816 insertions(+), 821 deletions(-) [+]
line wrap: on
line diff
--- a/ppc_patches/0003-2_C_interpreter-fix_for_8010460.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0003-2_C_interpreter-fix_for_8010460.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,9 +1,9 @@
 # HG changeset patch
-# Parent b5c8a61d7fa041757e85f7d45005544784e6bfda
+# Parent 58be756e75951a5fe46d9723ed55ce22e4036efc
 
-diff -r b5c8a61d7fa0 src/share/vm/interpreter/bytecodeInterpreter.cpp
---- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Jun 21 15:56:24 2013 -0700
-+++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Wed Jun 26 10:56:11 2013 +0200
+diff -r 58be756e7595 src/share/vm/interpreter/bytecodeInterpreter.cpp
+--- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jun 24 17:11:47 2013 +0200
++++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Tue Jul 02 15:16:12 2013 +0200
 @@ -481,9 +481,9 @@
      // So we have a second version of the assertion which handles the case where EnableInvokeDynamic was
      // switched off because of the wrong classes.
--- a/ppc_patches/0005_rt-use_stubs_to_implement_safefetch_.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0005_rt-use_stubs_to_implement_safefetch_.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,12 +1,12 @@
 # HG changeset patch
-# Parent 5318acd5a0a46a4beeea8ef3daef353db68f55d5
+# Parent 13857a5d030607d2bc832402ec69669d197d46b2
 8016697: PPC64 (part 5): Use stubs to implement safefetch
 Summary: Implement Safefetch as stub routines. This reduces compiler and os dependencies.
 Reviewed-by:
 
-diff -r 5318acd5a0a4 src/cpu/sparc/vm/stubGenerator_sparc.cpp
---- a/src/cpu/sparc/vm/stubGenerator_sparc.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/cpu/sparc/vm/stubGenerator_sparc.cpp	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/cpu/sparc/vm/stubGenerator_sparc.cpp
+--- a/src/cpu/sparc/vm/stubGenerator_sparc.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/cpu/sparc/vm/stubGenerator_sparc.cpp	Thu Jul 04 11:11:51 2013 +0200
 @@ -410,6 +410,47 @@
      return start;
    }
@@ -55,7 +55,7 @@
  
    //------------------------------------------------------------------------------------------------------------------------
    // Continuation point for throwing of implicit exceptions that are not handled in
-@@ -3425,6 +3466,14 @@
+@@ -3315,6 +3356,14 @@
  
      // Don't initialize the platform math functions since sparc
      // doesn't have intrinsics for these operations.
@@ -70,9 +70,9 @@
    }
  
  
-diff -r 5318acd5a0a4 src/cpu/x86/vm/stubGenerator_x86_32.cpp
---- a/src/cpu/x86/vm/stubGenerator_x86_32.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/cpu/x86/vm/stubGenerator_x86_32.cpp	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/cpu/x86/vm/stubGenerator_x86_32.cpp
+--- a/src/cpu/x86/vm/stubGenerator_x86_32.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/cpu/x86/vm/stubGenerator_x86_32.cpp	Thu Jul 04 11:11:51 2013 +0200
 @@ -2713,6 +2713,39 @@
      return start;
    }
@@ -128,9 +128,9 @@
    }
  
  
-diff -r 5318acd5a0a4 src/cpu/x86/vm/stubGenerator_x86_64.cpp
---- a/src/cpu/x86/vm/stubGenerator_x86_64.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/cpu/x86/vm/stubGenerator_x86_64.cpp	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/cpu/x86/vm/stubGenerator_x86_64.cpp
+--- a/src/cpu/x86/vm/stubGenerator_x86_64.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/cpu/x86/vm/stubGenerator_x86_64.cpp	Thu Jul 04 11:11:51 2013 +0200
 @@ -3584,7 +3584,45 @@
      return start;
    }
@@ -193,10 +193,10 @@
    }
  
   public:
-diff -r 5318acd5a0a4 src/os/windows/vm/os_windows.cpp
---- a/src/os/windows/vm/os_windows.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os/windows/vm/os_windows.cpp	Thu Jun 20 13:36:42 2013 +0200
-@@ -2289,6 +2289,11 @@
+diff -r 13857a5d0306 src/os/windows/vm/os_windows.cpp
+--- a/src/os/windows/vm/os_windows.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os/windows/vm/os_windows.cpp	Thu Jul 04 11:11:51 2013 +0200
+@@ -2317,6 +2317,11 @@
  #endif
    Thread* t = ThreadLocalStorage::get_thread_slow();          // slow & steady
  
@@ -208,9 +208,9 @@
  #ifndef _WIN64
    // Execution protection violation - win32 running on AMD64 only
    // Handled first to avoid misdiagnosis as a "normal" access violation;
-diff -r 5318acd5a0a4 src/os_cpu/bsd_x86/vm/bsd_x86_32.s
---- a/src/os_cpu/bsd_x86/vm/bsd_x86_32.s	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/bsd_x86/vm/bsd_x86_32.s	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/bsd_x86/vm/bsd_x86_32.s
+--- a/src/os_cpu/bsd_x86/vm/bsd_x86_32.s	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/bsd_x86/vm/bsd_x86_32.s	Thu Jul 04 11:11:51 2013 +0200
 @@ -63,24 +63,6 @@
          popl     %eax
          ret
@@ -236,9 +236,9 @@
          .globl  SYMBOL(SpinPause)
          ELF_TYPE(SpinPause,@function)
          .p2align 4,,15
-diff -r 5318acd5a0a4 src/os_cpu/bsd_x86/vm/bsd_x86_64.s
---- a/src/os_cpu/bsd_x86/vm/bsd_x86_64.s	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/bsd_x86/vm/bsd_x86_64.s	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/bsd_x86/vm/bsd_x86_64.s
+--- a/src/os_cpu/bsd_x86/vm/bsd_x86_64.s	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/bsd_x86/vm/bsd_x86_64.s	Thu Jul 04 11:11:51 2013 +0200
 @@ -46,28 +46,6 @@
  
  	.text
@@ -268,9 +268,9 @@
          .globl SYMBOL(SpinPause)
          .p2align 4,,15
          ELF_TYPE(SpinPause,@function)
-diff -r 5318acd5a0a4 src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp
---- a/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp
+--- a/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/bsd_x86/vm/os_bsd_x86.cpp	Thu Jul 04 11:11:51 2013 +0200
 @@ -385,13 +385,6 @@
    trap_page_fault = 0xE
  };
@@ -305,9 +305,9 @@
  
      // Handle ALL stack overflow variations here
      if (sig == SIGSEGV || sig == SIGBUS) {
-diff -r 5318acd5a0a4 src/os_cpu/linux_sparc/vm/linux_sparc.s
---- a/src/os_cpu/linux_sparc/vm/linux_sparc.s	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/linux_sparc/vm/linux_sparc.s	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/linux_sparc/vm/linux_sparc.s
+--- a/src/os_cpu/linux_sparc/vm/linux_sparc.s	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/linux_sparc/vm/linux_sparc.s	Thu Jul 04 11:11:51 2013 +0200
 @@ -21,42 +21,6 @@
  # questions.
  #
@@ -351,9 +351,9 @@
      # Possibilities:
      # -- membar
      # -- CAS (SP + BIAS, G0, G0)
-diff -r 5318acd5a0a4 src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp
---- a/src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp
+--- a/src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/linux_sparc/vm/os_linux_sparc.cpp	Thu Jul 04 11:11:51 2013 +0200
 @@ -366,18 +366,9 @@
  
  // Utility functions
@@ -375,9 +375,9 @@
      return true;
    }
    return false;
-diff -r 5318acd5a0a4 src/os_cpu/linux_x86/vm/linux_x86_32.s
---- a/src/os_cpu/linux_x86/vm/linux_x86_32.s	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/linux_x86/vm/linux_x86_32.s	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/linux_x86/vm/linux_x86_32.s
+--- a/src/os_cpu/linux_x86/vm/linux_x86_32.s	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/linux_x86/vm/linux_x86_32.s	Thu Jul 04 11:11:51 2013 +0200
 @@ -42,24 +42,6 @@
  
  	.text
@@ -403,9 +403,9 @@
          .globl  SpinPause
  	.type   SpinPause,@function
          .p2align 4,,15
-diff -r 5318acd5a0a4 src/os_cpu/linux_x86/vm/linux_x86_64.s
---- a/src/os_cpu/linux_x86/vm/linux_x86_64.s	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/linux_x86/vm/linux_x86_64.s	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/linux_x86/vm/linux_x86_64.s
+--- a/src/os_cpu/linux_x86/vm/linux_x86_64.s	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/linux_x86/vm/linux_x86_64.s	Thu Jul 04 11:11:51 2013 +0200
 @@ -38,28 +38,6 @@
  
  	.text
@@ -435,10 +435,10 @@
          .globl SpinPause
          .align 16
          .type  SpinPause,@function
-diff -r 5318acd5a0a4 src/os_cpu/linux_x86/vm/os_linux_x86.cpp
---- a/src/os_cpu/linux_x86/vm/os_linux_x86.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/linux_x86/vm/os_linux_x86.cpp	Thu Jun 20 13:36:42 2013 +0200
-@@ -202,13 +202,6 @@
+diff -r 13857a5d0306 src/os_cpu/linux_x86/vm/os_linux_x86.cpp
+--- a/src/os_cpu/linux_x86/vm/os_linux_x86.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/linux_x86/vm/os_linux_x86.cpp	Thu Jul 04 11:11:51 2013 +0200
+@@ -209,13 +209,6 @@
    trap_page_fault = 0xE
  };
  
@@ -452,7 +452,7 @@
  extern "C" JNIEXPORT int
  JVM_handle_linux_signal(int sig,
                          siginfo_t* info,
-@@ -271,16 +264,10 @@
+@@ -278,16 +271,10 @@
    if (info != NULL && uc != NULL && thread != NULL) {
      pc = (address) os::Linux::ucontext_get_pc(uc);
  
@@ -470,12 +470,12 @@
 -    }
 -#endif // AMD64
  
-     // Handle ALL stack overflow variations here
-     if (sig == SIGSEGV) {
-diff -r 5318acd5a0a4 src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp
---- a/src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp	Thu Jun 20 13:36:42 2013 +0200
-@@ -314,11 +314,6 @@
+ #ifndef AMD64
+     // Halt if SI_KERNEL before more crashes get misdiagnosed as Java bugs
+diff -r 13857a5d0306 src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp
+--- a/src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/solaris_sparc/vm/os_solaris_sparc.cpp	Thu Jul 04 11:11:51 2013 +0200
+@@ -303,11 +303,6 @@
  #endif
  }
  
@@ -487,7 +487,7 @@
  extern "C" JNIEXPORT int
  JVM_handle_solaris_signal(int sig, siginfo_t* info, void* ucVoid,
                            int abort_if_unrecognized) {
-@@ -395,17 +390,10 @@
+@@ -379,17 +374,10 @@
      npc = (address) uc->uc_mcontext.gregs[REG_nPC];
  
      // SafeFetch() support
@@ -509,9 +509,9 @@
      }
  
      // Handle ALL stack overflow variations here
-diff -r 5318acd5a0a4 src/os_cpu/solaris_sparc/vm/solaris_sparc.s
---- a/src/os_cpu/solaris_sparc/vm/solaris_sparc.s	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/solaris_sparc/vm/solaris_sparc.s	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/solaris_sparc/vm/solaris_sparc.s
+--- a/src/os_cpu/solaris_sparc/vm/solaris_sparc.s	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/solaris_sparc/vm/solaris_sparc.s	Thu Jul 04 11:11:51 2013 +0200
 @@ -21,47 +21,6 @@
  !! questions.
  !!
@@ -560,10 +560,10 @@
      !! Possibilities:
      !! -- membar
      !! -- CAS (SP + BIAS, G0, G0)
-diff -r 5318acd5a0a4 src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp
---- a/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp	Thu Jun 20 13:36:42 2013 +0200
-@@ -364,13 +364,6 @@
+diff -r 13857a5d0306 src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp
+--- a/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/solaris_x86/vm/os_solaris_x86.cpp	Thu Jul 04 11:11:51 2013 +0200
+@@ -352,13 +352,6 @@
  
  }
  
@@ -577,7 +577,7 @@
  extern "C" JNIEXPORT int
  JVM_handle_solaris_signal(int sig, siginfo_t* info, void* ucVoid,
                            int abort_if_unrecognized) {
-@@ -454,17 +447,10 @@
+@@ -436,17 +429,10 @@
      // factor me: getPCfromContext
      pc = (address) uc->uc_mcontext.gregs[REG_PC];
  
@@ -598,9 +598,9 @@
  
      // Handle ALL stack overflow variations here
      if (sig == SIGSEGV && info->si_code == SEGV_ACCERR) {
-diff -r 5318acd5a0a4 src/os_cpu/solaris_x86/vm/solaris_x86_32.s
---- a/src/os_cpu/solaris_x86/vm/solaris_x86_32.s	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/solaris_x86/vm/solaris_x86_32.s	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/solaris_x86/vm/solaris_x86_32.s
+--- a/src/os_cpu/solaris_x86/vm/solaris_x86_32.s	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/solaris_x86/vm/solaris_x86_32.s	Thu Jul 04 11:11:51 2013 +0200
 @@ -54,20 +54,6 @@
  	popl     %eax
  	ret
@@ -622,9 +622,9 @@
          .align  16
          .globl  SpinPause
  SpinPause:
-diff -r 5318acd5a0a4 src/os_cpu/solaris_x86/vm/solaris_x86_64.s
---- a/src/os_cpu/solaris_x86/vm/solaris_x86_64.s	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/solaris_x86/vm/solaris_x86_64.s	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/solaris_x86/vm/solaris_x86_64.s
+--- a/src/os_cpu/solaris_x86/vm/solaris_x86_64.s	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/solaris_x86/vm/solaris_x86_64.s	Thu Jul 04 11:11:51 2013 +0200
 @@ -21,54 +21,34 @@
  / questions.
  /
@@ -712,9 +712,9 @@
          / Support for void Copy::arrayof_conjoint_jlongs(jlong* from,
          /                                                jlong* to,
          /                                                size_t count)
-diff -r 5318acd5a0a4 src/os_cpu/windows_x86/vm/os_windows_x86.cpp
---- a/src/os_cpu/windows_x86/vm/os_windows_x86.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/os_cpu/windows_x86/vm/os_windows_x86.cpp	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/os_cpu/windows_x86/vm/os_windows_x86.cpp
+--- a/src/os_cpu/windows_x86/vm/os_windows_x86.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/os_cpu/windows_x86/vm/os_windows_x86.cpp	Thu Jul 04 11:11:51 2013 +0200
 @@ -518,24 +518,6 @@
    st->cr();
  }
@@ -740,10 +740,10 @@
  extern "C" int SpinPause () {
  #ifdef AMD64
     return 0 ;
-diff -r 5318acd5a0a4 src/share/vm/runtime/os.hpp
---- a/src/share/vm/runtime/os.hpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/share/vm/runtime/os.hpp	Thu Jun 20 13:36:42 2013 +0200
-@@ -799,8 +799,6 @@
+diff -r 13857a5d0306 src/share/vm/runtime/os.hpp
+--- a/src/share/vm/runtime/os.hpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/share/vm/runtime/os.hpp	Thu Jul 04 11:11:51 2013 +0200
+@@ -915,8 +915,6 @@
  // of the global SpinPause() with C linkage.
  // It'd also be eligible for inlining on many platforms.
  
@@ -753,9 +753,9 @@
 +extern "C" int SpinPause();
  
  #endif // SHARE_VM_RUNTIME_OS_HPP
-diff -r 5318acd5a0a4 src/share/vm/runtime/stubRoutines.cpp
---- a/src/share/vm/runtime/stubRoutines.cpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/share/vm/runtime/stubRoutines.cpp	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/share/vm/runtime/stubRoutines.cpp
+--- a/src/share/vm/runtime/stubRoutines.cpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/share/vm/runtime/stubRoutines.cpp	Thu Jul 04 11:11:51 2013 +0200
 @@ -133,6 +133,13 @@
  double (* StubRoutines::_intrinsic_cos   )(double) = NULL;
  double (* StubRoutines::_intrinsic_tan   )(double) = NULL;
@@ -770,9 +770,9 @@
  // Initialization
  //
  // Note: to break cycle with universe initialization, stubs are generated in two phases.
-diff -r 5318acd5a0a4 src/share/vm/runtime/stubRoutines.hpp
---- a/src/share/vm/runtime/stubRoutines.hpp	Thu Jun 20 13:20:33 2013 +0200
-+++ b/src/share/vm/runtime/stubRoutines.hpp	Thu Jun 20 13:36:42 2013 +0200
+diff -r 13857a5d0306 src/share/vm/runtime/stubRoutines.hpp
+--- a/src/share/vm/runtime/stubRoutines.hpp	Thu Jul 04 11:10:56 2013 +0200
++++ b/src/share/vm/runtime/stubRoutines.hpp	Thu Jul 04 11:11:51 2013 +0200
 @@ -221,6 +221,14 @@
    static double (*_intrinsic_cos)(double);
    static double (*_intrinsic_tan)(double);
@@ -788,7 +788,7 @@
   public:
    // Initialization/Testing
    static void    initialize1();                            // must happen before universe::genesis
-@@ -377,6 +385,34 @@
+@@ -379,6 +387,34 @@
    }
  
    //
@@ -823,7 +823,7 @@
    // Default versions of the above arraycopy functions for platforms which do
    // not have specialized versions
    //
-@@ -395,4 +431,15 @@
+@@ -397,4 +433,15 @@
    static void arrayof_oop_copy_uninit(HeapWord* src, HeapWord* dest, size_t count);
  };
  
--- a/ppc_patches/0007_C_interpreter-biased_locking.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0007_C_interpreter-biased_locking.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -531,34 +531,3 @@
  }
  #endif // PRODUCT
  
-diff -r 83aa1249d250 src/share/vm/runtime/arguments.cpp
---- a/src/share/vm/runtime/arguments.cpp	Thu Jun 20 13:37:18 2013 +0200
-+++ b/src/share/vm/runtime/arguments.cpp	Fri Jun 21 15:41:45 2013 +0200
-@@ -3573,8 +3573,10 @@
- 
- #ifdef CC_INTERP
-   // Clear flags not supported by the C++ interpreter
-+#if !defined(PPC64)
-+  FLAG_SET_DEFAULT(UseBiasedLocking, false);
-+#endif // !PPC64
-   FLAG_SET_DEFAULT(ProfileInterpreter, false);
--  FLAG_SET_DEFAULT(UseBiasedLocking, false);
-   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
-   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedKlassPointers, false));
- #endif // CC_INTERP
-diff -r 83aa1249d250 src/share/vm/runtime/biasedLocking.cpp
---- a/src/share/vm/runtime/biasedLocking.cpp	Thu Jun 20 13:37:18 2013 +0200
-+++ b/src/share/vm/runtime/biasedLocking.cpp	Fri Jun 21 15:41:45 2013 +0200
-@@ -233,8 +233,10 @@
-     // Fix up highest lock to contain displaced header and point
-     // object at it
-     highest_lock->set_displaced_header(unbiased_prototype);
--    // Reset object header to point to displaced mark
--    obj->set_mark(markOopDesc::encode(highest_lock));
-+    // Reset object header to point to displaced mark.
-+    // Must release storing the lock address for platforms without TSO
-+    // ordering (e.g. ppc).
-+    obj->release_set_mark(markOopDesc::encode(highest_lock));
-     assert(!obj->mark()->has_bias_pattern(), "illegal mark state: stack lock used bias bit");
-     if (TraceBiasedLocking && (Verbose || !is_bulk)) {
-       tty->print_cr("  Revoked bias of currently-locked object");
--- a/ppc_patches/0009_linux_ppc_files.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0009_linux_ppc_files.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,5 +1,5 @@
 # HG changeset patch
-# Parent 3348a8244d70331e8fe7d2d22450da22f5fbe817
+# Parent 9c1670b79eff192aaba3950d0ae5cbc80459b0eb
 ppc: PPC platform files as required to start up the interpreter.
 
 With this change the HotSpot (libjvm.so) compiles and
@@ -12,9 +12,9 @@
 ------------
 ALT_BOOTDIR=/sapmnt/depot/tools/gen/linuxppc64/licenseware/jse/1.7.0 ALT_OUTPUTDIR=/priv/d046063/OpenJDK/output_dbg_ppc64 CC_INTERP=true OPENJDK=true ARCH_DATA_MODEL=64 MAKE_VERBOSE=y HOTSPOT_BUILD_JOBS=1 make jvmgcore 2>&1 | tee /priv/d046063/OpenJDK/output_dbg_ppc64.log
 
-diff -r 3348a8244d70 src/cpu/ppc/vm/assembler_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/assembler_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/assembler_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/assembler_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,700 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -716,9 +716,9 @@
 +  code()->decode();
 +}
 +#endif // !PRODUCT
-diff -r 3348a8244d70 src/cpu/ppc/vm/assembler_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/assembler_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/assembler_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/assembler_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,1963 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -2683,9 +2683,9 @@
 +
 +
 +#endif // CPU_PPC_VM_ASSEMBLER_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/assembler_ppc.inline.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/assembler_ppc.inline.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/assembler_ppc.inline.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/assembler_ppc.inline.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,792 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -3479,9 +3479,9 @@
 +
 +
 +#endif // CPU_PPC_VM_ASSEMBLER_PPC_INLINE_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/bytecodeInterpreter_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/bytecodeInterpreter_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/bytecodeInterpreter_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/bytecodeInterpreter_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,105 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -3588,9 +3588,9 @@
 +
 +
 +#endif // CPU_PPC_VM_BYTECODEINTERPRETER_PPC_PP
-diff -r 3348a8244d70 src/cpu/ppc/vm/bytecodeInterpreter_ppc.inline.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/bytecodeInterpreter_ppc.inline.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/bytecodeInterpreter_ppc.inline.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/bytecodeInterpreter_ppc.inline.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,290 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -3882,9 +3882,9 @@
 +#endif // CC_INTERP
 +
 +#endif // CPU_PPC_VM_BYTECODEINTERPRETER_PPC_INLINE_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/bytecodes_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/bytecodes_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/bytecodes_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/bytecodes_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,31 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -3917,9 +3917,9 @@
 +void Bytecodes::pd_initialize() {
 +  // No ppc specific initialization.
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/bytecodes_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/bytecodes_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/bytecodes_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/bytecodes_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,31 @@
 +/*
 + * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -3952,9 +3952,9 @@
 +// No ppc64 specific bytecodes
 +
 +#endif // CPU_PPC_VM_BYTECODES_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/bytes_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/bytes_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/bytes_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/bytes_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,156 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -4112,9 +4112,9 @@
 +};
 +
 +#endif // CPU_PPC_VM_BYTES_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/codeBuffer_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/codeBuffer_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/codeBuffer_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/codeBuffer_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,35 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -4151,9 +4151,9 @@
 +  void flush_bundle(bool start_new_bundle) {}
 +
 +#endif // CPU_PPC_VM_CODEBUFFER_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/compiledIC_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/compiledIC_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/compiledIC_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/compiledIC_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,261 @@
 +/*
 + * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
@@ -4416,9 +4416,9 @@
 +}
 +
 +#endif // !PRODUCT
-diff -r 3348a8244d70 src/cpu/ppc/vm/copy_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/copy_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/copy_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/copy_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,163 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -4583,9 +4583,9 @@
 +}
 +
 +#endif // CPU_PPC_VM_COPY_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/cppInterpreterGenerator_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/cppInterpreterGenerator_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/cppInterpreterGenerator_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/cppInterpreterGenerator_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,43 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -4630,9 +4630,9 @@
 +  void generate_compute_interpreter_state(Label& exception_return);
 +
 +#endif // CPU_PPC_VM_CPPINTERPRETERGENERATOR_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/cppInterpreter_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/cppInterpreter_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/cppInterpreter_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/cppInterpreter_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,3047 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -7681,9 +7681,9 @@
 +}
 +
 +#endif // CC_INTERP
-diff -r 3348a8244d70 src/cpu/ppc/vm/cppInterpreter_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/cppInterpreter_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/cppInterpreter_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/cppInterpreter_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,39 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -7724,9 +7724,9 @@
 +  const static int InterpreterCodeSize = 12*K;
 +
 +#endif // CPU_PPC_VM_CPPINTERPRETER_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/debug_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/debug_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/debug_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/debug_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,35 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -7763,9 +7763,9 @@
 +#include "utilities/top.hpp"
 +
 +void pd_ps(frame f) {}
-diff -r 3348a8244d70 src/cpu/ppc/vm/depChecker_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/depChecker_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/depChecker_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/depChecker_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,31 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -7798,9 +7798,9 @@
 +// Nothing to do on ppc64
 +
 +#endif // CPU_PPC_VM_DEPCHECKER_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/disassembler_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/disassembler_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/disassembler_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/disassembler_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,37 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -7839,9 +7839,9 @@
 +  }
 +
 +#endif // CPU_PPC_VM_DISASSEMBLER_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/frame_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/frame_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/frame_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/frame_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,306 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -8149,9 +8149,9 @@
 +  // unused... but returns fp() to minimize changes introduced by 7087445
 +  return fp();
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/frame_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/frame_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/frame_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/frame_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,449 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -8602,9 +8602,9 @@
 +  };
 +
 +#endif // CPU_PPC_VM_FRAME_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/frame_ppc.inline.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/frame_ppc.inline.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/frame_ppc.inline.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/frame_ppc.inline.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,239 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -8845,9 +8845,9 @@
 +}
 +
 +#endif // CPU_PPC_VM_FRAME_PPC_INLINE_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/globalDefinitions_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/globalDefinitions_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/globalDefinitions_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/globalDefinitions_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,34 @@
 +/*
 + * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -8883,9 +8883,9 @@
 +const int StackAlignmentInBytes  = 16;
 +
 +#endif // CPU_PPC_VM_GLOBALDEFINITIONS_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/globals_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/globals_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/globals_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/globals_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,116 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -9003,9 +9003,9 @@
 +
 +
 +#endif // CPU_PPC_VM_GLOBALS_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/icBuffer_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/icBuffer_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/icBuffer_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/icBuffer_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,71 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -9078,9 +9078,9 @@
 +  void* o = (void*)move->data();
 +  return o;
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/icache_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/icache_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/icache_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/icache_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,77 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -9159,9 +9159,9 @@
 +  // First call to flush itself
 +  ICache::invalidate_range((address)(*flush_icache_stub), 0);
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/icache_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/icache_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/icache_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/icache_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,44 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -9207,9 +9207,9 @@
 +};
 +
 +#endif // CPU_PPC_VM_ICACHE_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/interp_masm_ppc_64.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/interp_masm_ppc_64.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/interp_masm_ppc_64.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/interp_masm_ppc_64.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,504 @@
 +/*
 + * Copyright (c) 2003, 2011, Oracle and/or its affiliates. All rights reserved.
@@ -9715,9 +9715,9 @@
 +  ppc_ld(PPC_prev_state, state_(_prev_link));
 +}
 +#endif // CC_INTERP
-diff -r 3348a8244d70 src/cpu/ppc/vm/interp_masm_ppc_64.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/interp_masm_ppc_64.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/interp_masm_ppc_64.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/interp_masm_ppc_64.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,89 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -9808,9 +9808,9 @@
 +};
 +
 +#endif // CPU_PPC_VM_INTERP_MASM_PPC_64_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/interpreterGenerator_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/interpreterGenerator_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/interpreterGenerator_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/interpreterGenerator_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,37 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -9849,9 +9849,9 @@
 +  address generate_Reference_get_entry(void);
 +
 +#endif // CPU_PPC_VM_INTERPRETERGENERATOR_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/interpreterRT_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/interpreterRT_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/interpreterRT_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/interpreterRT_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,150 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10003,9 +10003,9 @@
 +  assert(m->is_native(), "sanity check");
 +  return AbstractInterpreter::result_handler(m->result_type());
 +IRT_END
-diff -r 3348a8244d70 src/cpu/ppc/vm/interpreterRT_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/interpreterRT_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/interpreterRT_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/interpreterRT_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,62 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10069,9 +10069,9 @@
 +static address get_signature(JavaThread* thread, Method* method);
 +
 +#endif // CPU_PPC_VM_INTERPRETERRT_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/interpreter_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/interpreter_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/interpreter_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/interpreter_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,738 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10811,9 +10811,9 @@
 +
 +  assert(f->is_interpreted_frame(), "must be interpreted");
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/interpreter_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/interpreter_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/interpreter_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/interpreter_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,42 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10857,9 +10857,9 @@
 +  }
 +
 +#endif // CPU_PPC_VM_INTERPRETER_PPC_PP
-diff -r 3348a8244d70 src/cpu/ppc/vm/javaFrameAnchor_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/javaFrameAnchor_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/javaFrameAnchor_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/javaFrameAnchor_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,82 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10943,9 +10943,9 @@
 +  void set_last_Java_sp(intptr_t* sp) { OrderAccess::release(); _last_Java_sp = sp; }
 +
 +#endif // CPU_PPC_VM_JAVAFRAMEANCHOR_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/jniFastGetField_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/jniFastGetField_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/jniFastGetField_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/jniFastGetField_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,75 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -11022,9 +11022,9 @@
 +address JNI_FastGetField::generate_fast_get_double_field() {
 +  return generate_fast_get_float_field0(T_DOUBLE);
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/jniTypes_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/jniTypes_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/jniTypes_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/jniTypes_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,110 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -11136,9 +11136,9 @@
 +};
 +
 +#endif // CPU_PPC_VM_JNITYPES_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/jni_ppc.h
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/jni_ppc.h	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/jni_ppc.h
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/jni_ppc.h	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,53 @@
 +/*
 + * Copyright (c) 1997, 2011, Oracle and/or its affiliates. All rights reserved.
@@ -11193,9 +11193,9 @@
 +typedef signed char jbyte;
 +
 +#endif // CPU_PPC_VM_JNI_PPC_H
-diff -r 3348a8244d70 src/cpu/ppc/vm/macroAssembler_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/macroAssembler_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/macroAssembler_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/macroAssembler_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,3016 @@
 +/*
 + * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
@@ -14213,9 +14213,9 @@
 +}
 +
 +#endif // !PRODUCT
-diff -r 3348a8244d70 src/cpu/ppc/vm/macroAssembler_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/macroAssembler_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/macroAssembler_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/macroAssembler_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,662 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -14879,9 +14879,9 @@
 +};
 +
 +#endif // CPU_PPC_VM_MACROASSEMBLER_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/macroAssembler_ppc.inline.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/macroAssembler_ppc.inline.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/macroAssembler_ppc.inline.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/macroAssembler_ppc.inline.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,382 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -15265,9 +15265,9 @@
 +}
 +
 +#endif // CPU_PPC_VM_MACROASSEMBLER_PPC_INLINE_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/metaspaceShared_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/metaspaceShared_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/metaspaceShared_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/metaspaceShared_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,61 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -15330,9 +15330,9 @@
 +  Unimplemented();
 +}
 +
-diff -r 3348a8244d70 src/cpu/ppc/vm/methodHandles_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/methodHandles_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/methodHandles_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/methodHandles_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,540 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -15874,9 +15874,9 @@
 +  BLOCK_COMMENT("} trace_method_handle");
 +}
 +#endif // PRODUCT
-diff -r 3348a8244d70 src/cpu/ppc/vm/methodHandles_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/methodHandles_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/methodHandles_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/methodHandles_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,62 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -15940,9 +15940,9 @@
 +                                  Register recv, Register method_temp,
 +                                  Register temp2, Register temp3,
 +                                  bool for_compiler_entry);
-diff -r 3348a8244d70 src/cpu/ppc/vm/nativeInst_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/nativeInst_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/nativeInst_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/nativeInst_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,381 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -16325,9 +16325,9 @@
 +  *(address*)(ctable + destination_toc_offset()) = new_destination;
 +}
 +
-diff -r 3348a8244d70 src/cpu/ppc/vm/nativeInst_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/nativeInst_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/nativeInst_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/nativeInst_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,397 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -16726,9 +16726,9 @@
 +}
 +
 +#endif // CPU_PPC_VM_NATIVEINST_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/registerMap_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/registerMap_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/registerMap_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/registerMap_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,45 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -16775,9 +16775,9 @@
 +  void pd_initialize_from(const RegisterMap* map) {}
 +
 +#endif // CPU_PPC_VM_REGISTERMAP_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/register_definitions_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/register_definitions_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/register_definitions_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/register_definitions_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,42 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -16821,9 +16821,9 @@
 +REGISTER_DEFINITION(Register, noreg);
 +
 +REGISTER_DEFINITION(FloatRegister, fnoreg);
-diff -r 3348a8244d70 src/cpu/ppc/vm/register_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/register_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/register_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/register_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,77 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -16902,9 +16902,9 @@
 +  };
 +  return is_valid() ? names[encoding()] : "vnoreg";
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/register_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/register_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/register_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/register_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,635 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -17541,10 +17541,10 @@
 +#endif
 +
 +#endif // CPU_PPC_VM_REGISTER_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/relocInfo_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/relocInfo_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
-@@ -0,0 +1,145 @@
+diff -r 9c1670b79eff src/cpu/ppc/vm/relocInfo_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/relocInfo_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
+@@ -0,0 +1,132 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
 + * Copyright 2012, 2013 SAP AG. All rights reserved.
@@ -17669,19 +17669,6 @@
 +  return (address)(nativeMovConstReg_at(addr())->data());
 +}
 +
-+int Relocation::pd_breakpoint_size() {
-+  ShouldNotReachHere(); // TODO: PPC port
-+  return 0;
-+}
-+
-+void Relocation::pd_swap_in_breakpoint(address x, short* instrs, int instrlen) {
-+  ShouldNotReachHere(); // TODO: PPC port
-+}
-+
-+void Relocation::pd_swap_out_breakpoint(address x, short* instrs, int instrlen) {
-+  ShouldNotReachHere(); // TODO: PPC port
-+}
-+
 +void poll_Relocation::fix_relocation_after_move(const CodeBuffer* src, CodeBuffer* dest) {
 +}
 +
@@ -17690,9 +17677,9 @@
 +
 +void metadata_Relocation::pd_fix_value(address x) {
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/relocInfo_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/relocInfo_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/relocInfo_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/relocInfo_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,46 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -17740,9 +17727,9 @@
 +  };
 +
 +#endif // CPU_PPC_VM_RELOCINFO_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/sharedRuntime_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/sharedRuntime_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/sharedRuntime_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/sharedRuntime_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,3208 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -20952,9 +20939,9 @@
 +  return RuntimeStub::new_runtime_stub(name, &buffer, frame_complete, frame_size_in_bytes/wordSize,
 +                                       oop_maps, true);
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/stubGenerator_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/stubGenerator_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/stubGenerator_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/stubGenerator_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,2058 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23014,9 +23001,9 @@
 +void StubGenerator_generate(CodeBuffer* code, bool all) {
 +  StubGenerator g(code, all);
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/stubRoutines_ppc_64.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/stubRoutines_ppc_64.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/stubRoutines_ppc_64.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/stubRoutines_ppc_64.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,40 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23058,9 +23045,9 @@
 +// a description of how to extend it, see the stubRoutines.hpp file.
 +
 +
-diff -r 3348a8244d70 src/cpu/ppc/vm/stubRoutines_ppc_64.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/stubRoutines_ppc_64.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/stubRoutines_ppc_64.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/stubRoutines_ppc_64.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,40 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23102,9 +23089,9 @@
 +};
 +
 +#endif // CPU_PPC_VM_STUBROUTINES_PPC_64_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/vmStructs_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/vmStructs_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/vmStructs_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/vmStructs_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,41 @@
 +/*
 + * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23147,9 +23134,9 @@
 +#define VM_LONG_CONSTANTS_CPU(declare_constant, declare_preprocessor_constant, declare_c1_constant, declare_c2_constant, declare_c2_preprocessor_constant)
 +
 +#endif // CPU_PPC_VM_VMSTRUCTS_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/vm_version_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/vm_version_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/vm_version_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/vm_version_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,472 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23623,9 +23610,9 @@
 +void VM_Version::revert() {
 +  _features = saved_features;
 +}
-diff -r 3348a8244d70 src/cpu/ppc/vm/vm_version_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/vm_version_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/vm_version_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/vm_version_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,93 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23720,9 +23707,9 @@
 +};
 +
 +#endif // CPU_PPC_VM_VM_VERSION_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/vmreg_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/vmreg_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/vmreg_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/vmreg_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,51 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23775,9 +23762,9 @@
 +  }
 +}
 +
-diff -r 3348a8244d70 src/cpu/ppc/vm/vmreg_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/vmreg_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/vmreg_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/vmreg_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,35 @@
 +/*
 + * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23814,9 +23801,9 @@
 +  FloatRegister as_FloatRegister();
 +
 +#endif // CPU_PPC_VM_VMREG_PPC_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/vmreg_ppc.inline.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/vmreg_ppc.inline.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/vmreg_ppc.inline.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/vmreg_ppc.inline.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,71 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -23889,9 +23876,9 @@
 +}
 +
 +#endif // CPU_PPC_VM_VMREG_PPC_INLINE_HPP
-diff -r 3348a8244d70 src/cpu/ppc/vm/vtableStubs_ppc_64.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/cpu/ppc/vm/vtableStubs_ppc_64.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/cpu/ppc/vm/vtableStubs_ppc_64.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/cpu/ppc/vm/vtableStubs_ppc_64.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,269 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -24162,9 +24149,9 @@
 +  const unsigned int icache_line_size = 32;
 +  return icache_line_size;
 +}
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/atomic_linux_ppc.inline.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/atomic_linux_ppc.inline.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/atomic_linux_ppc.inline.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/atomic_linux_ppc.inline.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,401 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -24567,9 +24554,9 @@
 +#undef strasm_ppc_nobarrier_clobber_memory
 +
 +#endif // OS_CPU_LINUX_PPC_VM_ATOMIC_LINUX_PPC_INLINE_HPP
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/globals_linux_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,54 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -24625,9 +24612,9 @@
 +define_pd_global(bool, UseVectoredExceptions,    false);
 +
 +#endif // OS_CPU_LINUX_PPC_VM_GLOBALS_LINUX_PPC_HPP
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/orderAccess_linux_ppc.inline.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/orderAccess_linux_ppc.inline.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/orderAccess_linux_ppc.inline.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/orderAccess_linux_ppc.inline.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,145 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -24774,9 +24761,9 @@
 +#undef inlasm_ppc_fence
 +
 +#endif // OS_CPU_LINUX_PPC_VM_ORDERACCESS_LINUX_PPC_INLINE_HPP
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/os_linux_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,608 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -25386,9 +25373,9 @@
 +  assert(((intptr_t)os::current_stack_pointer() & (StackAlignmentInBytes-1)) == 0, "incorrect stack alignment");
 +}
 +#endif
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/os_linux_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/os_linux_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/os_linux_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/os_linux_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,35 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -25425,9 +25412,9 @@
 +  static bool register_code_area(char *low, char *high) { return true; }
 +
 +#endif // OS_CPU_LINUX_PPC_VM_OS_LINUX_PPC_HPP
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/prefetch_linux_ppc.inline.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/prefetch_linux_ppc.inline.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/prefetch_linux_ppc.inline.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/prefetch_linux_ppc.inline.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,50 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -25479,9 +25466,9 @@
 +}
 +
 +#endif // OS_CPU_LINUX_PPC_VM_PREFETCH_LINUX_OJDKPPC_HPP
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,39 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -25522,9 +25509,9 @@
 +void ThreadLocalStorage::pd_set_thread(Thread* thread) {
 +  os::thread_local_storage_at_put(ThreadLocalStorage::thread_index(), thread);
 +}
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/threadLS_linux_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,36 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -25562,9 +25549,9 @@
 +  }
 +
 +#endif // OS_CPU_LINUX_PPC_VM_THREADLS_LINUX_PPC_HPP
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/thread_linux_ppc.cpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/thread_linux_ppc.cpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/thread_linux_ppc.cpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/thread_linux_ppc.cpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,36 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -25602,9 +25589,9 @@
 +}
 +
 +void JavaThread::cache_global_variables() { }
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/thread_linux_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/thread_linux_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/thread_linux_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/thread_linux_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,83 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -25689,9 +25676,9 @@
 +  intptr_t* last_interpreter_fp() { return _last_interpreter_fp; }
 +
 +#endif // OS_CPU_LINUX_PPC_VM_THREAD_LINUX_PPC_HPP
-diff -r 3348a8244d70 src/os_cpu/linux_ppc/vm/vmStructs_linux_ppc.hpp
---- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/linux_ppc/vm/vmStructs_linux_ppc.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/os_cpu/linux_ppc/vm/vmStructs_linux_ppc.hpp
+--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
++++ b/src/os_cpu/linux_ppc/vm/vmStructs_linux_ppc.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -0,0 +1,55 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -25748,9 +25735,9 @@
 +#define VM_LONG_CONSTANTS_OS_CPU(declare_constant, declare_preprocessor_constant, declare_c1_constant, declare_c2_constant, declare_c2_preprocessor_constant)
 +
 +#endif // OS_CPU_LINUX_PPC_VM_VMSTRUCTS_LINUX_PPC_HPP
-diff -r 3348a8244d70 src/share/vm/runtime/globals.hpp
---- a/src/share/vm/runtime/globals.hpp	Wed Jun 26 14:08:26 2013 +0200
-+++ b/src/share/vm/runtime/globals.hpp	Wed Jun 26 15:37:31 2013 +0200
+diff -r 9c1670b79eff src/share/vm/runtime/globals.hpp
+--- a/src/share/vm/runtime/globals.hpp	Thu Jul 04 11:11:56 2013 +0200
++++ b/src/share/vm/runtime/globals.hpp	Thu Jul 04 11:18:58 2013 +0200
 @@ -3609,7 +3609,7 @@
            NOT_LP64(LINUX_ONLY(2*G) NOT_LINUX(0)),                           \
            "Address to allocate shared memory region for class data")        \
--- a/ppc_patches/0013_basic_Aix_adaptions.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0013_basic_Aix_adaptions.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,12 +1,12 @@
 # HG changeset patch
-# Parent e970b8cc5c6fc2a7e8c03d9965936bfa55e2b52b
+# Parent a1db85708ffeb99ea31f24cef71a69f674baa3d1
 shared: Basic non-functional fixes needed for the Aix port.
 
 Added aix include alpha-sorted before BSD.
 
-diff -r e970b8cc5c6f src/os/posix/vm/os_posix.cpp
---- a/src/os/posix/vm/os_posix.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/os/posix/vm/os_posix.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/os/posix/vm/os_posix.cpp
+--- a/src/os/posix/vm/os_posix.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/os/posix/vm/os_posix.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -164,8 +164,8 @@
    if (rlim.rlim_cur == RLIM_INFINITY) st->print("infinity");
    else st->print("%uk", rlim.rlim_cur >> 10);
@@ -18,9 +18,9 @@
    st->print(", NPROC ");
    getrlimit(RLIMIT_NPROC, &rlim);
    if (rlim.rlim_cur == RLIM_INFINITY) st->print("infinity");
-diff -r e970b8cc5c6f src/share/vm/c1/c1_globals.hpp
---- a/src/share/vm/c1/c1_globals.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/c1/c1_globals.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/c1/c1_globals.hpp
+--- a/src/share/vm/c1/c1_globals.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/c1/c1_globals.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -47,6 +47,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "c1_globals_windows.hpp"
@@ -31,9 +31,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "c1_globals_bsd.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/classfile/classLoader.cpp
---- a/src/share/vm/classfile/classLoader.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/classfile/classLoader.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/classfile/classLoader.cpp
+--- a/src/share/vm/classfile/classLoader.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/classfile/classLoader.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -68,6 +68,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -44,9 +44,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/code/nmethod.hpp
---- a/src/share/vm/code/nmethod.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/code/nmethod.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/code/nmethod.hpp
+--- a/src/share/vm/code/nmethod.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/code/nmethod.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -265,7 +265,7 @@
            int comp_level);
  
@@ -56,9 +56,9 @@
  
    const char* reloc_string_for(u_char* begin, u_char* end);
    // Returns true if this thread changed the state of the nmethod or
-diff -r e970b8cc5c6f src/share/vm/code/relocInfo.hpp
---- a/src/share/vm/code/relocInfo.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/code/relocInfo.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/code/relocInfo.hpp
+--- a/src/share/vm/code/relocInfo.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/code/relocInfo.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -378,7 +378,7 @@
    // "immediate" in the prefix header word itself.  This optimization
    // is invisible outside this module.)
@@ -77,9 +77,9 @@
    assert(relocInfo::fits_into_immediate(datalen), "datalen in limits");
    return relocInfo(relocInfo::data_prefix_tag, relocInfo::RAW_BITS, relocInfo::datalen_tag | datalen);
  }
-diff -r e970b8cc5c6f src/share/vm/code/stubs.hpp
---- a/src/share/vm/code/stubs.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/code/stubs.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/code/stubs.hpp
+--- a/src/share/vm/code/stubs.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/code/stubs.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -36,6 +36,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -90,9 +90,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/code/vmreg.hpp
---- a/src/share/vm/code/vmreg.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/code/vmreg.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/code/vmreg.hpp
+--- a/src/share/vm/code/vmreg.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/code/vmreg.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -63,6 +63,14 @@
  // the current stack pointer.  Warped numbers are required during compilation
  // when we do not yet know how big the frame will be.
@@ -108,9 +108,9 @@
  class VMRegImpl;
  typedef VMRegImpl* VMReg;
  
-diff -r e970b8cc5c6f src/share/vm/compiler/disassembler.hpp
---- a/src/share/vm/compiler/disassembler.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/compiler/disassembler.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/compiler/disassembler.hpp
+--- a/src/share/vm/compiler/disassembler.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/compiler/disassembler.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -36,6 +36,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -121,9 +121,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp
---- a/src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp
+--- a/src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/gc_implementation/concurrentMarkSweep/adaptiveFreeList.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -122,7 +122,7 @@
  
  template <class Chunk>
@@ -133,9 +133,9 @@
  }
  
  template <class Chunk>
-diff -r e970b8cc5c6f src/share/vm/gc_implementation/concurrentMarkSweep/cmsAdaptiveSizePolicy.cpp
---- a/src/share/vm/gc_implementation/concurrentMarkSweep/cmsAdaptiveSizePolicy.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/gc_implementation/concurrentMarkSweep/cmsAdaptiveSizePolicy.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/gc_implementation/concurrentMarkSweep/cmsAdaptiveSizePolicy.cpp
+--- a/src/share/vm/gc_implementation/concurrentMarkSweep/cmsAdaptiveSizePolicy.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/gc_implementation/concurrentMarkSweep/cmsAdaptiveSizePolicy.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -37,6 +37,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -146,9 +146,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp
---- a/src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp
+--- a/src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/gc_implementation/parallelScavenge/parMarkBitMap.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -38,6 +38,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -159,9 +159,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp
---- a/src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp
+--- a/src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/gc_implementation/parallelScavenge/psVirtualspace.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -35,6 +35,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -172,9 +172,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/interpreter/bytecodeInterpreter.cpp
---- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/interpreter/bytecodeInterpreter.cpp
+--- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -67,6 +67,9 @@
  #ifdef TARGET_OS_ARCH_linux_ppc
  # include "orderAccess_linux_ppc.inline.hpp"
@@ -185,9 +185,9 @@
  #ifdef TARGET_OS_ARCH_bsd_x86
  # include "orderAccess_bsd_x86.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/libadt/port.hpp
---- a/src/share/vm/libadt/port.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/libadt/port.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/libadt/port.hpp
+--- a/src/share/vm/libadt/port.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/libadt/port.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -91,8 +91,6 @@
  #define IMPLEMENTATION
  #include <stdlib.h>
@@ -209,9 +209,9 @@
  
  //-----------------------------------------------------------------------------
  // Nice constants
-diff -r e970b8cc5c6f src/share/vm/memory/allocation.cpp
---- a/src/share/vm/memory/allocation.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/memory/allocation.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/memory/allocation.cpp
+--- a/src/share/vm/memory/allocation.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/memory/allocation.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -45,6 +45,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -222,9 +222,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/memory/allocation.hpp
---- a/src/share/vm/memory/allocation.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/memory/allocation.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/memory/allocation.hpp
+--- a/src/share/vm/memory/allocation.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/memory/allocation.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -218,7 +218,7 @@
  // Calling new or delete will result in fatal error.
  
@@ -243,9 +243,9 @@
    void* operator new(size_t size);
    void  operator delete(void* p);
    void* operator new [](size_t size);
-diff -r e970b8cc5c6f src/share/vm/memory/space.hpp
---- a/src/share/vm/memory/space.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/memory/space.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/memory/space.hpp
+--- a/src/share/vm/memory/space.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/memory/space.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -45,6 +45,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -256,9 +256,33 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/oops/typeArrayOop.hpp
---- a/src/share/vm/oops/typeArrayOop.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/oops/typeArrayOop.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/memory/universe.cpp
+--- a/src/share/vm/memory/universe.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/memory/universe.cpp	Mon Jul 01 14:15:23 2013 +0200
+@@ -745,7 +745,7 @@
+       // the correct no-access prefix.
+       // The final value will be set in initialize_heap() below.
+       Universe::set_narrow_oop_base((address)NarrowOopHeapMax);
+-#ifdef _WIN64
++#if defined(_WIN64) || defined(AIX)
+       if (UseLargePages) {
+         // Cannot allocate guard pages for implicit checks in indexed
+         // addressing mode when large pages are specified on windows.
+@@ -823,6 +823,11 @@
+       // Can't reserve heap below 32Gb.
+       // keep the Universe::narrow_oop_base() set in Universe::reserve_heap()
+       Universe::set_narrow_oop_shift(LogMinObjAlignmentInBytes);
++#ifdef AIX
++      // There is no protected page before the heap. This assures all oops
++      // are decoded so that NULL is preserverd, so this page will not be accessed.
++      Universe::set_narrow_oop_use_implicit_null_checks(false);
++#endif
+       if (verbose) {
+         tty->print(", %s: "PTR_FORMAT,
+             narrow_oop_mode_to_string(HeapBasedNarrowOop),
+diff -r a1db85708ffe src/share/vm/oops/typeArrayOop.hpp
+--- a/src/share/vm/oops/typeArrayOop.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/oops/typeArrayOop.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -51,6 +51,9 @@
  #ifdef TARGET_OS_ARCH_linux_ppc
  # include "orderAccess_linux_ppc.inline.hpp"
@@ -269,9 +293,9 @@
  #ifdef TARGET_OS_ARCH_bsd_x86
  # include "orderAccess_bsd_x86.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/opto/c2_globals.hpp
---- a/src/share/vm/opto/c2_globals.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/opto/c2_globals.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/opto/c2_globals.hpp
+--- a/src/share/vm/opto/c2_globals.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/opto/c2_globals.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -47,6 +47,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "c2_globals_windows.hpp"
@@ -282,9 +306,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "c2_globals_bsd.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/prims/forte.cpp
---- a/src/share/vm/prims/forte.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/prims/forte.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/prims/forte.cpp
+--- a/src/share/vm/prims/forte.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/prims/forte.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -605,7 +605,7 @@
  // Method to let libcollector know about a dynamically loaded function.
  // Because it is weakly bound, the calls become NOP's when the library
@@ -294,9 +318,9 @@
  // XXXDARWIN: Link errors occur even when __attribute__((weak_import))
  // is added
  #define collector_func_load(x0,x1,x2,x3,x4,x5,x6) (0)
-diff -r e970b8cc5c6f src/share/vm/prims/jvm.cpp
---- a/src/share/vm/prims/jvm.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/prims/jvm.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/prims/jvm.cpp
+--- a/src/share/vm/prims/jvm.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/prims/jvm.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -76,6 +76,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "jvm_windows.h"
@@ -307,9 +331,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "jvm_bsd.h"
  #endif
-diff -r e970b8cc5c6f src/share/vm/prims/jvm.h
---- a/src/share/vm/prims/jvm.h	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/prims/jvm.h	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/prims/jvm.h
+--- a/src/share/vm/prims/jvm.h	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/prims/jvm.h	Mon Jul 01 14:15:23 2013 +0200
 @@ -35,6 +35,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "jvm_windows.h"
@@ -320,9 +344,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "jvm_bsd.h"
  #endif
-diff -r e970b8cc5c6f src/share/vm/prims/nativeLookup.cpp
---- a/src/share/vm/prims/nativeLookup.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/prims/nativeLookup.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/prims/nativeLookup.cpp
+--- a/src/share/vm/prims/nativeLookup.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/prims/nativeLookup.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -50,6 +50,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -333,9 +357,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/arguments.cpp
---- a/src/share/vm/runtime/arguments.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/arguments.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/arguments.cpp
+--- a/src/share/vm/runtime/arguments.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/arguments.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -49,6 +49,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -346,9 +370,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/atomic.cpp
---- a/src/share/vm/runtime/atomic.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/atomic.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/atomic.cpp
+--- a/src/share/vm/runtime/atomic.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/atomic.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -33,6 +33,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -359,9 +383,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/atomic.inline.hpp
---- a/src/share/vm/runtime/atomic.inline.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/atomic.inline.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/atomic.inline.hpp
+--- a/src/share/vm/runtime/atomic.inline.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/atomic.inline.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -57,6 +57,11 @@
  # include "atomic_windows_x86.inline.hpp"
  #endif
@@ -374,9 +398,9 @@
  // BSD
  #ifdef TARGET_OS_ARCH_bsd_x86
  # include "atomic_bsd_x86.inline.hpp"
-diff -r e970b8cc5c6f src/share/vm/runtime/globals.hpp
---- a/src/share/vm/runtime/globals.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/globals.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/globals.hpp
+--- a/src/share/vm/runtime/globals.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/globals.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -61,6 +61,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "globals_windows.hpp"
@@ -427,9 +451,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "c2_globals_bsd.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/interfaceSupport.hpp
---- a/src/share/vm/runtime/interfaceSupport.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/interfaceSupport.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/interfaceSupport.hpp
+--- a/src/share/vm/runtime/interfaceSupport.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/interfaceSupport.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -107,6 +107,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "interfaceSupport_windows.hpp"
@@ -440,9 +464,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "interfaceSupport_bsd.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/javaFrameAnchor.hpp
---- a/src/share/vm/runtime/javaFrameAnchor.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/javaFrameAnchor.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/javaFrameAnchor.hpp
+--- a/src/share/vm/runtime/javaFrameAnchor.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/javaFrameAnchor.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -50,6 +50,9 @@
  #ifdef TARGET_OS_ARCH_linux_ppc
  # include "orderAccess_linux_ppc.inline.hpp"
@@ -453,9 +477,9 @@
  #ifdef TARGET_OS_ARCH_bsd_x86
  # include "orderAccess_bsd_x86.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/mutexLocker.hpp
---- a/src/share/vm/runtime/mutexLocker.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/mutexLocker.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/mutexLocker.hpp
+--- a/src/share/vm/runtime/mutexLocker.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/mutexLocker.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -36,6 +36,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -466,9 +490,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/os.hpp
---- a/src/share/vm/runtime/os.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/os.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/os.hpp
+--- a/src/share/vm/runtime/os.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/os.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -39,6 +39,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "jvm_windows.h"
@@ -479,7 +503,7 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "jvm_bsd.h"
  #endif
-@@ -725,6 +728,10 @@
+@@ -743,6 +746,10 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.hpp"
  #endif
@@ -490,7 +514,7 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_posix.hpp"
  # include "os_bsd.hpp"
-@@ -753,6 +760,9 @@
+@@ -771,6 +778,9 @@
  #ifdef TARGET_OS_ARCH_linux_ppc
  # include "os_linux_ppc.hpp"
  #endif
@@ -500,9 +524,9 @@
  #ifdef TARGET_OS_ARCH_bsd_x86
  # include "os_bsd_x86.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/osThread.hpp
---- a/src/share/vm/runtime/osThread.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/osThread.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/osThread.hpp
+--- a/src/share/vm/runtime/osThread.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/osThread.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -105,6 +105,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "osThread_windows.hpp"
@@ -513,9 +537,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "osThread_bsd.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/sharedRuntimeTrans.cpp
---- a/src/share/vm/runtime/sharedRuntimeTrans.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/sharedRuntimeTrans.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/sharedRuntimeTrans.cpp
+--- a/src/share/vm/runtime/sharedRuntimeTrans.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/sharedRuntimeTrans.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -56,10 +56,12 @@
  # define __LO(x) *(1+(int*)&x)
  #endif
@@ -545,9 +569,9 @@
  
  /* __ieee754_log(x)
   * Return the logrithm of x
-diff -r e970b8cc5c6f src/share/vm/runtime/sharedRuntimeTrig.cpp
---- a/src/share/vm/runtime/sharedRuntimeTrig.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/sharedRuntimeTrig.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/sharedRuntimeTrig.cpp
+--- a/src/share/vm/runtime/sharedRuntimeTrig.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/sharedRuntimeTrig.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -656,6 +656,13 @@
  C5  =  2.08757232129817482790e-09, /* 0x3E21EE9E, 0xBDB4B1C4 */
  C6  = -1.13596475577881948265e-11; /* 0xBDA8FAE9, 0xBE8838D4 */
@@ -562,9 +586,9 @@
  static double __kernel_cos(double x, double y)
  {
    double a,hz,z,r,qx;
-diff -r e970b8cc5c6f src/share/vm/runtime/thread.hpp
---- a/src/share/vm/runtime/thread.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/thread.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/thread.hpp
+--- a/src/share/vm/runtime/thread.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/thread.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -1711,6 +1711,9 @@
  #ifdef TARGET_OS_ARCH_linux_ppc
  # include "thread_linux_ppc.hpp"
@@ -575,9 +599,9 @@
  #ifdef TARGET_OS_ARCH_bsd_x86
  # include "thread_bsd_x86.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/thread.inline.hpp
---- a/src/share/vm/runtime/thread.inline.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/thread.inline.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/thread.inline.hpp
+--- a/src/share/vm/runtime/thread.inline.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/thread.inline.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -37,6 +37,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "thread_windows.inline.hpp"
@@ -588,9 +612,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "thread_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/threadLocalStorage.hpp
---- a/src/share/vm/runtime/threadLocalStorage.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/threadLocalStorage.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/threadLocalStorage.hpp
+--- a/src/share/vm/runtime/threadLocalStorage.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/threadLocalStorage.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -68,6 +68,9 @@
  #ifdef TARGET_OS_ARCH_linux_ppc
  # include "threadLS_linux_ppc.hpp"
@@ -601,9 +625,9 @@
  #ifdef TARGET_OS_ARCH_bsd_x86
  # include "threadLS_bsd_x86.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/timer.cpp
---- a/src/share/vm/runtime/timer.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/timer.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/timer.cpp
+--- a/src/share/vm/runtime/timer.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/timer.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -35,6 +35,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -614,9 +638,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/virtualspace.cpp
---- a/src/share/vm/runtime/virtualspace.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/virtualspace.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/virtualspace.cpp
+--- a/src/share/vm/runtime/virtualspace.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/virtualspace.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -36,6 +36,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -627,9 +651,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/vmStructs.cpp
---- a/src/share/vm/runtime/vmStructs.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/vmStructs.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/vmStructs.cpp
+--- a/src/share/vm/runtime/vmStructs.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/vmStructs.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -143,6 +143,9 @@
  #ifdef TARGET_OS_ARCH_linux_ppc
  # include "vmStructs_linux_ppc.hpp"
@@ -640,9 +664,9 @@
  #ifdef TARGET_OS_ARCH_bsd_x86
  # include "vmStructs_bsd_x86.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/runtime/vm_version.cpp
---- a/src/share/vm/runtime/vm_version.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/runtime/vm_version.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/runtime/vm_version.cpp
+--- a/src/share/vm/runtime/vm_version.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/runtime/vm_version.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -177,6 +177,7 @@
  #define OS       LINUX_ONLY("linux")             \
                   WINDOWS_ONLY("windows")         \
@@ -661,9 +685,9 @@
      #else
        #define HOTSPOT_BUILD_COMPILER "unknown compiler"
      #endif
-diff -r e970b8cc5c6f src/share/vm/utilities/accessFlags.cpp
---- a/src/share/vm/utilities/accessFlags.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/accessFlags.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/accessFlags.cpp
+--- a/src/share/vm/utilities/accessFlags.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/accessFlags.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -34,6 +34,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -674,9 +698,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/utilities/bitMap.cpp
---- a/src/share/vm/utilities/bitMap.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/bitMap.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/bitMap.cpp
+--- a/src/share/vm/utilities/bitMap.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/bitMap.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -35,6 +35,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -687,9 +711,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/utilities/debug.hpp
---- a/src/share/vm/utilities/debug.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/debug.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/debug.hpp
+--- a/src/share/vm/utilities/debug.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/debug.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -25,8 +25,8 @@
  #ifndef SHARE_VM_UTILITIES_DEBUG_HPP
  #define SHARE_VM_UTILITIES_DEBUG_HPP
@@ -700,9 +724,9 @@
  
  #include <stdarg.h>
  
-diff -r e970b8cc5c6f src/share/vm/utilities/decoder.cpp
---- a/src/share/vm/utilities/decoder.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/decoder.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/decoder.cpp
+--- a/src/share/vm/utilities/decoder.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/decoder.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -33,6 +33,8 @@
    #include "decoder_windows.hpp"
  #elif defined(__APPLE__)
@@ -721,9 +745,9 @@
  #else
    decoder = new (std::nothrow)ElfDecoder();
  #endif
-diff -r e970b8cc5c6f src/share/vm/utilities/globalDefinitions.hpp
---- a/src/share/vm/utilities/globalDefinitions.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/globalDefinitions.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/globalDefinitions.hpp
+--- a/src/share/vm/utilities/globalDefinitions.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/globalDefinitions.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -38,6 +38,9 @@
  #ifdef TARGET_COMPILER_sparcWorks
  # include "utilities/globalDefinitions_sparcWorks.hpp"
@@ -734,9 +758,9 @@
  
  #include "utilities/macros.hpp"
  
-diff -r e970b8cc5c6f src/share/vm/utilities/histogram.hpp
---- a/src/share/vm/utilities/histogram.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/histogram.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/histogram.hpp
+--- a/src/share/vm/utilities/histogram.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/histogram.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -37,6 +37,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -747,9 +771,9 @@
  #ifdef TARGET_OS_FAMILY_bsd
  # include "os_bsd.inline.hpp"
  #endif
-diff -r e970b8cc5c6f src/share/vm/utilities/macros.hpp
---- a/src/share/vm/utilities/macros.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/macros.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/macros.hpp
+--- a/src/share/vm/utilities/macros.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/macros.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -254,6 +254,14 @@
  #define NOT_LINUX(code) code
  #endif
@@ -765,9 +789,9 @@
  #ifdef SOLARIS
  #define SOLARIS_ONLY(code) code
  #define NOT_SOLARIS(code)
-diff -r e970b8cc5c6f src/share/vm/utilities/ostream.cpp
---- a/src/share/vm/utilities/ostream.cpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/ostream.cpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/ostream.cpp
+--- a/src/share/vm/utilities/ostream.cpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/ostream.cpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -39,6 +39,9 @@
  #ifdef TARGET_OS_FAMILY_windows
  # include "os_windows.inline.hpp"
@@ -787,16 +811,16 @@
  #include <sys/types.h>
  #include <sys/socket.h>
  #include <netinet/in.h>
-diff -r e970b8cc5c6f src/share/vm/utilities/resourceHash.hpp
---- a/src/share/vm/utilities/resourceHash.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/resourceHash.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/resourceHash.hpp
+--- a/src/share/vm/utilities/resourceHash.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/resourceHash.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -44,8 +44,12 @@
  
  template<
      typename K, typename V,
 -    typename ResourceHashtableFns<K>::hash_fn   HASH   = primitive_hash<K>,
 -    typename ResourceHashtableFns<K>::equals_fn EQUALS = primitive_equals<K>,
-+    // xlC down not compile this:
++    // xlC does not compile this:
 +    // http://stackoverflow.com/questions/8532961/template-argument-of-type-that-is-defined-by-inner-typedef-from-other-template-c
 +    //typename ResourceHashtableFns<K>::hash_fn   HASH   = primitive_hash<K>,
 +    //typename ResourceHashtableFns<K>::equals_fn EQUALS = primitive_equals<K>,
@@ -805,9 +829,9 @@
      unsigned SIZE = 256
      >
  class ResourceHashtable : public ResourceObj {
-diff -r e970b8cc5c6f src/share/vm/utilities/taskqueue.hpp
---- a/src/share/vm/utilities/taskqueue.hpp	Mon Jun 24 10:25:20 2013 +0200
-+++ b/src/share/vm/utilities/taskqueue.hpp	Mon Jun 24 10:36:31 2013 +0200
+diff -r a1db85708ffe src/share/vm/utilities/taskqueue.hpp
+--- a/src/share/vm/utilities/taskqueue.hpp	Mon Jul 01 14:11:26 2013 +0200
++++ b/src/share/vm/utilities/taskqueue.hpp	Mon Jul 01 14:15:23 2013 +0200
 @@ -53,6 +53,9 @@
  #ifdef TARGET_OS_ARCH_linux_ppc
  # include "orderAccess_linux_ppc.inline.hpp"
--- a/ppc_patches/0015_aix_ppc_files.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0015_aix_ppc_files.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,13 +1,13 @@
 # HG changeset patch
-# Parent 4acea56cea4c90d9df275761feed0626ecd2ea7f
+# Parent b6c4ef4134dfc60571d11c1cf077263e36d8099e
 aix: AIX platform files as required to start up the interpreter.
 
 With this change the AIX vm should compile as jvmgcore and run
 purely interpreted.
 
-diff -r 4acea56cea4c src/os/aix/vm/attachListener_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/attachListener_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/attachListener_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/attachListener_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,551 @@
 +/*
 + * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -560,9 +560,9 @@
 +  // Cleanup server socket to detach clients.
 +  listener_cleanup();
 +}
-diff -r 4acea56cea4c src/os/aix/vm/c2_globals_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/c2_globals_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/c2_globals_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/c2_globals_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,37 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -601,9 +601,9 @@
 +//
 +
 +#endif // OS_AIX_VM_C2_GLOBALS_AIX_HPP
-diff -r 4acea56cea4c src/os/aix/vm/decoder_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/decoder_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/decoder_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/decoder_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,48 @@
 +/*
 + * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
@@ -653,9 +653,9 @@
 +    return false;
 +  }
 +};
-diff -r 4acea56cea4c src/os/aix/vm/globals_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/globals_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/globals_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/globals_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,63 @@
 +/*
 + * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
@@ -720,9 +720,9 @@
 +define_pd_global(bool, UseThreadPriorities, true) ;
 +
 +#endif // OS_AIX_VM_GLOBALS_AIX_HPP
-diff -r 4acea56cea4c src/os/aix/vm/interfaceSupport_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/interfaceSupport_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/interfaceSupport_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/interfaceSupport_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,35 @@
 +/*
 + * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -759,9 +759,9 @@
 +}
 +
 +#endif // OS_LINUX_VM_INTERFACESUPPORT_LINUX_HPP
-diff -r 4acea56cea4c src/os/aix/vm/jsig.c
+diff -r b6c4ef4134df src/os/aix/vm/jsig.c
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/jsig.c	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/jsig.c	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,233 @@
 +/*
 + * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -996,9 +996,9 @@
 +  }
 +  return NULL;
 +}
-diff -r 4acea56cea4c src/os/aix/vm/jvm_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/jvm_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/jvm_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/jvm_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,201 @@
 +/*
 + * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
@@ -1201,9 +1201,9 @@
 +  }
 +  return false;
 +}
-diff -r 4acea56cea4c src/os/aix/vm/jvm_aix.h
+diff -r b6c4ef4134df src/os/aix/vm/jvm_aix.h
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/jvm_aix.h	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/jvm_aix.h	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,123 @@
 +/*
 + * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -1328,9 +1328,9 @@
 +#endif /* JVM_MD_H */
 +
 +#endif // OS_AIX_VM_JVM_AIX_H
-diff -r 4acea56cea4c src/os/aix/vm/libperfstat_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/libperfstat_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/libperfstat_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/libperfstat_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,124 @@
 +/*
 + * Copyright 2012, 2013 SAP AG. All rights reserved.
@@ -1456,9 +1456,9 @@
 +  assert(g_fun_perfstat_reset, "");
 +  g_fun_perfstat_reset();
 +}
-diff -r 4acea56cea4c src/os/aix/vm/libperfstat_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/libperfstat_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/libperfstat_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/libperfstat_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,59 @@
 +/*
 + * Copyright 2012, 2013 SAP AG. All rights reserved.
@@ -1519,9 +1519,9 @@
 +};
 +
 +#endif // OS_AIX_VM_LIBPERFSTAT_AIX_HPP
-diff -r 4acea56cea4c src/os/aix/vm/loadlib_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/loadlib_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/loadlib_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/loadlib_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,185 @@
 +/*
 + * Copyright 2012, 2013 SAP AG. All rights reserved.
@@ -1708,9 +1708,9 @@
 +
 +}
 +
-diff -r 4acea56cea4c src/os/aix/vm/loadlib_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/loadlib_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/loadlib_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/loadlib_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,128 @@
 +/*
 + * Copyright 2012, 2013 SAP AG. All rights reserved.
@@ -1840,9 +1840,9 @@
 +
 +
 +#endif // OS_AIX_VM_LOADLIB_AIX_HPP
-diff -r 4acea56cea4c src/os/aix/vm/mutex_aix.inline.hpp
+diff -r b6c4ef4134df src/os/aix/vm/mutex_aix.inline.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/mutex_aix.inline.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/mutex_aix.inline.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,33 @@
 +/*
 + * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -1877,9 +1877,9 @@
 +#include "thread_aix.inline.hpp"
 +
 +#endif // OS_AIX_VM_MUTEX_AIX_INLINE_HPP
-diff -r 4acea56cea4c src/os/aix/vm/osThread_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/osThread_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/osThread_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/osThread_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,58 @@
 +/*
 + * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
@@ -1939,9 +1939,9 @@
 +void OSThread::pd_destroy() {
 +  delete _startThread_lock;
 +}
-diff -r 4acea56cea4c src/os/aix/vm/osThread_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/osThread_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/osThread_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/osThread_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,144 @@
 +/*
 + * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -2087,10 +2087,10 @@
 +  } _last_cpu_times;
 +
 +#endif // OS_AIX_VM_OSTHREAD_AIX_HPP
-diff -r 4acea56cea4c src/os/aix/vm/os_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/os_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/os_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
-@@ -0,0 +1,5098 @@
++++ b/src/os/aix/vm/os_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
+@@ -0,0 +1,5120 @@
 +/*
 + * Copyright (c) 1999, 2012, Oracle and/or its affiliates. All rights reserved.
 + * Copyright 2012, 2013 SAP AG. All rights reserved.
@@ -4214,7 +4214,7 @@
 +  return os::Aix::page_size();
 +}
 +
-+bool os::pd_commit_memory(char* addr, size_t size, bool exec) {
++int os::Aix::commit_memory_impl(char* addr, size_t size, bool exec) {
 +
 +  // Commit is a noop. There is no explicit commit
 +  // needed on AIX. Memory is committed when touched.
@@ -4237,11 +4237,33 @@
 +  UNLOCK_SHMBK
 +#endif // ASSERT
 +
-+  return true;
-+}
-+
-+bool os::pd_commit_memory(char* addr, size_t size, size_t alignment_hint, bool exec) {
-+  return commit_memory(addr, size, exec);
++  return 0;
++}
++
++bool os::pd_commit_memory(char* addr, size_t size, bool exec) {
++  return os::Aix::commit_memory_impl(addr, size, exec) == 0;
++}
++
++void os::pd_commit_memory_or_exit(char* addr, size_t size, bool exec,
++                                  const char* mesg) {
++  assert(mesg != NULL, "mesg must be specified");
++  os::Aix::commit_memory_impl(addr, size, exec);
++}
++
++int os::Aix::commit_memory_impl(char* addr, size_t size,
++                                size_t alignment_hint, bool exec) {
++  return os::Aix::commit_memory_impl(addr, size, exec);
++}
++
++bool os::pd_commit_memory(char* addr, size_t size, size_t alignment_hint,
++                          bool exec) {
++  return os::Aix::commit_memory_impl(addr, size, alignment_hint, exec) == 0;
++}
++
++void os::pd_commit_memory_or_exit(char* addr, size_t size,
++                                  size_t alignment_hint, bool exec,
++                                  const char* mesg) {
++  os::Aix::commit_memory_impl(addr, size, alignment_hint, exec);
 +}
 +
 +bool os::pd_uncommit_memory(char* addr, size_t size) {
@@ -7189,10 +7211,10 @@
 +
 +  return strlen(buffer);
 +}
-diff -r 4acea56cea4c src/os/aix/vm/os_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/os_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/os_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
-@@ -0,0 +1,381 @@
++++ b/src/os/aix/vm/os_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
+@@ -0,0 +1,385 @@
 +/*
 + * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
 + * Copyright 2013 SAP AG. All rights reserved.
@@ -7330,6 +7352,10 @@
 +  // one of Aix::on_pase(), Aix::os_version().
 +  static void initialize_os_info();
 +
++  static int commit_memory_impl(char* addr, size_t bytes, bool exec);
++  static int commit_memory_impl(char* addr, size_t bytes,
++                                size_t alignment_hint, bool exec);
++
 +  // Scan environment for important settings which might effect the
 +  // VM. Trace out settings. Warn about invalid settings and/or
 +  // correct them.
@@ -7574,9 +7600,9 @@
 +};
 +
 +#endif // OS_AIX_VM_OS_AIX_HPP
-diff -r 4acea56cea4c src/os/aix/vm/os_aix.inline.hpp
+diff -r b6c4ef4134df src/os/aix/vm/os_aix.inline.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/os_aix.inline.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/os_aix.inline.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,286 @@
 +/*
 + * Copyright (c) 1999, 2011, Oracle and/or its affiliates. All rights reserved.
@@ -7864,9 +7890,9 @@
 +  return ::setsockopt(fd, level, optname, optval, optlen);
 +}
 +#endif // OS_AIX_VM_OS_AIX_INLINE_HPP
-diff -r 4acea56cea4c src/os/aix/vm/os_share_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/os_share_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/os_share_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/os_share_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,37 @@
 +/*
 + * Copyright (c) 1999, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -7905,9 +7931,9 @@
 +#define PROCFILE_LENGTH 128
 +
 +#endif // OS_AIX_VM_OS_SHARE_AIX_HPP
-diff -r 4acea56cea4c src/os/aix/vm/perfMemory_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/perfMemory_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/perfMemory_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/perfMemory_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,1026 @@
 +/*
 + * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -7971,7 +7997,7 @@
 +  }
 +
 +  // commit memory
-+  if (!os::commit_memory(mapAddress, size)) {
++  if (!os::commit_memory(mapAddress, size, !ExecMem)) {
 +    if (PrintMiscellaneous && Verbose) {
 +      warning("Could not commit PerfData memory\n");
 +    }
@@ -8935,9 +8961,9 @@
 +char* PerfMemory::backing_store_filename() {
 +  return backing_store_file_name;
 +}
-diff -r 4acea56cea4c src/os/aix/vm/porting_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/porting_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/porting_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/porting_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,367 @@
 +/*
 + * Copyright 2012, 2013 SAP AG. All rights reserved.
@@ -9306,9 +9332,9 @@
 +  return rc; // error: return 0 [sic]
 +
 +}
-diff -r 4acea56cea4c src/os/aix/vm/porting_aix.hpp
+diff -r b6c4ef4134df src/os/aix/vm/porting_aix.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/porting_aix.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/porting_aix.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,81 @@
 +/*
 + * Copyright 2012, 2013 SAP AG. All rights reserved.
@@ -9391,9 +9417,9 @@
 +      const struct tbtable** p_tb,     // [out] optional: ptr to traceback table to get further information
 +      char* p_errmsg, size_t errmsglen // [out] optional: user provided buffer for error messages
 +    );
-diff -r 4acea56cea4c src/os/aix/vm/threadCritical_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/threadCritical_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/threadCritical_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/threadCritical_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,68 @@
 +/*
 + * Copyright (c) 2001, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -9463,9 +9489,9 @@
 +    guarantee(ret == 0, "fatal error with pthread_mutex_unlock()");
 +  }
 +}
-diff -r 4acea56cea4c src/os/aix/vm/thread_aix.inline.hpp
+diff -r b6c4ef4134df src/os/aix/vm/thread_aix.inline.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/thread_aix.inline.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/thread_aix.inline.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,42 @@
 +/*
 + * Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
@@ -9509,9 +9535,9 @@
 +inline void ThreadLocalStorage::pd_invalidate_all() {} // nothing to do
 +
 +#endif // OS_AIX_VM_THREAD_AIX_INLINE_HPP
-diff -r 4acea56cea4c src/os/aix/vm/vmError_aix.cpp
+diff -r b6c4ef4134df src/os/aix/vm/vmError_aix.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os/aix/vm/vmError_aix.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os/aix/vm/vmError_aix.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,122 @@
 +/*
 + * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -9635,9 +9661,9 @@
 +
 +  sigthreadmask(SIG_UNBLOCK, &newset, NULL);
 +}
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/atomic_aix_ppc.inline.hpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/atomic_aix_ppc.inline.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/atomic_aix_ppc.inline.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/atomic_aix_ppc.inline.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,401 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10040,9 +10066,9 @@
 +#undef strasm_ppc_nobarrier_clobber_memory
 +
 +#endif // OS_CPU_AIX_OJDKPPC_VM_ATOMIC_AIX_PPC_INLINE_HPP
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/globals_aix_ppc.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,54 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10098,9 +10124,9 @@
 +define_pd_global(bool, UseVectoredExceptions,    false);
 +
 +#endif // OS_CPU_AIX_OJDKPPC_VM_GLOBALS_AIX_PPC_HPP
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/orderAccess_aix_ppc.inline.hpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/orderAccess_aix_ppc.inline.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/orderAccess_aix_ppc.inline.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/orderAccess_aix_ppc.inline.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,147 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10249,9 +10275,9 @@
 +#undef inlasm_ppc_fence
 +
 +#endif // OS_CPU_AIX_OJDKPPC_VM_ORDERACCESS_AIX_PPC_INLINE_HPP
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/os_aix_ppc.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,560 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10813,9 +10839,9 @@
 +  assert(((intptr_t)os::current_stack_pointer() & (StackAlignmentInBytes-1)) == 0, "incorrect stack alignment");
 +}
 +#endif
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/os_aix_ppc.hpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/os_aix_ppc.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/os_aix_ppc.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/os_aix_ppc.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,35 @@
 +/*
 + * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10852,9 +10878,9 @@
 +  static bool register_code_area(char *low, char *high) { return true; }
 +
 +#endif // OS_CPU_AIX_OJDKPPC_VM_OS_AIX_PPC_HPP
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/prefetch_aix_ppc.inline.hpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/prefetch_aix_ppc.inline.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/prefetch_aix_ppc.inline.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/prefetch_aix_ppc.inline.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,58 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10914,9 +10940,9 @@
 +}
 +
 +#endif // OS_CPU_AIX_PPC_64_VM_PREFETCH_AIX_PPC_64_INLINE_HPP
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.cpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,40 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10958,9 +10984,9 @@
 +void ThreadLocalStorage::pd_set_thread(Thread* thread) {
 +  os::thread_local_storage_at_put(ThreadLocalStorage::thread_index(), thread);
 +}
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.hpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/threadLS_aix_ppc.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,36 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -10998,9 +11024,9 @@
 +  }
 +
 +#endif // OS_CPU_AIX_OJDKPPC_VM_THREADLS_AIX_PPC_HPP
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/thread_aix_ppc.cpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/thread_aix_ppc.cpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/thread_aix_ppc.cpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/thread_aix_ppc.cpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,36 @@
 +/*
 + * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -11038,9 +11064,9 @@
 +}
 +
 +void JavaThread::cache_global_variables() { }
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/thread_aix_ppc.hpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/thread_aix_ppc.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/thread_aix_ppc.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/thread_aix_ppc.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,79 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -11121,9 +11147,9 @@
 +  intptr_t* last_interpreter_fp() { return _last_interpreter_fp; }
 +
 +#endif // OS_CPU_AIX_OJDKPPC_VM_THREAD_AIX_PPC_HPP
-diff -r 4acea56cea4c src/os_cpu/aix_ppc/vm/vmStructs_aix_ppc.hpp
+diff -r b6c4ef4134df src/os_cpu/aix_ppc/vm/vmStructs_aix_ppc.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/os_cpu/aix_ppc/vm/vmStructs_aix_ppc.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/os_cpu/aix_ppc/vm/vmStructs_aix_ppc.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,55 @@
 +/*
 + * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
@@ -11180,9 +11206,9 @@
 +#define VM_LONG_CONSTANTS_OS_CPU(declare_constant, declare_preprocessor_constant, declare_c1_constant, declare_c2_constant, declare_c2_preprocessor_constant)
 +
 +#endif // OS_CPU_AIX_OJDKPPC_VM_VMSTRUCTS_AIX_PPC_HPP
-diff -r 4acea56cea4c src/share/vm/utilities/globalDefinitions_xlc.hpp
+diff -r b6c4ef4134df src/share/vm/utilities/globalDefinitions_xlc.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/share/vm/utilities/globalDefinitions_xlc.hpp	Wed Jun 26 15:35:51 2013 +0200
++++ b/src/share/vm/utilities/globalDefinitions_xlc.hpp	Wed Jul 03 13:00:32 2013 +0200
 @@ -0,0 +1,202 @@
 +/*
 + * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
--- a/ppc_patches/0102_C_interpreter-implement_G1_support.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0102_C_interpreter-implement_G1_support.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,7 +1,6 @@
 # HG changeset patch
 # Parent 6df5cb7b42afb6f1f88ea9ebade97fea10fcc463
-C-interpreter: implement G1 support
-
+8019517: PPC64 (part 102): cppInterpreter: implement G1 support
 diff -r 6df5cb7b42af src/share/vm/interpreter/bytecodeInterpreter.cpp
 --- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Apr 26 10:22:25 2013 +0200
 +++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Apr 26 10:28:51 2013 +0200
--- a/ppc_patches/0103_C_interpreter-support_method_handles.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0103_C_interpreter-support_method_handles.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,7 +1,6 @@
 # HG changeset patch
 # Parent 302d2b4626846820b76e0a0f39d82930e823dfb0
-C-interpreter: method handles support
-
+8019519: PPC64 (part 103): cppInterpreter: implement support for early return
 diff -r 302d2b462684 src/share/vm/interpreter/bytecodeInterpreter.cpp
 --- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jun 24 10:26:57 2013 +0200
 +++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jun 24 10:28:14 2013 +0200
--- a/ppc_patches/0104_C_interpreter-support_compressed_Oops.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0104_C_interpreter-support_compressed_Oops.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,6 +1,6 @@
 # HG changeset patch
 # Parent 81f420fdea5f465b4b7a0bfe18843a699aef64b6
-C-interpreter: implement support for compressed Oops.
+8019518: PPC64 (part 103): cppInterpreter: implement support for compressed Oops
 
 diff -r 81f420fdea5f src/share/vm/interpreter/bytecodeInterpreter.cpp
 --- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jun 24 12:32:37 2013 +0200
@@ -26,53 +26,3 @@
        CASE(_baload):
            ARRAY_LOADTO32(T_BYTE, jbyte,  "%d",   STACK_INT, 0);
        CASE(_caload):
-diff -r 81f420fdea5f src/share/vm/memory/universe.cpp
---- a/src/share/vm/memory/universe.cpp	Mon Jun 24 12:32:37 2013 +0200
-+++ b/src/share/vm/memory/universe.cpp	Mon Jun 24 12:32:58 2013 +0200
-@@ -740,7 +740,7 @@
-       // the correct no-access prefix.
-       // The final value will be set in initialize_heap() below.
-       Universe::set_narrow_oop_base((address)NarrowOopHeapMax);
--#ifdef _WIN64
-+#if defined(_WIN64) || defined(AIX)
-       if (UseLargePages) {
-         // Cannot allocate guard pages for implicit checks in indexed
-         // addressing mode when large pages are specified on windows.
-@@ -818,6 +818,11 @@
-       // Can't reserve heap below 32Gb.
-       // keep the Universe::narrow_oop_base() set in Universe::reserve_heap()
-       Universe::set_narrow_oop_shift(LogMinObjAlignmentInBytes);
-+#ifdef AIX
-+      // There is no protected page before the heap. This assures all oops
-+      // are decoded so that NULL is preserverd, so this page will not be accessed.
-+      Universe::set_narrow_oop_use_implicit_null_checks(false);
-+#endif
-       if (verbose) {
-         tty->print(", %s: "PTR_FORMAT,
-             narrow_oop_mode_to_string(HeapBasedNarrowOop),
-@@ -1352,9 +1357,7 @@
- static uintptr_t _verify_oop_data[2]   = {0, (uintptr_t)-1};
- static uintptr_t _verify_klass_data[2] = {0, (uintptr_t)-1};
- 
--
- #ifndef PRODUCT
--
- static void calculate_verify_data(uintptr_t verify_data[2],
-                                   HeapWord* low_boundary,
-                                   HeapWord* high_boundary) {
-diff -r 81f420fdea5f src/share/vm/runtime/arguments.cpp
---- a/src/share/vm/runtime/arguments.cpp	Mon Jun 24 12:32:37 2013 +0200
-+++ b/src/share/vm/runtime/arguments.cpp	Mon Jun 24 12:32:58 2013 +0200
-@@ -3582,10 +3582,10 @@
-   // Clear flags not supported by the C++ interpreter
- #if !defined(PPC64)
-   FLAG_SET_DEFAULT(UseBiasedLocking, false);
-+  LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
-+  LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedKlassPointers, false));
- #endif // !PPC64
-   FLAG_SET_DEFAULT(ProfileInterpreter, false);
--  LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
--  LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedKlassPointers, false));
- #endif // CC_INTERP
- 
- #ifdef COMPILER2
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ppc_patches/0105-2_C_interpreter-enable_new_features.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -0,0 +1,40 @@
+# HG changeset patch
+# Parent 16e89bdcc774b2ef0e900b4bbf0cd4266899d951
+
+diff -r 16e89bdcc774 src/share/vm/prims/jvmtiManageCapabilities.cpp
+--- a/src/share/vm/prims/jvmtiManageCapabilities.cpp	Mon Jul 01 14:15:35 2013 +0200
++++ b/src/share/vm/prims/jvmtiManageCapabilities.cpp	Mon Jul 01 14:50:19 2013 +0200
+@@ -117,10 +117,10 @@
+   jvmtiCapabilities jc;
+ 
+   memset(&jc, 0, sizeof(jc));
+-#ifndef CC_INTERP
++#ifndef ZERO
+   jc.can_pop_frame = 1;
+   jc.can_force_early_return = 1;
+-#endif // !CC_INTERP
++#endif // ZERO
+   jc.can_get_source_debug_extension = 1;
+   jc.can_access_local_variables = 1;
+   jc.can_maintain_original_method_order = 1;
+diff -r 16e89bdcc774 src/share/vm/runtime/arguments.cpp
+--- a/src/share/vm/runtime/arguments.cpp	Mon Jul 01 14:15:35 2013 +0200
++++ b/src/share/vm/runtime/arguments.cpp	Mon Jul 01 14:50:19 2013 +0200
+@@ -3574,12 +3574,15 @@
+     UseBiasedLocking = false;
+   }
+ 
+-#ifdef CC_INTERP
++#ifdef ZERO
+   // Clear flags not supported by the C++ interpreter
+-  FLAG_SET_DEFAULT(ProfileInterpreter, false);
+   FLAG_SET_DEFAULT(UseBiasedLocking, false);
+   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
+   LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedKlassPointers, false));
++#endif // ZERO
++
++#ifdef CC_INTERP
++  FLAG_SET_DEFAULT(ProfileInterpreter, false);
+ #endif // CC_INTERP
+ 
+ #ifdef COMPILER2
--- a/ppc_patches/0105_C_interpreter-support_early_return.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0105_C_interpreter-support_early_return.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,6 +1,6 @@
 # HG changeset patch
 # Parent edd8da5ec14065e6f609d88d2874193031aa6611
-C interpreter: implement support for jvmti early return.
+8019519: PPC64 (part 105): C interpreter: implement support for jvmti early return.
 
 diff -r edd8da5ec140 src/share/vm/interpreter/bytecodeInterpreter.cpp
 --- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Apr 26 10:54:04 2013 +0200
@@ -181,19 +181,3 @@
      };
  
  private:
-diff -r edd8da5ec140 src/share/vm/prims/jvmtiManageCapabilities.cpp
---- a/src/share/vm/prims/jvmtiManageCapabilities.cpp	Fri Apr 26 10:54:04 2013 +0200
-+++ b/src/share/vm/prims/jvmtiManageCapabilities.cpp	Fri Apr 26 11:00:20 2013 +0200
-@@ -117,10 +117,10 @@
-   jvmtiCapabilities jc;
- 
-   memset(&jc, 0, sizeof(jc));
--#ifndef CC_INTERP
-+#ifndef ZERO
-   jc.can_pop_frame = 1;
-   jc.can_force_early_return = 1;
--#endif // !CC_INTERP
-+#endif // !ZERO
-   jc.can_get_source_debug_extension = 1;
-   jc.can_access_local_variables = 1;
-   jc.can_maintain_original_method_order = 1;
--- a/ppc_patches/0201_C_interpreter-implement_bytecode_profiling.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0201_C_interpreter-implement_bytecode_profiling.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,10 +1,22 @@
 # HG changeset patch
-# Parent 738d32552a9693f1f440426756e7b4906b3b7552
+# Parent 2640405fbad3cde76d1741b76c20095d440ad6c5
 C-interpreter: implement bytecode profiling.
 
-diff -r 738d32552a96 src/share/vm/interpreter/bytecodeInterpreter.cpp
---- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Jun 28 14:17:32 2013 +0200
-+++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Jun 28 14:34:21 2013 +0200
+diff -r 2640405fbad3 src/cpu/zero/vm/cppInterpreter_zero.cpp
+--- a/src/cpu/zero/vm/cppInterpreter_zero.cpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/cpu/zero/vm/cppInterpreter_zero.cpp	Thu Jul 04 11:11:22 2013 +0200
+@@ -220,7 +220,7 @@
+     }
+     InvocationCounter *counter = mcs->invocation_counter();
+     counter->increment();
+-    if (counter->reached_InvocationLimit()) {
++    if (counter->reached_InvocationLimit(mcs->backedge_counter())) {
+       CALL_VM_NOCHECK(
+         InterpreterRuntime::frequency_counter_overflow(thread, NULL));
+       if (HAS_PENDING_EXCEPTION)
+diff -r 2640405fbad3 src/share/vm/interpreter/bytecodeInterpreter.cpp
+--- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Thu Jul 04 11:11:22 2013 +0200
 @@ -28,6 +28,7 @@
  #include "interpreter/bytecodeHistogram.hpp"
  #include "interpreter/bytecodeInterpreter.hpp"
@@ -12,8 +24,8 @@
 +#include "interpreter/bytecodeInterpreterProfiling.hpp"
  #include "interpreter/interpreter.hpp"
  #include "interpreter/interpreterRuntime.hpp"
- #include "memory/cardTableModRefBS.hpp"
-@@ -143,10 +144,11 @@
+ #include "memory/resourceArea.hpp"
+@@ -142,10 +143,11 @@
   * is no entry point to do the transition to vm so we just
   * do it by hand here.
   */
@@ -26,7 +38,7 @@
         ThreadInVMfromJava trans(THREAD);                                          \
         Exceptions::_throw_msg(THREAD, __FILE__, __LINE__, name, msg);             \
      }                                                                             \
-@@ -154,8 +156,8 @@
+@@ -153,8 +155,8 @@
      CACHE_STATE();
  
  // Normal throw of a java error
@@ -37,7 +49,7 @@
      goto handle_exception;
  
  #ifdef PRODUCT
-@@ -341,7 +343,23 @@
+@@ -340,7 +342,23 @@
        if (UseLoopCounter) {                                                                         \
          bool do_OSR = UseOnStackReplacement;                                                        \
          mcs->backedge_counter()->increment();                                                       \
@@ -62,7 +74,7 @@
          if (do_OSR) {                                                                               \
            nmethod*  osr_nmethod;                                                                    \
            OSR_REQUEST(osr_nmethod, branch_pc);                                                      \
-@@ -354,7 +372,6 @@
+@@ -353,7 +371,6 @@
            }                                                                                         \
          }                                                                                           \
        }  /* UseCompiler ... */                                                                      \
@@ -70,7 +82,7 @@
        SAFEPOINT;                                                                                    \
      }
  
-@@ -387,16 +404,20 @@
+@@ -386,16 +403,20 @@
  #undef CACHE_FRAME
  #define CACHE_FRAME()
  
@@ -95,7 +107,7 @@
      VERIFY_OOP(obj_)
  
  #define VMdoubleConstZero() 0.0
-@@ -630,6 +651,13 @@
+@@ -629,6 +650,13 @@
           topOfStack < istate->stack_base(),
           "Stack top out of range");
  
@@ -109,7 +121,7 @@
    switch (istate->msg()) {
      case initialize: {
        if (initialized++) ShouldNotReachHere(); // Only one initialize call
-@@ -651,15 +679,12 @@
+@@ -650,15 +678,12 @@
            METHOD->increment_interpreter_invocation_count(THREAD);
          }
          mcs->invocation_counter()->increment();
@@ -130,7 +142,7 @@
          SAFEPOINT;
        }
  
-@@ -681,7 +706,6 @@
+@@ -680,7 +705,6 @@
        }
  #endif // HACK
  
@@ -138,7 +150,7 @@
        // lock method if synchronized
        if (METHOD->is_synchronized()) {
          // oop rcvr = locals[0].j.r;
-@@ -796,9 +820,18 @@
+@@ -795,9 +819,18 @@
      case popping_frame: {
        // returned from a java call to pop the frame, restart the call
        // clear the message so we don't confuse ourselves later
@@ -158,7 +170,7 @@
        THREAD->clr_pop_frame_in_process();
        goto run;
      }
-@@ -832,6 +865,11 @@
+@@ -831,6 +864,11 @@
        if (THREAD->has_pending_exception()) goto handle_exception;
        // Update the pc by the saved amount of the invoke bytecode size
        UPDATE_PC(istate->bcp_advance());
@@ -170,7 +182,7 @@
        goto run;
      }
  
-@@ -839,6 +877,11 @@
+@@ -838,6 +876,11 @@
        // Returned from an opcode that will reexecute. Deopt was
        // a result of a PopFrame request.
        //
@@ -182,7 +194,7 @@
        goto run;
      }
  
-@@ -861,6 +904,11 @@
+@@ -860,6 +903,11 @@
        }
        UPDATE_PC(Bytecodes::length_at(METHOD, pc));
        if (THREAD->has_pending_exception()) goto handle_exception;
@@ -194,7 +206,7 @@
        goto run;
      }
      case got_monitors: {
-@@ -1111,6 +1159,11 @@
+@@ -1110,6 +1158,11 @@
            uint16_t reg = Bytes::get_Java_u2(pc + 2);
  
            opcode = pc[1];
@@ -206,7 +218,7 @@
            switch(opcode) {
                case Bytecodes::_aload:
                    VERIFY_OOP(LOCALS_OBJECT(reg));
-@@ -1154,10 +1207,13 @@
+@@ -1153,10 +1206,13 @@
                    UPDATE_PC_AND_CONTINUE(6);
                }
                case Bytecodes::_ret:
@@ -221,7 +233,7 @@
            }
        }
  
-@@ -1238,7 +1294,7 @@
+@@ -1237,7 +1293,7 @@
        CASE(_i##opcname):                                                \
            if (test && (STACK_INT(-1) == 0)) {                           \
                VM_JAVA_ERROR(vmSymbols::java_lang_ArithmeticException(), \
@@ -230,7 +242,7 @@
            }                                                             \
            SET_STACK_INT(VMint##opname(STACK_INT(-2),                    \
                                        STACK_INT(-1)),                   \
-@@ -1250,7 +1306,7 @@
+@@ -1249,7 +1305,7 @@
              jlong l1 = STACK_LONG(-1);                                  \
              if (VMlongEqz(l1)) {                                        \
                VM_JAVA_ERROR(vmSymbols::java_lang_ArithmeticException(), \
@@ -239,7 +251,7 @@
              }                                                           \
            }                                                             \
            /* First long at (-1,-2) next long at (-3,-4) */              \
-@@ -1463,17 +1519,23 @@
+@@ -1462,17 +1518,23 @@
  
  #define COMPARISON_OP(name, comparison)                                      \
        CASE(_if_icmp##name): {                                                \
@@ -265,7 +277,7 @@
            UPDATE_PC_AND_TOS(skip, -1);                                       \
            DO_BACKEDGE_CHECKS(skip, branch_pc);                               \
            CONTINUE;                                                          \
-@@ -1482,9 +1544,12 @@
+@@ -1481,9 +1543,12 @@
  #define COMPARISON_OP2(name, comparison)                                     \
        COMPARISON_OP(name, comparison)                                        \
        CASE(_if_acmp##name): {                                                \
@@ -279,7 +291,7 @@
            UPDATE_PC_AND_TOS(skip, -2);                                       \
            DO_BACKEDGE_CHECKS(skip, branch_pc);                               \
            CONTINUE;                                                          \
-@@ -1492,9 +1557,12 @@
+@@ -1491,9 +1556,12 @@
  
  #define NULL_COMPARISON_NOT_OP(name)                                         \
        CASE(_if##name): {                                                     \
@@ -293,7 +305,7 @@
            UPDATE_PC_AND_TOS(skip, -1);                                       \
            DO_BACKEDGE_CHECKS(skip, branch_pc);                               \
            CONTINUE;                                                          \
-@@ -1502,9 +1570,12 @@
+@@ -1501,9 +1569,12 @@
  
  #define NULL_COMPARISON_OP(name)                                             \
        CASE(_if##name): {                                                     \
@@ -307,7 +319,7 @@
            UPDATE_PC_AND_TOS(skip, -1);                                       \
            DO_BACKEDGE_CHECKS(skip, branch_pc);                               \
            CONTINUE;                                                          \
-@@ -1527,9 +1598,14 @@
+@@ -1526,9 +1597,14 @@
            int32_t  high = Bytes::get_Java_u4((address)&lpc[2]);
            int32_t  skip;
            key -= low;
@@ -325,7 +337,7 @@
            // Does this really need a full backedge check (osr?)
            address branch_pc = pc;
            UPDATE_PC_AND_TOS(skip, -1);
-@@ -1543,14 +1619,21 @@
+@@ -1542,14 +1618,21 @@
            jint* lpc  = (jint*)VMalignWordUp(pc+1);
            int32_t  key  = STACK_INT(-1);
            int32_t  skip = Bytes::get_Java_u4((address) lpc); /* default amount */
@@ -352,7 +364,7 @@
            address branch_pc = pc;
            UPDATE_PC_AND_TOS(skip, -1);
            DO_BACKEDGE_CHECKS(skip, branch_pc);
-@@ -1635,7 +1718,7 @@
+@@ -1634,7 +1717,7 @@
        if ((uint32_t)index >= (uint32_t)arrObj->length()) {                     \
            sprintf(message, "%d", index);                                       \
            VM_JAVA_ERROR(vmSymbols::java_lang_ArrayIndexOutOfBoundsException(), \
@@ -361,7 +373,7 @@
        }
  
        /* 32-bit loads. These handle conversion from < 32-bit types */
-@@ -1716,15 +1799,22 @@
+@@ -1708,15 +1791,22 @@
            // arrObj, index are set
            if (rhsObject != NULL) {
              /* Check assignability of rhsObject into arrObj */
@@ -386,9 +398,9 @@
 +            // Profile checkcast with null_seen and receiver.
 +            BI_PROFILE_UPDATE_CHECKCAST(/*null_seen=*/true, NULL);
            }
-           // G1GC port. Use accessor instead of storing manually.
-           // Takes care of write barriers internally and replaces the code above.
-@@ -2124,10 +2214,14 @@
+           ((objArrayOopDesc *) arrObj)->obj_at_put(index, rhsObject);
+           UPDATE_PC_AND_TOS_AND_CONTINUE(1, -3);
+@@ -2114,10 +2204,14 @@
              if (UseTLAB) {
                result = (oop) THREAD->tlab().allocate(obj_size);
              }
@@ -404,7 +416,7 @@
                HeapWord* compare_to = *Universe::heap()->top_addr();
                HeapWord* new_top = compare_to + obj_size;
                if (new_top <= *Universe::heap()->end_addr()) {
-@@ -2137,6 +2231,7 @@
+@@ -2127,6 +2221,7 @@
                  result = (oop) compare_to;
                }
              }
@@ -412,7 +424,7 @@
              if (result != NULL) {
                // Initialize object (if nonzero size and need) and then the header
                if (need_zero ) {
-@@ -2192,42 +2287,40 @@
+@@ -2182,42 +2277,40 @@
            if (STACK_OBJECT(-1) != NULL) {
              VERIFY_OOP(STACK_OBJECT(-1));
              u2 index = Bytes::get_Java_u2(pc+1);
@@ -467,7 +479,7 @@
            } else {
              VERIFY_OOP(STACK_OBJECT(-1));
              u2 index = Bytes::get_Java_u2(pc+1);
-@@ -2237,16 +2330,20 @@
+@@ -2227,16 +2320,20 @@
                CALL_VM(InterpreterRuntime::quicken_io_cc(THREAD), handle_exception);
              }
              Klass* klassOf = (Klass*) METHOD->constants()->slot_at(index).get_klass();
@@ -490,7 +502,7 @@
            }
            UPDATE_PC_AND_CONTINUE(3);
  
-@@ -2389,6 +2486,9 @@
+@@ -2379,6 +2476,9 @@
          istate->set_callee_entry_point(method->from_interpreted_entry());
          istate->set_bcp_advance(5);
  
@@ -500,7 +512,7 @@
          UPDATE_PC_AND_RETURN(0); // I'll be back...
        }
  
-@@ -2421,6 +2521,9 @@
+@@ -2411,6 +2511,9 @@
          istate->set_callee_entry_point(method->from_interpreted_entry());
          istate->set_bcp_advance(3);
  
@@ -510,7 +522,7 @@
          UPDATE_PC_AND_RETURN(0); // I'll be back...
        }
  
-@@ -2448,14 +2551,18 @@
+@@ -2438,14 +2541,18 @@
            CHECK_NULL(STACK_OBJECT(-(cache->parameter_size())));
            if (cache->is_vfinal()) {
              callee = cache->f2_as_vfinal_method();
@@ -532,7 +544,7 @@
            }
            istate->set_callee(callee);
            istate->set_callee_entry_point(callee->from_interpreted_entry());
-@@ -2486,15 +2593,18 @@
+@@ -2476,15 +2583,18 @@
          // interface.  The link resolver checks this but only for the first
          // time this interface is called.
          if (i == int2->itable_length()) {
@@ -553,7 +565,7 @@
          istate->set_callee(callee);
          istate->set_callee_entry_point(callee->from_interpreted_entry());
  #ifdef VM_JVMTI
-@@ -2526,8 +2636,11 @@
+@@ -2516,8 +2626,11 @@
            Method* callee;
            if ((Bytecodes::Code)opcode == Bytecodes::_invokevirtual) {
              CHECK_NULL(STACK_OBJECT(-(cache->parameter_size())));
@@ -567,7 +579,7 @@
                // get receiver
                int parms = cache->parameter_size();
                // this works but needs a resourcemark and seems to create a vtable on every call:
-@@ -2536,8 +2649,9 @@
+@@ -2526,8 +2639,9 @@
                // this fails with an assert
                // InstanceKlass* rcvrKlass = InstanceKlass::cast(STACK_OBJECT(-parms)->klass());
                // but this works
@@ -579,7 +591,7 @@
                /*
                  Executing this code in java.lang.String:
                      public String(char value[]) {
-@@ -2555,12 +2669,17 @@
+@@ -2545,12 +2659,17 @@
  
                */
                callee = (Method*) rcvrKlass->start_of_vtable()[ cache->f2_as_index()];
@@ -597,7 +609,7 @@
            }
  
            istate->set_callee(callee);
-@@ -2612,6 +2731,8 @@
+@@ -2602,6 +2721,8 @@
        CASE(_goto):
        {
            int16_t offset = (int16_t)Bytes::get_Java_u2(pc + 1);
@@ -606,7 +618,7 @@
            address branch_pc = pc;
            UPDATE_PC(offset);
            DO_BACKEDGE_CHECKS(offset, branch_pc);
-@@ -2628,6 +2749,8 @@
+@@ -2618,6 +2739,8 @@
        CASE(_goto_w):
        {
            int32_t offset = Bytes::get_Java_u4(pc + 1);
@@ -615,7 +627,7 @@
            address branch_pc = pc;
            UPDATE_PC(offset);
            DO_BACKEDGE_CHECKS(offset, branch_pc);
-@@ -2637,6 +2760,9 @@
+@@ -2627,6 +2750,9 @@
        /* return from a jsr or jsr_w */
  
        CASE(_ret): {
@@ -625,7 +637,7 @@
            pc = istate->method()->code_base() + (intptr_t)(LOCALS_ADDR(pc[1]));
            UPDATE_PC_AND_CONTINUE(0);
        }
-@@ -2718,6 +2844,9 @@
+@@ -2708,6 +2834,9 @@
        }
        // for AbortVMOnException flag
        NOT_PRODUCT(Exceptions::debug_check_abort(except_oop));
@@ -635,7 +647,7 @@
        goto run;
      }
      if (TraceExceptions) {
-@@ -2920,7 +3049,7 @@
+@@ -2910,7 +3039,7 @@
            oop rcvr = base->obj();
            if (rcvr == NULL) {
              if (!suppress_error) {
@@ -644,7 +656,7 @@
                illegal_state_oop = THREAD->pending_exception();
                THREAD->clear_pending_exception();
              }
-@@ -3008,7 +3137,7 @@
+@@ -2998,7 +3127,7 @@
      // A pending exception that was pending prior to a possible popping frame
      // overrides the popping frame.
      //
@@ -653,9 +665,9 @@
      if (illegal_state_oop() != NULL || original_exception() != NULL) {
        // inform the frame manager we have no result
        istate->set_msg(throwing_exception);
-diff -r 738d32552a96 src/share/vm/interpreter/bytecodeInterpreterProfiling.hpp
+diff -r 2640405fbad3 src/share/vm/interpreter/bytecodeInterpreterProfiling.hpp
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
-+++ b/src/share/vm/interpreter/bytecodeInterpreterProfiling.hpp	Fri Jun 28 14:34:21 2013 +0200
++++ b/src/share/vm/interpreter/bytecodeInterpreterProfiling.hpp	Thu Jul 04 11:11:22 2013 +0200
 @@ -0,0 +1,308 @@
 +/*
 + * Copyright (c) 2002, 2011, Oracle and/or its affiliates. All rights reserved.
@@ -965,9 +977,9 @@
 +#endif // CC_INTERP
 +
 +#endif // SHARE_VM_INTERPRETER_BYTECODECINTERPRETERPROFILING_HPP
-diff -r 738d32552a96 src/share/vm/interpreter/interpreterRuntime.cpp
---- a/src/share/vm/interpreter/interpreterRuntime.cpp	Fri Jun 28 14:17:32 2013 +0200
-+++ b/src/share/vm/interpreter/interpreterRuntime.cpp	Fri Jun 28 14:34:21 2013 +0200
+diff -r 2640405fbad3 src/share/vm/interpreter/interpreterRuntime.cpp
+--- a/src/share/vm/interpreter/interpreterRuntime.cpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/share/vm/interpreter/interpreterRuntime.cpp	Thu Jul 04 11:11:22 2013 +0200
 @@ -267,6 +267,49 @@
    }
  }
@@ -1018,9 +1030,9 @@
  static Handle get_preinitialized_exception(Klass* k, TRAPS) {
    // get klass
    InstanceKlass* klass = InstanceKlass::cast(k);
-diff -r 738d32552a96 src/share/vm/interpreter/interpreterRuntime.hpp
---- a/src/share/vm/interpreter/interpreterRuntime.hpp	Fri Jun 28 14:17:32 2013 +0200
-+++ b/src/share/vm/interpreter/interpreterRuntime.hpp	Fri Jun 28 14:34:21 2013 +0200
+diff -r 2640405fbad3 src/share/vm/interpreter/interpreterRuntime.hpp
+--- a/src/share/vm/interpreter/interpreterRuntime.hpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/share/vm/interpreter/interpreterRuntime.hpp	Thu Jul 04 11:11:22 2013 +0200
 @@ -67,6 +67,10 @@
    static ConstantPoolCacheEntry* cache_entry_at(JavaThread *thread, int i)  { return method(thread)->constants()->cache()->entry_at(i); }
    static ConstantPoolCacheEntry* cache_entry(JavaThread *thread)            { return cache_entry_at(thread, Bytes::get_native_u2(bcp(thread) + 1)); }
@@ -1050,9 +1062,9 @@
    // Statics & fields
    static void    resolve_get_put(JavaThread* thread, Bytecodes::Code bytecode);
  
-diff -r 738d32552a96 src/share/vm/interpreter/invocationCounter.hpp
---- a/src/share/vm/interpreter/invocationCounter.hpp	Fri Jun 28 14:17:32 2013 +0200
-+++ b/src/share/vm/interpreter/invocationCounter.hpp	Fri Jun 28 14:34:21 2013 +0200
+diff -r 2640405fbad3 src/share/vm/interpreter/invocationCounter.hpp
+--- a/src/share/vm/interpreter/invocationCounter.hpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/share/vm/interpreter/invocationCounter.hpp	Thu Jul 04 11:11:22 2013 +0200
 @@ -101,13 +101,17 @@
  
    // Test counter using scaled limits like the asm interpreter would do rather than doing
@@ -1076,9 +1088,9 @@
    }
  
    void increment()                               { _counter += count_increment; }
-diff -r 738d32552a96 src/share/vm/oops/methodData.cpp
---- a/src/share/vm/oops/methodData.cpp	Fri Jun 28 14:17:32 2013 +0200
-+++ b/src/share/vm/oops/methodData.cpp	Fri Jun 28 14:34:21 2013 +0200
+diff -r 2640405fbad3 src/share/vm/oops/methodData.cpp
+--- a/src/share/vm/oops/methodData.cpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/share/vm/oops/methodData.cpp	Thu Jul 04 11:11:22 2013 +0200
 @@ -244,6 +244,11 @@
    return mdp;
  }
@@ -1091,9 +1103,9 @@
  
  #ifndef PRODUCT
  void RetData::print_data_on(outputStream* st) {
-diff -r 738d32552a96 src/share/vm/oops/methodData.hpp
---- a/src/share/vm/oops/methodData.hpp	Fri Jun 28 14:17:32 2013 +0200
-+++ b/src/share/vm/oops/methodData.hpp	Fri Jun 28 14:34:21 2013 +0200
+diff -r 2640405fbad3 src/share/vm/oops/methodData.hpp
+--- a/src/share/vm/oops/methodData.hpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/share/vm/oops/methodData.hpp	Thu Jul 04 11:11:22 2013 +0200
 @@ -225,6 +225,11 @@
    static ByteSize cell_offset(int index) {
      return byte_offset_of(DataLayout, _cells) + in_ByteSize(index * cell_size);
@@ -1371,24 +1383,26 @@
  private:
    friend class ProfileData;
  
-diff -r 738d32552a96 src/share/vm/runtime/arguments.cpp
---- a/src/share/vm/runtime/arguments.cpp	Fri Jun 28 14:17:32 2013 +0200
-+++ b/src/share/vm/runtime/arguments.cpp	Fri Jun 28 14:34:21 2013 +0200
-@@ -3578,10 +3578,10 @@
-   // Clear flags not supported by the C++ interpreter
- #if !defined(PPC64)
+diff -r 2640405fbad3 src/share/vm/runtime/arguments.cpp
+--- a/src/share/vm/runtime/arguments.cpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/share/vm/runtime/arguments.cpp	Thu Jul 04 11:11:22 2013 +0200
+@@ -3579,12 +3579,9 @@
    FLAG_SET_DEFAULT(UseBiasedLocking, false);
-+  FLAG_SET_DEFAULT(ProfileInterpreter, false);
    LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
    LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedKlassPointers, false));
- #endif // !PPC64
++  FLAG_SET_DEFAULT(ProfileInterpreter, false);
+ #endif // ZERO
+ 
+-#ifdef CC_INTERP
 -  FLAG_SET_DEFAULT(ProfileInterpreter, false);
- #endif // CC_INTERP
- 
+-#endif // CC_INTERP
+-
  #ifdef COMPILER2
-diff -r 738d32552a96 src/share/vm/runtime/globals.hpp
---- a/src/share/vm/runtime/globals.hpp	Fri Jun 28 14:17:32 2013 +0200
-+++ b/src/share/vm/runtime/globals.hpp	Fri Jun 28 14:34:21 2013 +0200
+   if (!UseBiasedLocking || EmitSync != 0) {
+     UseOptoBiasInlining = false;
+diff -r 2640405fbad3 src/share/vm/runtime/globals.hpp
+--- a/src/share/vm/runtime/globals.hpp	Thu Jul 04 11:11:03 2013 +0200
++++ b/src/share/vm/runtime/globals.hpp	Thu Jul 04 11:11:22 2013 +0200
 @@ -2712,6 +2712,9 @@
    product_pd(bool, ProfileInterpreter,                                      \
             "Profile at the bytecode level during interpretation")           \
--- a/ppc_patches/0212_rt-gc_memory_ordering.patch	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/0212_rt-gc_memory_ordering.patch	Thu Jul 04 11:30:05 2013 +0200
@@ -1,12 +1,12 @@
 # HG changeset patch
-# Parent c5fd254771b15127de9bf9978425773c5452a6a0
+# Parent b20ef9681d64d4841b95abde2f8c818caf118e24
 shared: Memory ordering as required for platforms with weak memory ordering (PPC)
 
 Do we still need the ordering in cpCacheOop.hpp with the new mh implementation?
 
-diff -r c5fd254771b1 src/share/vm/code/nmethod.cpp
---- a/src/share/vm/code/nmethod.cpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/code/nmethod.cpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/code/nmethod.cpp
+--- a/src/share/vm/code/nmethod.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/code/nmethod.cpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -1338,7 +1338,12 @@
      }
  
@@ -21,10 +21,10 @@
  
      // Log the transition once
      log_state_change();
-diff -r c5fd254771b1 src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
---- a/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp	Mon May 06 22:21:55 2013 +0200
-@@ -998,6 +998,13 @@
+diff -r b20ef9681d64 src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp
+--- a/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/gc_implementation/concurrentMarkSweep/compactibleFreeListSpace.cpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -997,6 +997,13 @@
      if (FreeChunk::indicatesFreeChunk(p)) {
        volatile FreeChunk* fc = (volatile FreeChunk*)p;
        size_t res = fc->size();
@@ -38,7 +38,7 @@
        // If the object is still a free chunk, return the size, else it
        // has been allocated so try again.
        if (FreeChunk::indicatesFreeChunk(p)) {
-@@ -1011,6 +1018,12 @@
+@@ -1010,6 +1017,12 @@
          assert(k->is_klass(), "Should really be klass oop.");
          oop o = (oop)p;
          assert(o->is_oop(true /* ignore mark word */), "Should be an oop.");
@@ -51,7 +51,7 @@
          size_t res = o->size_given_klass(k);
          res = adjustObjectSize(res);
          assert(res != 0, "Block size should not be 0");
-@@ -1041,6 +1054,13 @@
+@@ -1040,6 +1053,13 @@
      if (FreeChunk::indicatesFreeChunk(p)) {
        volatile FreeChunk* fc = (volatile FreeChunk*)p;
        size_t res = fc->size();
@@ -65,7 +65,7 @@
        if (FreeChunk::indicatesFreeChunk(p)) {
          assert(res != 0, "Block size should not be 0");
          assert(loops == 0, "Should be 0");
-@@ -1056,6 +1076,12 @@
+@@ -1055,6 +1075,12 @@
          assert(k->is_klass(), "Should really be klass oop.");
          oop o = (oop)p;
          assert(o->is_oop(), "Should be an oop");
@@ -78,9 +78,9 @@
          size_t res = o->size_given_klass(k);
          res = adjustObjectSize(res);
          assert(res != 0, "Block size should not be 0");
-diff -r c5fd254771b1 src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp
---- a/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp
+--- a/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.cpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -75,10 +75,16 @@
  
  void
@@ -100,9 +100,9 @@
      Thread* thr = Thread::current();
      if (thr->is_Java_thread()) {
        JavaThread* jt = (JavaThread*)thr;
-diff -r c5fd254771b1 src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp
---- a/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp
+--- a/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/gc_implementation/g1/g1SATBCardTableModRefBS.hpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -105,7 +105,7 @@
        G1SATBCardTableModRefBS::is_a(bsn);
    }
@@ -112,10 +112,10 @@
  
    // Can be called from static contexts.
    static void write_ref_field_static(void* field, oop new_val);
-diff -r c5fd254771b1 src/share/vm/interpreter/bytecodeInterpreter.cpp
---- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon May 06 22:21:55 2013 +0200
-@@ -2726,6 +2726,9 @@
+diff -r b20ef9681d64 src/share/vm/interpreter/bytecodeInterpreter.cpp
+--- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -2710,6 +2710,9 @@
          jint size = STACK_INT(-1);
          CALL_VM(InterpreterRuntime::newarray(THREAD, atype, size),
                  handle_exception);
@@ -125,9 +125,9 @@
          SET_STACK_OBJECT(THREAD->vm_result(), -1);
          THREAD->set_vm_result(NULL);
  
-diff -r c5fd254771b1 src/share/vm/memory/barrierSet.hpp
---- a/src/share/vm/memory/barrierSet.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/memory/barrierSet.hpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/memory/barrierSet.hpp
+--- a/src/share/vm/memory/barrierSet.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/memory/barrierSet.hpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -100,9 +100,9 @@
  public:
  
@@ -140,9 +140,9 @@
  public:
  
    // Invoke the barrier, if any, necessary when writing the "bytes"-byte
-diff -r c5fd254771b1 src/share/vm/memory/barrierSet.inline.hpp
---- a/src/share/vm/memory/barrierSet.inline.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/memory/barrierSet.inline.hpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/memory/barrierSet.inline.hpp
+--- a/src/share/vm/memory/barrierSet.inline.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/memory/barrierSet.inline.hpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -40,11 +40,11 @@
    }
  }
@@ -158,10 +158,10 @@
    }
  }
  
-diff -r c5fd254771b1 src/share/vm/memory/cardTableModRefBS.cpp
---- a/src/share/vm/memory/cardTableModRefBS.cpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/memory/cardTableModRefBS.cpp	Mon May 06 22:21:55 2013 +0200
-@@ -402,8 +402,8 @@
+diff -r b20ef9681d64 src/share/vm/memory/cardTableModRefBS.cpp
+--- a/src/share/vm/memory/cardTableModRefBS.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/memory/cardTableModRefBS.cpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -419,8 +419,8 @@
  // Note that these versions are precise!  The scanning code has to handle the
  // fact that the write barrier may be either precise or imprecise.
  
@@ -172,10 +172,10 @@
  }
  
  /*
-diff -r c5fd254771b1 src/share/vm/memory/cardTableModRefBS.hpp
---- a/src/share/vm/memory/cardTableModRefBS.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/memory/cardTableModRefBS.hpp	Mon May 06 22:21:55 2013 +0200
-@@ -291,7 +291,7 @@
+diff -r b20ef9681d64 src/share/vm/memory/cardTableModRefBS.hpp
+--- a/src/share/vm/memory/cardTableModRefBS.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/memory/cardTableModRefBS.hpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -292,7 +292,7 @@
    // these functions here for performance.
  protected:
    void write_ref_field_work(oop obj, size_t offset, oop newVal);
@@ -184,7 +184,7 @@
  public:
  
    bool has_write_ref_array_opt() { return true; }
-@@ -323,9 +323,14 @@
+@@ -324,9 +324,14 @@
  
    template <class T> inline void inline_write_ref_field_pre(T* field, oop newVal) {}
  
@@ -201,9 +201,9 @@
    }
  
    // These are used by G1, when it uses the card table as a temporary data
-diff -r c5fd254771b1 src/share/vm/memory/modRefBarrierSet.hpp
---- a/src/share/vm/memory/modRefBarrierSet.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/memory/modRefBarrierSet.hpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/memory/modRefBarrierSet.hpp
+--- a/src/share/vm/memory/modRefBarrierSet.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/memory/modRefBarrierSet.hpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -60,7 +60,7 @@
    void read_ref_field(void* field) {}
    void read_prim_field(HeapWord* field, size_t bytes) {}
@@ -213,9 +213,9 @@
  public:
    void write_prim_field(HeapWord* field, size_t bytes,
                          juint val1, juint val2) {}
-diff -r c5fd254771b1 src/share/vm/oops/cpCache.cpp
---- a/src/share/vm/oops/cpCache.cpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/oops/cpCache.cpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/oops/cpCache.cpp
+--- a/src/share/vm/oops/cpCache.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/oops/cpCache.cpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -346,7 +346,7 @@
    // Decode the action of set_method and set_interface_call
    Bytecodes::Code invoke_code = bytecode_1();
@@ -225,9 +225,9 @@
      if (f1 != NULL) {
        switch (invoke_code) {
        case Bytecodes::_invokeinterface:
-diff -r c5fd254771b1 src/share/vm/oops/cpCache.hpp
---- a/src/share/vm/oops/cpCache.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/oops/cpCache.hpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/oops/cpCache.hpp
+--- a/src/share/vm/oops/cpCache.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/oops/cpCache.hpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -134,14 +134,21 @@
  
    void set_bytecode_1(Bytecodes::Code code);
@@ -281,10 +281,10 @@
    int  field_index() const                       { assert(is_field_entry(),  ""); return (_flags & field_index_mask); }
    int  parameter_size() const                    { assert(is_method_entry(), ""); return (_flags & parameter_size_mask); }
    bool is_volatile() const                       { return (_flags & (1 << is_volatile_shift))       != 0; }
-diff -r c5fd254771b1 src/share/vm/oops/instanceKlass.cpp
---- a/src/share/vm/oops/instanceKlass.cpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/oops/instanceKlass.cpp	Mon May 06 22:21:55 2013 +0200
-@@ -1126,7 +1126,11 @@
+diff -r b20ef9681d64 src/share/vm/oops/instanceKlass.cpp
+--- a/src/share/vm/oops/instanceKlass.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/oops/instanceKlass.cpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -1135,7 +1135,11 @@
      MutexLocker x(OopMapCacheAlloc_lock);
      // First time use. Allocate a cache in C heap
      if (_oop_map_cache == NULL) {
@@ -297,7 +297,7 @@
      }
    }
    // _oop_map_cache is constant after init; lookup below does is own locking.
-@@ -1754,6 +1758,8 @@
+@@ -1763,6 +1767,8 @@
  
  // Retrieve a cached itable index
  int InstanceKlass::cached_itable_index(size_t idnum) {
@@ -306,10 +306,10 @@
    int* indices = methods_cached_itable_indices_acquire();
    if (indices != NULL && ((size_t)indices[0]) > idnum) {
       // indices exist and are long enough, retrieve possible cached
-diff -r c5fd254771b1 src/share/vm/oops/method.hpp
---- a/src/share/vm/oops/method.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/oops/method.hpp	Mon May 06 22:21:55 2013 +0200
-@@ -360,16 +360,21 @@
+diff -r b20ef9681d64 src/share/vm/oops/method.hpp
+--- a/src/share/vm/oops/method.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/oops/method.hpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -350,16 +350,21 @@
    }
  
    void set_method_data(MethodData* data)       {
@@ -334,9 +334,9 @@
    }
  
  #ifdef TIERED
-diff -r c5fd254771b1 src/share/vm/oops/oop.inline.hpp
---- a/src/share/vm/oops/oop.inline.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/oops/oop.inline.hpp	Mon May 06 22:21:55 2013 +0200
+diff -r b20ef9681d64 src/share/vm/oops/oop.inline.hpp
+--- a/src/share/vm/oops/oop.inline.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/oops/oop.inline.hpp	Mon Jul 01 14:54:01 2013 +0200
 @@ -527,9 +527,9 @@
    return size_given_klass(klass());
  }
@@ -375,10 +375,26 @@
  }
  
  // Should replace *addr = oop assignments where addr type depends on UseCompressedOops
-diff -r c5fd254771b1 src/share/vm/runtime/sweeper.cpp
---- a/src/share/vm/runtime/sweeper.cpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/runtime/sweeper.cpp	Mon May 06 22:21:55 2013 +0200
-@@ -224,7 +224,8 @@
+diff -r b20ef9681d64 src/share/vm/runtime/biasedLocking.cpp
+--- a/src/share/vm/runtime/biasedLocking.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/runtime/biasedLocking.cpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -233,8 +233,10 @@
+     // Fix up highest lock to contain displaced header and point
+     // object at it
+     highest_lock->set_displaced_header(unbiased_prototype);
+-    // Reset object header to point to displaced mark
+-    obj->set_mark(markOopDesc::encode(highest_lock));
++    // Reset object header to point to displaced mark.
++    // Must release storing the lock address for platforms without TSO
++    // ordering (e.g. ppc).
++    obj->release_set_mark(markOopDesc::encode(highest_lock));
+     assert(!obj->mark()->has_bias_pattern(), "illegal mark state: stack lock used bias bit");
+     if (TraceBiasedLocking && (Verbose || !is_bulk)) {
+       tty->print_cr("  Revoked bias of currently-locked object");
+diff -r b20ef9681d64 src/share/vm/runtime/sweeper.cpp
+--- a/src/share/vm/runtime/sweeper.cpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/runtime/sweeper.cpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -239,7 +239,8 @@
        sweep_code_cache();
        _invocations--;
      }
@@ -388,10 +404,10 @@
    }
  }
  
-diff -r c5fd254771b1 src/share/vm/runtime/thread.hpp
---- a/src/share/vm/runtime/thread.hpp	Mon May 06 22:21:14 2013 +0200
-+++ b/src/share/vm/runtime/thread.hpp	Mon May 06 22:21:55 2013 +0200
-@@ -1043,8 +1043,19 @@
+diff -r b20ef9681d64 src/share/vm/runtime/thread.hpp
+--- a/src/share/vm/runtime/thread.hpp	Mon Jul 01 14:51:47 2013 +0200
++++ b/src/share/vm/runtime/thread.hpp	Mon Jul 01 14:54:01 2013 +0200
+@@ -1031,8 +1031,19 @@
    address last_Java_pc(void)                         { return _anchor.last_Java_pc(); }
  
    // Safepoint support
--- a/ppc_patches/series	Fri Jun 28 16:31:09 2013 +0200
+++ b/ppc_patches/series	Thu Jul 04 11:30:05 2013 +0200
@@ -1,9 +1,5 @@
-0003-2_C_interpreter-fix_for_8010460.patch
 0003-4_C_interpreter-Wunused_value.patch
-0004_opto-trampoline_relocations.patch
 0005_rt-use_stubs_to_implement_safefetch_.patch
-0006_C_interpreter-adapt_stack_handling.patch
-0007_C_interpreter-biased_locking.patch
 0008_linux_ppc_make_changes.patch
 0009_linux_ppc_files.patch
 0011_AIX_IA64_preprocessor_conditionals.patch
@@ -13,9 +9,8 @@
 0014_aix_make_changes.patch
 0015_aix_ppc_files.patch
 0101_rt-make_adapter_code_size_a_function.patch
-0102_C_interpreter-implement_G1_support.patch
-0104_C_interpreter-support_compressed_Oops.patch
 0105_C_interpreter-support_early_return.patch
+0105-2_C_interpreter-enable_new_features.patch
 0106_rt-make_hsdis_build_and_work_on_Linux_PPC64.patch
 0107_rt-elf_decoder.patch
 0111_opto-Support_for_C_calling_conventions.patch
--- a/src/share/vm/interpreter/bytecodeInterpreter.cpp	Fri Jun 28 16:31:09 2013 +0200
+++ b/src/share/vm/interpreter/bytecodeInterpreter.cpp	Thu Jul 04 11:30:05 2013 +0200
@@ -31,7 +31,6 @@
 #include "interpreter/bytecodeInterpreterProfiling.hpp"
 #include "interpreter/interpreter.hpp"
 #include "interpreter/interpreterRuntime.hpp"
-#include "memory/cardTableModRefBS.hpp"
 #include "memory/resourceArea.hpp"
 #include "oops/methodCounters.hpp"
 #include "oops/objArrayKlass.hpp"
@@ -1762,6 +1761,10 @@
       CASE(_faload):
           ARRAY_LOADTO32(T_FLOAT, jfloat, "%f",   STACK_FLOAT, 0);
       CASE(_aaload): {
+          ARRAY_INTRO(-2);
+          SET_STACK_OBJECT(((objArrayOop) arrObj)->obj_at(index), -2);
+          UPDATE_PC_AND_TOS_AND_CONTINUE(1, -1);
+          /*
         // Decode compressed oop.
         if (UseCompressedOops) {
           ARRAY_INTRO(-2);
@@ -1772,6 +1775,7 @@
         } else {
           ARRAY_LOADTO32(T_OBJECT, oop, INTPTR_FORMAT, STACK_OBJECT, 0);
         }
+          */
       }
       CASE(_baload):
           ARRAY_LOADTO32(T_BYTE, jbyte,  "%d",   STACK_INT, 0);
--- a/src/share/vm/runtime/arguments.cpp	Fri Jun 28 16:31:09 2013 +0200
+++ b/src/share/vm/runtime/arguments.cpp	Thu Jul 04 11:30:05 2013 +0200
@@ -3578,18 +3578,6 @@
     UseBiasedLocking = false;
   }
 
-#ifdef CC_INTERP
-  // Clear flags not supported by the C++ interpreter
-#if !defined(PPC64)
-  // Now supported by CC_INTERP, but not tested with other ports.
-  // TODO: Only exclude the platforms that don't support these.
-  FLAG_SET_DEFAULT(ProfileInterpreter, false);
-  FLAG_SET_DEFAULT(UseBiasedLocking, false);
-#endif
-  LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedOops, false));
-  LP64_ONLY(FLAG_SET_DEFAULT(UseCompressedKlassPointers, false));
-#endif // CC_INTERP
-
 #ifdef COMPILER2
   if (!UseBiasedLocking || EmitSync != 0) {
     UseOptoBiasInlining = false;