src/cpu/zero/vm/cppInterpreter_zero.hpp

changeset 2762
4b95bbb36464
parent 2314
f95d63e2154a
child 4037
da91efe96a93
     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  

mercurial