< prev index next >
src/share/vm/opto/macroArrayCopy.cpp
Print this page
@@ -29,11 +29,11 @@
#include "opto/graphKit.hpp"
#include "opto/macro.hpp"
#include "opto/runtime.hpp"
-void PhaseMacroExpand::insert_mem_bar(Node** ctrl, Node** mem, int opcode, Node* precedent) {
+void PhaseMacroExpand::insert_mem_bar(Node** ctrl, Node** mem, Opcodes opcode, Node* precedent) {
MemBarNode* mb = MemBarNode::make(C, opcode, Compile::AliasIdxBot, precedent);
mb->init_req(TypeFunc::Control, *ctrl);
mb->init_req(TypeFunc::Memory, *mem);
transform_later(mb);
*ctrl = new ProjNode(mb,TypeFunc::Control);
@@ -388,11 +388,11 @@
intcon(0), NULL,
alloc->in(AllocateNode::AllocSize));
// Use a secondary InitializeNode as raw memory barrier.
// Currently it is needed only on this path since other
// paths have stub or runtime calls as raw memory barriers.
- MemBarNode* mb = MemBarNode::make(C, Op_Initialize,
+ MemBarNode* mb = MemBarNode::make(C, Opcodes::Op_Initialize,
Compile::AliasIdxRaw,
top());
transform_later(mb);
mb->set_req(TypeFunc::Control,local_ctrl);
mb->set_req(TypeFunc::Memory, local_mem->memory_at(Compile::AliasIdxRaw));
@@ -707,13 +707,13 @@
// Do not let reads from the cloned object float above the arraycopy.
if (alloc != NULL && !alloc->initialization()->does_not_escape()) {
// Do not let stores that initialize this object be reordered with
// a subsequent store that would make this object accessible by
// other threads.
- insert_mem_bar(ctrl, &out_mem, Op_MemBarStoreStore);
+ insert_mem_bar(ctrl, &out_mem, Opcodes::Op_MemBarStoreStore);
} else if (InsertMemBarAfterArraycopy) {
- insert_mem_bar(ctrl, &out_mem, Op_MemBarCPUOrder);
+ insert_mem_bar(ctrl, &out_mem, Opcodes::Op_MemBarCPUOrder);
}
_igvn.replace_node(_memproj_fallthrough, out_mem);
_igvn.replace_node(_ioproj_fallthrough, *io);
_igvn.replace_node(_fallthroughcatchproj, *ctrl);
@@ -1143,11 +1143,11 @@
top_dest == NULL || top_dest->klass() == NULL) {
// Conservatively insert a memory barrier on all memory slices.
// Do not let writes into the source float below the arraycopy.
{
Node* mem = ac->in(TypeFunc::Memory);
- insert_mem_bar(&ctrl, &mem, Op_MemBarCPUOrder);
+ insert_mem_bar(&ctrl, &mem, Opcodes::Op_MemBarCPUOrder);
merge_mem = MergeMemNode::make(mem);
transform_later(merge_mem);
}
@@ -1160,11 +1160,11 @@
// Since we cannot type the arrays, we don't know which slices
// might be affected. We could restrict this barrier only to those
// memory slices which pertain to array elements--but don't bother.
if (!InsertMemBarAfterArraycopy) {
// (If InsertMemBarAfterArraycopy, there is already one in place.)
- insert_mem_bar(&ctrl, &mem, Op_MemBarCPUOrder);
+ insert_mem_bar(&ctrl, &mem, Opcodes::Op_MemBarCPUOrder);
}
return;
}
// (2) src and dest arrays must have elements of the same BasicType
// Figure out the size and type of the elements we will be copying.
< prev index next >