1.1 --- a/src/cpu/zero/vm/cppInterpreter_zero.hpp Mon Apr 11 15:30:31 2011 -0700 1.2 +++ b/src/cpu/zero/vm/cppInterpreter_zero.hpp Tue Apr 12 02:40:23 2011 -0700 1.3 @@ -1,6 +1,6 @@ 1.4 /* 1.5 * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved. 1.6 - * Copyright 2007, 2008, 2010 Red Hat, Inc. 1.7 + * Copyright 2007, 2008, 2010, 2011 Red Hat, Inc. 1.8 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 1.9 * 1.10 * This code is free software; you can redistribute it and/or modify it 1.11 @@ -36,12 +36,22 @@ 1.12 static int native_entry(methodOop method, intptr_t UNUSED, TRAPS); 1.13 static int accessor_entry(methodOop method, intptr_t UNUSED, TRAPS); 1.14 static int empty_entry(methodOop method, intptr_t UNUSED, TRAPS); 1.15 + static int method_handle_entry(methodOop method, intptr_t UNUSED, TRAPS); 1.16 1.17 public: 1.18 // Main loop of normal_entry 1.19 static void main_loop(int recurse, TRAPS); 1.20 1.21 private: 1.22 + // Helpers for method_handle_entry 1.23 + static void process_method_handle(oop method_handle, TRAPS); 1.24 + static void insert_vmslots(int insert_before, int num_slots, TRAPS); 1.25 + static void remove_vmslots(int first_slot, int num_slots, TRAPS); 1.26 + static BasicType result_type_of_handle(oop method_handle); 1.27 + static intptr_t* calculate_unwind_sp(ZeroStack* stack, oop method_handle); 1.28 + static void throw_exception(JavaThread* thread, Symbol* name,char *msg=NULL); 1.29 + 1.30 + private: 1.31 // Fast result type determination 1.32 static BasicType result_type_of(methodOop method); 1.33