diff src/share/vm/oops/method.cpp @ 22886:fdde6a70ea85

8046246: the constantPoolCacheOopDesc::adjust_method_entries() used in RedefineClasses does not scale Summary: optimize the adjust_method_entries functions by using the orig_method_idnum() function Reviewed-by: coleenp, dcubed
author sspitsyn
date Tue, 17 Mar 2015 17:11:14 -0700
parents 600c44255e5f
children bf41eee321e5
line wrap: on
line diff
--- a/src/share/vm/oops/method.cpp	Tue Mar 17 01:56:32 2015 -0700
+++ b/src/share/vm/oops/method.cpp	Tue Mar 17 17:11:14 2015 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
@@ -1419,6 +1419,7 @@
       for (int i = 0; i < length; i++) {
         Method* m = methods->at(i);
         m->set_method_idnum(i);
+        m->set_orig_method_idnum(i);
       }
     }
   }