src/java.base/share/classes/jdk/internal/reflect/MethodAccessorGenerator.java
changeset 50735 2f2af62dfac7
parent 47216 71c04702a3d5
equal deleted inserted replaced
50734:0828a0f6676b 50735:2f2af62dfac7
     1 /*
     1 /*
     2  * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2001, 2018, 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.  Oracle designates this
     7  * published by the Free Software Foundation.  Oracle designates this
   627                 cb.opc_invokestatic(targetMethodRef,
   627                 cb.opc_invokestatic(targetMethodRef,
   628                                     count,
   628                                     count,
   629                                     typeSizeInStackSlots(returnType));
   629                                     typeSizeInStackSlots(returnType));
   630             } else {
   630             } else {
   631                 if (isInterface()) {
   631                 if (isInterface()) {
   632                     if (isPrivate()) {
   632                     cb.opc_invokeinterface(targetMethodRef,
   633                         cb.opc_invokespecial(targetMethodRef, count, 0);
   633                                            count,
   634                     } else {
   634                                            count,
   635                         cb.opc_invokeinterface(targetMethodRef,
   635                                            typeSizeInStackSlots(returnType));
   636                                                count,
       
   637                                                count,
       
   638                                                typeSizeInStackSlots(returnType));
       
   639                     }
       
   640                 } else {
   636                 } else {
   641                     cb.opc_invokevirtual(targetMethodRef,
   637                     cb.opc_invokevirtual(targetMethodRef,
   642                                          count,
   638                                          count,
   643                                          typeSizeInStackSlots(returnType));
   639                                          typeSizeInStackSlots(returnType));
   644                 }
   640                 }