comparison src/share/vm/code/compiledIC.cpp @ 7004:1d419abb0081

made the initialize state of the jump instruction in a static call stub conform to that expected by an assertion in the runtime Expanded documentation on the design and usage of static call stubs.
author Doug Simon <doug.simon@oracle.com>
date Thu, 22 Nov 2012 23:34:49 +0100
parents e522a00b91aa
children 1baf7f1e3f23
comparison
equal deleted inserted replaced
7003:bb524ee6b8e9 7004:1d419abb0081
563 563
564 NativeMovConstReg* method_holder = nativeMovConstReg_at(stub); // creation also verifies the object 564 NativeMovConstReg* method_holder = nativeMovConstReg_at(stub); // creation also verifies the object
565 NativeJump* jump = nativeJump_at(method_holder->next_instruction_address()); 565 NativeJump* jump = nativeJump_at(method_holder->next_instruction_address());
566 566
567 assert(method_holder->data() == 0 || method_holder->data() == (intptr_t)callee(), "a) MT-unsafe modification of inline cache"); 567 assert(method_holder->data() == 0 || method_holder->data() == (intptr_t)callee(), "a) MT-unsafe modification of inline cache");
568 // TODO(thomaswue): Check what is the correct assert for Graal.
569 #ifndef GRAAL
570 assert(jump->jump_destination() == (address)-1 || jump->jump_destination() == entry, "b) MT-unsafe modification of inline cache"); 568 assert(jump->jump_destination() == (address)-1 || jump->jump_destination() == entry, "b) MT-unsafe modification of inline cache");
571 #endif
572 569
573 // Update stub 570 // Update stub
574 method_holder->set_data((intptr_t)callee()); 571 method_holder->set_data((intptr_t)callee());
575 jump->set_jump_destination(entry); 572 jump->set_jump_destination(entry);
576 573