cppInterpreter_zero.hpp revision 1010:354d3184f6b2
1193323Sed/*
2193323Sed * Copyright 1997-2007 Sun Microsystems, Inc.  All Rights Reserved.
3193323Sed * Copyright 2007, 2008 Red Hat, Inc.
4193323Sed * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5193323Sed *
6193323Sed * This code is free software; you can redistribute it and/or modify it
7193323Sed * under the terms of the GNU General Public License version 2 only, as
8193323Sed * published by the Free Software Foundation.
9193323Sed *
10193323Sed * This code is distributed in the hope that it will be useful, but WITHOUT
11193323Sed * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12193323Sed * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
13193323Sed * version 2 for more details (a copy is included in the LICENSE file that
14193323Sed * accompanied this code).
15193323Sed *
16193323Sed * You should have received a copy of the GNU General Public License version
17193323Sed * 2 along with this work; if not, write to the Free Software Foundation,
18193323Sed * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
19249423Sdim *
20249423Sdim * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
21249423Sdim * CA 95054 USA or visit www.sun.com if you need additional information or
22193323Sed * have any questions.
23193323Sed *
24193323Sed */
25193323Sed
26193323Sed protected:
27193323Sed  // Size of interpreter code
28193323Sed  const static int InterpreterCodeSize = 6 * K;
29198090Srdivacky
30193323Sed public:
31193323Sed  // Method entries
32218893Sdim  static void normal_entry(methodOop method, intptr_t UNUSED, TRAPS);
33218893Sdim  static void native_entry(methodOop method, intptr_t UNUSED, TRAPS);
34218893Sdim  static void accessor_entry(methodOop method, intptr_t UNUSED, TRAPS);
35239462Sdim  static void empty_entry(methodOop method, intptr_t UNUSED, TRAPS);
36193323Sed
37249423Sdim public:
38239462Sdim  // Main loop of normal_entry
39249423Sdim  static void main_loop(int recurse, TRAPS);
40193323Sed
41193323Sed private:
42212904Sdim  // Stack overflow checks
43193323Sed  static bool stack_overflow_imminent(JavaThread *thread);
44193323Sed