src/cpu/mips/vm/runtime_mips_64.cpp

changeset 9228
617b86d17edb
parent 9171
c67c94f5b85d
child 9251
1ccc5a3b3671
     1.1 --- a/src/cpu/mips/vm/runtime_mips_64.cpp	Mon Sep 03 14:27:42 2018 +0800
     1.2 +++ b/src/cpu/mips/vm/runtime_mips_64.cpp	Tue Sep 04 21:25:12 2018 +0800
     1.3 @@ -65,13 +65,13 @@
     1.4  //
     1.5  // Note: the exception pc MUST be at a call (precise debug information)
     1.6  //
     1.7 -// 2012/9/14 Jin: [stubGenerator_mips.cpp] generate_forward_exception()
     1.8 -//                    |- V0, V1 are created
     1.9 -//                    |- T9 <= SharedRuntime::exception_handler_for_return_address
    1.10 -//                    `- jr T9
    1.11 -//                         `- the caller's exception_handler
    1.12 -//                               `- jr OptoRuntime::exception_blob
    1.13 -//                                      `- here
    1.14 +//  [stubGenerator_mips.cpp] generate_forward_exception()
    1.15 +//      |- V0, V1 are created
    1.16 +//      |- T9 <= SharedRuntime::exception_handler_for_return_address
    1.17 +//      `- jr T9
    1.18 +//           `- the caller's exception_handler
    1.19 +//                 `- jr OptoRuntime::exception_blob
    1.20 +//                        `- here
    1.21  //
    1.22  void OptoRuntime::generate_exception_blob() {
    1.23    // Capture info about frame layout
    1.24 @@ -92,10 +92,9 @@
    1.25  
    1.26    __ daddiu(SP, SP, -1 * framesize * wordSize);   // Prolog!
    1.27  
    1.28 -  /* 2012/9.27 Jin: this frame will be treated as the original caller method.
    1.29 -   * So, the return pc should be filled with the original exception pc.
    1.30 -   *   ref: X86's implementation
    1.31 -   */
    1.32 +  // this frame will be treated as the original caller method.
    1.33 +  // So, the return pc should be filled with the original exception pc.
    1.34 +  //   ref: X86's implementation
    1.35    __ sd(V1, SP, return_off  *wordSize);  // return address
    1.36    __ sd(FP, SP, fp_off  *wordSize);  // EBP
    1.37  
    1.38 @@ -172,12 +171,12 @@
    1.39    // Clear the exception oop so GC no longer processes it as a root.
    1.40    __ sd(R0, Address(thread, JavaThread::exception_oop_offset()));
    1.41  
    1.42 -  /* 2014/5/12 Jin: Fix seg fault when running:
    1.43 -   *    Eclipse + Plugin + Debug As
    1.44 -   *  This is the only condition where C2 calls SharedRuntime::generate_deopt_blob()
    1.45 -   *
    1.46 -   *  Ref:  http://10.2.5.21:8000/projects/java/wiki/Jgj-log-2014-5-12_
    1.47 -   */
    1.48 +  // Fix seg fault when running:
    1.49 +  //    Eclipse + Plugin + Debug As
    1.50 +  //  This is the only condition where C2 calls SharedRuntime::generate_deopt_blob()
    1.51 +  //
    1.52 +  //  Ref:  http://10.2.5.21:8000/projects/java/wiki/Jgj-log-2014-5-12_
    1.53 +  //
    1.54    __ move(V0, A0);
    1.55    __ move(V1, A1);
    1.56  

mercurial