Print this page
rev 1081 : imported patch indy-cleanup-6893081.patch

Split Close
Expand all
Collapse all
          --- old/src/share/vm/opto/runtime.cpp
          +++ new/src/share/vm/opto/runtime.cpp
   1    1  /*
   2      - * Copyright 1998-2007 Sun Microsystems, Inc.  All Rights Reserved.
        2 + * Copyright 1998-2009 Sun Microsystems, Inc.  All Rights Reserved.
   3    3   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
   4    4   *
   5    5   * This code is free software; you can redistribute it and/or modify it
   6    6   * under the terms of the GNU General Public License version 2 only, as
   7    7   * published by the Free Software Foundation.
   8    8   *
   9    9   * This code is distributed in the hope that it will be useful, but WITHOUT
  10   10   * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  11   11   * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  12   12   * version 2 for more details (a copy is included in the LICENSE file that
↓ open down ↓ 838 lines elided ↑ open up ↑
 851  851            nm->add_handler_for_exception_and_pc(exception,pc,handler_address);
 852  852          }
 853  853        } else {
 854  854          assert(handler_address == SharedRuntime::compute_compiled_exc_handler(nm, pc, exception, force_unwind, true), "Must be the same");
 855  855        }
 856  856      }
 857  857  
 858  858      thread->set_exception_pc(pc);
 859  859      thread->set_exception_handler_pc(handler_address);
 860  860      thread->set_exception_stack_size(0);
      861 +
      862 +    // Check if the exception PC is a MethodHandle call.
      863 +    thread->set_is_method_handle_exception(nm->is_method_handle_return(pc));
 861  864    }
 862  865  
 863  866    // Restore correct return pc.  Was saved above.
 864  867    thread->set_exception_oop(exception());
 865  868    return handler_address;
 866  869  
 867  870  JRT_END
 868  871  
 869  872  // We are entering here from exception_blob
 870  873  // If there is a compiled exception handler in this method, we will continue there;
↓ open down ↓ 340 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX