hotspot/src/share/vm/opto/callGenerator.hpp
changeset 10265 4c869854aebd
parent 9975 82190b49ce14
child 11193 d8de495d05e0
equal deleted inserted replaced
10264:6879f93d268d 10265:4c869854aebd
     1 /*
     1 /*
     2  * Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2000, 2011, 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.
   109   // How to generate vanilla out-of-line call sites:
   109   // How to generate vanilla out-of-line call sites:
   110   static CallGenerator* for_direct_call(ciMethod* m, bool separate_io_projs = false);   // static, special
   110   static CallGenerator* for_direct_call(ciMethod* m, bool separate_io_projs = false);   // static, special
   111   static CallGenerator* for_dynamic_call(ciMethod* m);   // invokedynamic
   111   static CallGenerator* for_dynamic_call(ciMethod* m);   // invokedynamic
   112   static CallGenerator* for_virtual_call(ciMethod* m, int vtable_index);  // virtual, interface
   112   static CallGenerator* for_virtual_call(ciMethod* m, int vtable_index);  // virtual, interface
   113 
   113 
   114   static CallGenerator* for_method_handle_inline(Node* method_handle, JVMState* jvms, ciMethod* caller, ciMethod* callee, ciCallProfile profile);
   114   static CallGenerator* for_method_handle_inline(Node* method_handle,   JVMState* jvms, ciMethod* caller, ciMethod* callee, ciCallProfile profile);
       
   115   static CallGenerator* for_invokedynamic_inline(ciCallSite* call_site, JVMState* jvms, ciMethod* caller, ciMethod* callee, ciCallProfile profile);
   115 
   116 
   116   // How to generate a replace a direct call with an inline version
   117   // How to generate a replace a direct call with an inline version
   117   static CallGenerator* for_late_inline(ciMethod* m, CallGenerator* inline_cg);
   118   static CallGenerator* for_late_inline(ciMethod* m, CallGenerator* inline_cg);
   118 
   119 
   119   // How to make a call but defer the decision whether to inline or not.
   120   // How to make a call but defer the decision whether to inline or not.