hotspot/src/share/vm/interpreter/interpreterRuntime.cpp
changeset 35477 7a00b08d27bc
parent 35463 b32e362563bb
child 35901 f5028c67e7cb
child 35606 d873b64009cc
equal deleted inserted replaced
35474:8333d76c7fee 35477:7a00b08d27bc
     1 /*
     1 /*
     2  * Copyright (c) 1997, 2015, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 1997, 2016, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.
     7  * published by the Free Software Foundation.
   457 #endif
   457 #endif
   458 
   458 
   459     // tracing
   459     // tracing
   460     if (log_is_enabled(Info, exceptions)) {
   460     if (log_is_enabled(Info, exceptions)) {
   461       ResourceMark rm(thread);
   461       ResourceMark rm(thread);
   462       Symbol* message = java_lang_Throwable::detail_message(h_exception());
       
   463       stringStream tempst;
   462       stringStream tempst;
   464       if (message != NULL) {
   463       tempst.print("interpreter method <%s>\n"
   465         tempst.print("Exception <%s: %s> (" INTPTR_FORMAT ")\n",
       
   466                      h_exception->print_value_string(), message->as_C_string(),
       
   467                      p2i(h_exception()));
       
   468       } else {
       
   469         tempst.print("Exception <%s> (" INTPTR_FORMAT ")\n",
       
   470                      h_exception->print_value_string(),
       
   471                      p2i(h_exception()));
       
   472       }
       
   473       tempst.print(" thrown in interpreter method <%s>\n"
       
   474                    " at bci %d for thread " INTPTR_FORMAT,
   464                    " at bci %d for thread " INTPTR_FORMAT,
   475                    h_method->print_value_string(), current_bci, p2i(thread));
   465                    h_method->print_value_string(), current_bci, p2i(thread));
   476       LogHandle(exceptions)::info_stream()->print_raw_cr(tempst.as_string());
   466       Exceptions::log_exception(h_exception, tempst);
   477     }
   467     }
   478 // Don't go paging in something which won't be used.
   468 // Don't go paging in something which won't be used.
   479 //     else if (extable->length() == 0) {
   469 //     else if (extable->length() == 0) {
   480 //       // disabled for now - interpreter is not using shortcut yet
   470 //       // disabled for now - interpreter is not using shortcut yet
   481 //       // (shortcut is not to call runtime if we have no exception handlers)
   471 //       // (shortcut is not to call runtime if we have no exception handlers)