cppInterpreter_zero.hpp revision 1434
05bf9cbe382548c2665dd01a6a402640c9ec3813Christian Maeder * Copyright 1997-2007 Sun Microsystems, Inc. All Rights Reserved.
268193ecba082551560bb4d9f61e49e558e41834Christian Maeder * Copyright 2007, 2008, 2010 Red Hat, Inc.
05bf9cbe382548c2665dd01a6a402640c9ec3813Christian Maeder * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
268193ecba082551560bb4d9f61e49e558e41834Christian Maeder * This code is free software; you can redistribute it and/or modify it
98890889ffb2e8f6f722b00e265a211f13b5a861Corneliu-Claudiu Prodescu * under the terms of the GNU General Public License version 2 only, as
268193ecba082551560bb4d9f61e49e558e41834Christian Maeder * published by the Free Software Foundation.
268193ecba082551560bb4d9f61e49e558e41834Christian Maeder * This code is distributed in the hope that it will be useful, but WITHOUT
8d97ef4f234681b11bb5924bd4d03adef858d2d2Christian Maeder * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
268193ecba082551560bb4d9f61e49e558e41834Christian Maeder * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
2d256ac235b9deae9f25cd4fb057818da52df365Christian Maeder * version 2 for more details (a copy is included in the LICENSE file that
2d256ac235b9deae9f25cd4fb057818da52df365Christian Maeder * accompanied this code).
2d256ac235b9deae9f25cd4fb057818da52df365Christian Maeder * You should have received a copy of the GNU General Public License version
57221209d11b05aa0373cc3892d5df89ba96ebf9Christian Maeder * 2 along with this work; if not, write to the Free Software Foundation,
57221209d11b05aa0373cc3892d5df89ba96ebf9Christian Maeder * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
286f4deb69d3912337bb09dd7f81284d12912ce8Christian Maeder * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
57221209d11b05aa0373cc3892d5df89ba96ebf9Christian Maeder * CA 95054 USA or visit www.sun.com if you need additional information or
286f4deb69d3912337bb09dd7f81284d12912ce8Christian Maeder * have any questions.
57221209d11b05aa0373cc3892d5df89ba96ebf9Christian Maeder // Size of interpreter code
286f4deb69d3912337bb09dd7f81284d12912ce8Christian Maeder const static int InterpreterCodeSize = 6 * K;
929190acb9f2b2f5857dce841c5a389710895515Andy Gimblett // Method entries
e7799559e0fcce61d77186c93a84b68527cc86e7Christian Maeder static int normal_entry(methodOop method, intptr_t UNUSED, TRAPS);
929190acb9f2b2f5857dce841c5a389710895515Andy Gimblett static int native_entry(methodOop method, intptr_t UNUSED, TRAPS);
4c7f058cdd19ce67b2b5d4b7f69703d0f8a21e38Christian Maeder static int accessor_entry(methodOop method, intptr_t UNUSED, TRAPS);
1df33829303cbf924aa018ac5ce9a28e69c17d22Till Mossakowski static int empty_entry(methodOop method, intptr_t UNUSED, TRAPS);
57221209d11b05aa0373cc3892d5df89ba96ebf9Christian Maeder // Main loop of normal_entry
929190acb9f2b2f5857dce841c5a389710895515Andy Gimblett // Fast result type determination