Mercurial > hg > truffle
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 |