src/cpu/x86/vm/templateTable_x86_32.cpp

changeset 5914
d13d7aba8c12
parent 4936
aeaca88565e6
child 6039
bd3237e0e18d
child 6059
ea79ab313e98
     1.1 --- a/src/cpu/x86/vm/templateTable_x86_32.cpp	Wed Oct 09 11:05:17 2013 -0700
     1.2 +++ b/src/cpu/x86/vm/templateTable_x86_32.cpp	Wed Oct 09 16:32:21 2013 +0200
     1.3 @@ -2970,6 +2970,7 @@
     1.4  
     1.5    // profile this call
     1.6    __ profile_final_call(rax);
     1.7 +  __ profile_arguments_type(rax, method, rsi, true);
     1.8  
     1.9    __ jump_from_interpreted(method, rax);
    1.10  
    1.11 @@ -2984,6 +2985,7 @@
    1.12  
    1.13    // get target Method* & entry point
    1.14    __ lookup_virtual_method(rax, index, method);
    1.15 +  __ profile_arguments_type(rdx, method, rsi, true);
    1.16    __ jump_from_interpreted(method, rdx);
    1.17  }
    1.18  
    1.19 @@ -3013,6 +3015,7 @@
    1.20    __ null_check(rcx);
    1.21    // do the call
    1.22    __ profile_call(rax);
    1.23 +  __ profile_arguments_type(rax, rbx, rsi, false);
    1.24    __ jump_from_interpreted(rbx, rax);
    1.25  }
    1.26  
    1.27 @@ -3023,6 +3026,7 @@
    1.28    prepare_invoke(byte_no, rbx);  // get f1 Method*
    1.29    // do the call
    1.30    __ profile_call(rax);
    1.31 +  __ profile_arguments_type(rax, rbx, rsi, false);
    1.32    __ jump_from_interpreted(rbx, rax);
    1.33  }
    1.34  
    1.35 @@ -3082,6 +3086,8 @@
    1.36    __ testptr(rbx, rbx);
    1.37    __ jcc(Assembler::zero, no_such_method);
    1.38  
    1.39 +  __ profile_arguments_type(rdx, rbx, rsi, true);
    1.40 +
    1.41    // do the call
    1.42    // rcx: receiver
    1.43    // rbx,: Method*
    1.44 @@ -3138,6 +3144,7 @@
    1.45  
    1.46    // FIXME: profile the LambdaForm also
    1.47    __ profile_final_call(rax);
    1.48 +  __ profile_arguments_type(rdx, rbx_method, rsi, true);
    1.49  
    1.50    __ jump_from_interpreted(rbx_method, rdx);
    1.51  }
    1.52 @@ -3171,6 +3178,7 @@
    1.53    // %%% should make a type profile for any invokedynamic that takes a ref argument
    1.54    // profile this call
    1.55    __ profile_call(rsi);
    1.56 +  __ profile_arguments_type(rdx, rbx, rsi, false);
    1.57  
    1.58    __ verify_oop(rax_callsite);
    1.59  

mercurial