comparison src/cpu/x86/vm/templateTable_x86_64.cpp @ 13109:58dfd753ada8

fixed regression from recent hsx merge that prevented TypeProfileLevel from being enabled
author Doug Simon <doug.simon@oracle.com>
date Fri, 22 Nov 2013 01:40:16 +0100
parents 096c224171c4
children d8041d695d19
comparison
equal deleted inserted replaced
13108:d84fa69a9874 13109:58dfd753ada8
3041 // profile this call 3041 // profile this call
3042 __ profile_virtual_call(rax, r14, rdx); 3042 __ profile_virtual_call(rax, r14, rdx);
3043 3043
3044 // get target Method* & entry point 3044 // get target Method* & entry point
3045 __ lookup_virtual_method(rax, index, method); 3045 __ lookup_virtual_method(rax, index, method);
3046 __ profile_arguments_type(rdx, method, r13, true);
3047 #ifdef GRAAL 3046 #ifdef GRAAL
3048 // r14: MethodDataPointer (r14 is callee saved) 3047 // r14: MethodDataPointer (r14 is callee saved)
3049 __ profile_called_method(method, r14, r13); 3048 __ profile_called_method(method, r14, r13);
3050 #endif 3049 #endif
3050 __ profile_arguments_type(rdx, method, r13, true);
3051 3051
3052 __ jump_from_interpreted(method, rdx); 3052 __ jump_from_interpreted(method, rdx);
3053 } 3053 }
3054 3054
3055 3055
3145 // interpreter entry point and a conditional jump to it in case of a null 3145 // interpreter entry point and a conditional jump to it in case of a null
3146 // method. 3146 // method.
3147 __ testptr(rbx, rbx); 3147 __ testptr(rbx, rbx);
3148 __ jcc(Assembler::zero, no_such_method); 3148 __ jcc(Assembler::zero, no_such_method);
3149 3149
3150 __ profile_arguments_type(rdx, rbx, r13, true);
3151
3152 // do the call
3153 // rcx: receiver
3154 // rbx,: Method*
3155 #ifdef GRAAL 3150 #ifdef GRAAL
3156 // r13: MethodDataPointer (r13 is callee saved) 3151 // r13: MethodDataPointer (r13 is callee saved)
3157 __ profile_called_method(rbx, r13, r14); 3152 __ profile_called_method(rbx, r13, r14);
3158 #endif 3153 #endif
3154 __ profile_arguments_type(rdx, rbx, r13, true);
3155
3156 // do the call
3157 // rcx: receiver
3158 // rbx,: Method*
3159 __ jump_from_interpreted(rbx, rdx); 3159 __ jump_from_interpreted(rbx, rdx);
3160 __ should_not_reach_here(); 3160 __ should_not_reach_here();
3161 3161
3162 // exception handling code follows... 3162 // exception handling code follows...
3163 // note: must restore interpreter registers to canonical 3163 // note: must restore interpreter registers to canonical