Mercurial > hg > graal-jvmci-8
comparison src/share/vm/prims/methodHandles.hpp @ 10345:b7fa10a3a69a
8014288: perf regression in nashorn JDK-8008448.js test after 8008511 changes
Summary: The fix of perf regression is to use method_idnum() for direct indexing into NMT
Reviewed-by: twisti, kvn, coleenp, dholmes
Contributed-by: serguei.spitsyn@oracle.com
author | sspitsyn |
---|---|
date | Thu, 23 May 2013 23:04:33 -0700 |
parents | 6337ca4dcad8 |
children | b2e698d2276c |
comparison
equal
deleted
inserted
replaced
10344:699d9df07e59 | 10345:b7fa10a3a69a |
---|---|
1 /* | 1 /* |
2 * Copyright (c) 2008, 2012, Oracle and/or its affiliates. All rights reserved. | 2 * Copyright (c) 2008, 2013, Oracle and/or its affiliates. All rights reserved. |
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. | 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. |
4 * | 4 * |
5 * This code is free software; you can redistribute it and/or modify it | 5 * This code is free software; you can redistribute it and/or modify it |
6 * under the terms of the GNU General Public License version 2 only, as | 6 * under the terms of the GNU General Public License version 2 only, as |
7 * published by the Free Software Foundation. | 7 * published by the Free Software Foundation. |
217 // during runtime. | 217 // during runtime. |
218 } | 218 } |
219 } | 219 } |
220 }; | 220 }; |
221 | 221 |
222 | |
223 //------------------------------------------------------------------------------ | 222 //------------------------------------------------------------------------------ |
224 // MethodHandlesAdapterGenerator | 223 // MethodHandlesAdapterGenerator |
225 // | 224 // |
226 class MethodHandlesAdapterGenerator : public StubCodeGenerator { | 225 class MethodHandlesAdapterGenerator : public StubCodeGenerator { |
227 public: | 226 public: |
231 }; | 230 }; |
232 | 231 |
233 //------------------------------------------------------------------------------ | 232 //------------------------------------------------------------------------------ |
234 // MemberNameTable | 233 // MemberNameTable |
235 // | 234 // |
235 | |
236 class MemberNameTable : public GrowableArray<jweak> { | 236 class MemberNameTable : public GrowableArray<jweak> { |
237 public: | 237 public: |
238 MemberNameTable(); | 238 MemberNameTable(int methods_cnt); |
239 ~MemberNameTable(); | 239 ~MemberNameTable(); |
240 void add_member_name(jweak mem_name_ref); | 240 void add_member_name(int index, jweak mem_name_ref); |
241 private: | 241 oop get_member_name(int index); |
242 int find_member_name(oop mem_name); | |
243 | 242 |
244 #if INCLUDE_JVMTI | 243 #if INCLUDE_JVMTI |
245 public: | 244 public: |
246 // RedefineClasses() API support: | 245 // RedefineClasses() API support: |
247 // If a MemberName refers to old_method then update it | 246 // If a MemberName refers to old_method then update it |