8046246: the constantPoolCacheOopDesc::adjust_method_entries() used in RedefineClasses does not scale

Optimize the adjust_method_entries functions by using the orig_method_idnum() function

Reviewed-by: coleenp, dcubed
This commit is contained in:
Serguei Spitsyn 2015-02-25 00:30:54 -08:00 committed by Serguei Spitsyn
parent 07a6ab00bc
commit 942d1f7f32
11 changed files with 154 additions and 132 deletions

View file

@ -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
@ -233,6 +233,9 @@ class Method : public Metadata {
u2 method_idnum() const { return constMethod()->method_idnum(); }
void set_method_idnum(u2 idnum) { constMethod()->set_method_idnum(idnum); }
u2 orig_method_idnum() const { return constMethod()->orig_method_idnum(); }
void set_orig_method_idnum(u2 idnum) { constMethod()->set_orig_method_idnum(idnum); }
// code size
int code_size() const { return constMethod()->code_size(); }