8054033: Remove unused references to Compile*
Summary: Removed unused references to Compile* missed by JDK-8034812.
Reviewed-by: kvn, roland
--- a/hotspot/src/cpu/ppc/vm/ppc.ad Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/cpu/ppc/vm/ppc.ad Tue Aug 05 09:58:52 2014 +0200
@@ -1283,8 +1283,6 @@
bool MachConstantBaseNode::requires_postalloc_expand() const { return true; }
void MachConstantBaseNode::postalloc_expand(GrowableArray <Node *> *nodes, PhaseRegAlloc *ra_) {
- Compile *C = ra_->C;
-
iRegPdstOper *op_dst = new iRegPdstOper();
MachNode *m1 = new loadToc_hiNode();
MachNode *m2 = new loadToc_loNode();
@@ -2229,7 +2227,7 @@
}
/* TODO: PPC port
// Make a new machine dependent decode node (with its operands).
-MachTypeNode *Matcher::make_decode_node(Compile *C) {
+MachTypeNode *Matcher::make_decode_node() {
assert(Universe::narrow_oop_base() == NULL && Universe::narrow_oop_shift() == 0,
"This method is only implemented for unscaled cOops mode so far");
MachTypeNode *decode = new decodeN_unscaledNode();
@@ -2593,7 +2591,7 @@
MachNode *_last;
} loadConLNodesTuple;
-loadConLNodesTuple loadConLNodesTuple_create(Compile *C, PhaseRegAlloc *ra_, Node *toc, immLOper *immSrc,
+loadConLNodesTuple loadConLNodesTuple_create(PhaseRegAlloc *ra_, Node *toc, immLOper *immSrc,
OptoReg::Name reg_second, OptoReg::Name reg_first) {
loadConLNodesTuple nodes;
@@ -2669,7 +2667,7 @@
enc_class postalloc_expand_load_long_constant(iRegLdst dst, immL src, iRegLdst toc) %{
// Create new nodes.
loadConLNodesTuple loadConLNodes =
- loadConLNodesTuple_create(C, ra_, n_toc, op_src,
+ loadConLNodesTuple_create(ra_, n_toc, op_src,
ra_->get_reg_second(this), ra_->get_reg_first(this));
// Push new nodes.
@@ -3391,7 +3389,7 @@
immLOper *op_repl = new immLOper((jlong)replicate_immF(op_src->constantF()));
loadConLNodesTuple loadConLNodes =
- loadConLNodesTuple_create(C, ra_, n_toc, op_repl,
+ loadConLNodesTuple_create(ra_, n_toc, op_repl,
ra_->get_reg_second(this), ra_->get_reg_first(this));
// Push new nodes.
@@ -3611,7 +3609,7 @@
// Create the nodes for loading the IC from the TOC.
loadConLNodesTuple loadConLNodes_IC =
- loadConLNodesTuple_create(C, ra_, n_toc, new immLOper((jlong)Universe::non_oop_word()),
+ loadConLNodesTuple_create(ra_, n_toc, new immLOper((jlong)Universe::non_oop_word()),
OptoReg::Name(R19_H_num), OptoReg::Name(R19_num));
// Create the call node.
@@ -3765,7 +3763,7 @@
#if defined(ABI_ELFv2)
jlong entry_address = (jlong) this->entry_point();
assert(entry_address, "need address here");
- loadConLNodes_Entry = loadConLNodesTuple_create(C, ra_, n_toc, new immLOper(entry_address),
+ loadConLNodes_Entry = loadConLNodesTuple_create(ra_, n_toc, new immLOper(entry_address),
OptoReg::Name(R12_H_num), OptoReg::Name(R12_num));
#else
// Get the struct that describes the function we are about to call.
@@ -3777,13 +3775,13 @@
loadConLNodesTuple loadConLNodes_Toc;
// Create nodes and operands for loading the entry point.
- loadConLNodes_Entry = loadConLNodesTuple_create(C, ra_, n_toc, new immLOper(entry_address),
+ loadConLNodes_Entry = loadConLNodesTuple_create(ra_, n_toc, new immLOper(entry_address),
OptoReg::Name(R12_H_num), OptoReg::Name(R12_num));
// Create nodes and operands for loading the env pointer.
if (fd->env() != NULL) {
- loadConLNodes_Env = loadConLNodesTuple_create(C, ra_, n_toc, new immLOper((jlong) fd->env()),
+ loadConLNodes_Env = loadConLNodesTuple_create(ra_, n_toc, new immLOper((jlong) fd->env()),
OptoReg::Name(R11_H_num), OptoReg::Name(R11_num));
} else {
loadConLNodes_Env._large_hi = NULL;
@@ -3796,7 +3794,7 @@
}
// Create nodes and operands for loading the Toc point.
- loadConLNodes_Toc = loadConLNodesTuple_create(C, ra_, n_toc, new immLOper((jlong) fd->toc()),
+ loadConLNodes_Toc = loadConLNodesTuple_create(ra_, n_toc, new immLOper((jlong) fd->toc()),
OptoReg::Name(R2_H_num), OptoReg::Name(R2_num));
#endif // ABI_ELFv2
// mtctr node
--- a/hotspot/src/share/vm/adlc/output_c.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/adlc/output_c.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -997,7 +997,7 @@
int nopcnt = 0;
for ( _pipeline->_noplist.reset(); (nop = _pipeline->_noplist.iter()) != NULL; nopcnt++ );
- fprintf(fp_cpp, "void Bundle::initialize_nops(MachNode * nop_list[%d], Compile *C) {\n", nopcnt);
+ fprintf(fp_cpp, "void Bundle::initialize_nops(MachNode * nop_list[%d]) {\n", nopcnt);
int i = 0;
for ( _pipeline->_noplist.reset(); (nop = _pipeline->_noplist.iter()) != NULL; i++ ) {
fprintf(fp_cpp, " nop_list[%d] = (MachNode *) new %sNode();\n", i, nop);
@@ -1369,7 +1369,7 @@
fprintf(fp, " ra_->add_reference(root, inst%d);\n", inst_num);
fprintf(fp, " ra_->set_oop (root, ra_->is_oop(inst%d));\n", inst_num);
fprintf(fp, " ra_->set_pair(root->_idx, ra_->get_reg_second(inst%d), ra_->get_reg_first(inst%d));\n", inst_num, inst_num);
- fprintf(fp, " root->_opnds[0] = inst%d->_opnds[0]->clone(C); // result\n", inst_num);
+ fprintf(fp, " root->_opnds[0] = inst%d->_opnds[0]->clone(); // result\n", inst_num);
fprintf(fp, " // ----- Done with initial setup -----\n");
} else {
if( (op_form == NULL) || (op_form->is_base_constant(globals) == Form::none) ) {
@@ -1382,7 +1382,7 @@
} else {
fprintf(fp, " // no ideal edge for constants after matching\n");
}
- fprintf(fp, " root->_opnds[%d] = inst%d->_opnds[%d]->clone(C);\n",
+ fprintf(fp, " root->_opnds[%d] = inst%d->_opnds[%d]->clone();\n",
opnds_index, inst_num, inst_op_num );
}
++opnds_index;
@@ -1402,7 +1402,7 @@
// Define the Peephole method for an instruction node
void ArchDesc::definePeephole(FILE *fp, InstructForm *node) {
// Generate Peephole function header
- fprintf(fp, "MachNode *%sNode::peephole( Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted, Compile* C ) {\n", node->_ident);
+ fprintf(fp, "MachNode *%sNode::peephole(Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted) {\n", node->_ident);
fprintf(fp, " bool matches = true;\n");
// Identify the maximum instruction position,
@@ -1593,7 +1593,7 @@
}
const char *resultOper = new_inst->reduce_result();
- fprintf(fp," n%d->set_opnd_array(0, state->MachOperGenerator( %s, C ));\n",
+ fprintf(fp," n%d->set_opnd_array(0, state->MachOperGenerator(%s));\n",
cnt, machOperEnum(resultOper));
// get the formal operand NameList
@@ -1634,7 +1634,7 @@
// If there is no use of the created operand, just skip it
if (new_pos != NameList::Not_in_list) {
//Copy the operand from the original made above
- fprintf(fp," n%d->set_opnd_array(%d, op%d->clone(C)); // %s\n",
+ fprintf(fp," n%d->set_opnd_array(%d, op%d->clone()); // %s\n",
cnt, new_pos, exp_pos-node->num_opnds(), opid);
// Check for who defines this operand & add edge if needed
fprintf(fp," if(tmp%d != NULL)\n", exp_pos);
@@ -1662,7 +1662,7 @@
new_pos = new_inst->operand_position(parameter,Component::USE);
if (new_pos != -1) {
// Copy the operand from the ExpandNode to the new node
- fprintf(fp," n%d->set_opnd_array(%d, opnd_array(%d)->clone(C)); // %s\n",
+ fprintf(fp," n%d->set_opnd_array(%d, opnd_array(%d)->clone()); // %s\n",
cnt, new_pos, exp_pos, opid);
// For each operand add appropriate input edges by looking at tmp's
fprintf(fp," if(tmp%d == this) {\n", exp_pos);
@@ -1729,14 +1729,14 @@
declared_def = true;
}
if (op && op->_interface && op->_interface->is_RegInterface()) {
- fprintf(fp," def = new MachTempNode(state->MachOperGenerator( %s, C ));\n",
+ fprintf(fp," def = new MachTempNode(state->MachOperGenerator(%s));\n",
machOperEnum(op->_ident));
fprintf(fp," add_req(def);\n");
// The operand for TEMP is already constructed during
// this mach node construction, see buildMachNode().
//
// int idx = node->operand_position_format(comp->_name);
- // fprintf(fp," set_opnd_array(%d, state->MachOperGenerator( %s, C ));\n",
+ // fprintf(fp," set_opnd_array(%d, state->MachOperGenerator(%s));\n",
// idx, machOperEnum(op->_ident));
} else {
assert(false, "can't have temps which aren't registers");
@@ -1802,7 +1802,7 @@
uint j = node->unique_opnds_idx(i);
// unique_opnds_idx(i) is unique if unique_opnds_idx(j) is not unique.
if( j != node->unique_opnds_idx(j) ) {
- fprintf(fp," set_opnd_array(%d, opnd_array(%d)->clone(C)); // %s\n",
+ fprintf(fp," set_opnd_array(%d, opnd_array(%d)->clone()); // %s\n",
new_num_opnds, i, comp->_name);
// delete not unique edges here
fprintf(fp," for(unsigned i = 0; i < num%d; i++) {\n", i);
@@ -2839,12 +2839,12 @@
// generate code to create a clone for a class derived from MachOper
//
-// (0) MachOper *MachOperXOper::clone(Compile* C) const {
+// (0) MachOper *MachOperXOper::clone() const {
// (1) return new MachXOper( _ccode, _c0, _c1, ..., _cn);
// (2) }
//
static void defineClone(FILE *fp, FormDict &globalNames, OperandForm &oper) {
- fprintf(fp,"MachOper *%sOper::clone(Compile* C) const {\n", oper._ident);
+ fprintf(fp,"MachOper *%sOper::clone() const {\n", oper._ident);
// Check for constants that need to be copied over
const int num_consts = oper.num_consts(globalNames);
const bool is_ideal_bool = oper.is_ideal_bool();
@@ -3043,7 +3043,7 @@
static void define_fill_new_machnode(bool used, FILE *fp_cpp) {
fprintf(fp_cpp, "\n");
fprintf(fp_cpp, "// Copy _idx, inputs and operands to new node\n");
- fprintf(fp_cpp, "void MachNode::fill_new_machnode( MachNode* node, Compile* C) const {\n");
+ fprintf(fp_cpp, "void MachNode::fill_new_machnode(MachNode* node) const {\n");
if( !used ) {
fprintf(fp_cpp, " // This architecture does not have cisc or short branch instructions\n");
fprintf(fp_cpp, " ShouldNotCallThis();\n");
@@ -3064,7 +3064,7 @@
fprintf(fp_cpp, " MachOper **to = node->_opnds;\n");
fprintf(fp_cpp, " for( int i = 0; i < nopnds; i++ ) {\n");
fprintf(fp_cpp, " if( i != cisc_operand() ) \n");
- fprintf(fp_cpp, " to[i] = _opnds[i]->clone(C);\n");
+ fprintf(fp_cpp, " to[i] = _opnds[i]->clone();\n");
fprintf(fp_cpp, " }\n");
fprintf(fp_cpp, "}\n");
}
@@ -3105,7 +3105,7 @@
if ( strcmp(oper->_ident,"label") == 0 ) {
defineIn_RegMask(_CPP_MISC_file._fp, _globalNames, *oper);
- fprintf(fp,"MachOper *%sOper::clone(Compile* C) const {\n", oper->_ident);
+ fprintf(fp,"MachOper *%sOper::clone() const {\n", oper->_ident);
fprintf(fp," return new %sOper(_label, _block_num);\n", oper->_ident);
fprintf(fp,"}\n");
@@ -3124,7 +3124,7 @@
if ( strcmp(oper->_ident,"method") == 0 ) {
defineIn_RegMask(_CPP_MISC_file._fp, _globalNames, *oper);
- fprintf(fp,"MachOper *%sOper::clone(Compile* C) const {\n", oper->_ident);
+ fprintf(fp,"MachOper *%sOper::clone() const {\n", oper->_ident);
fprintf(fp," return new %sOper(_method);\n", oper->_ident);
fprintf(fp,"}\n");
@@ -3845,7 +3845,7 @@
"// that invokes 'new' on the corresponding class constructor.\n");
fprintf(fp_cpp, "\n");
fprintf(fp_cpp, "MachOper *State::MachOperGenerator");
- fprintf(fp_cpp, "(int opcode, Compile* C)");
+ fprintf(fp_cpp, "(int opcode)");
fprintf(fp_cpp, "{\n");
fprintf(fp_cpp, "\n");
fprintf(fp_cpp, " switch(opcode) {\n");
@@ -3921,7 +3921,7 @@
int index = clist.operand_position(comp->_name, comp->_usedef, inst);
const char *opcode = machOperEnum(comp->_type);
fprintf(fp_cpp, "%s node->set_opnd_array(%d, ", indent, index);
- fprintf(fp_cpp, "MachOperGenerator(%s, C));\n", opcode);
+ fprintf(fp_cpp, "MachOperGenerator(%s));\n", opcode);
}
}
else if ( inst->is_chain_of_constant(_globalNames, opType) ) {
@@ -3978,7 +3978,7 @@
InstructForm *inst_cisc = cisc_spill_alternate();
if (inst_cisc != NULL) {
fprintf(fp_hpp, " virtual int cisc_operand() const { return %d; }\n", cisc_spill_operand());
- fprintf(fp_hpp, " virtual MachNode *cisc_version(int offset, Compile* C);\n");
+ fprintf(fp_hpp, " virtual MachNode *cisc_version(int offset);\n");
fprintf(fp_hpp, " virtual void use_cisc_RegMask();\n");
fprintf(fp_hpp, " virtual const RegMask *cisc_RegMask() const { return _cisc_RegMask; }\n");
}
@@ -4008,7 +4008,7 @@
// Construct CISC version of this instruction
fprintf(fp_cpp, "\n");
fprintf(fp_cpp, "// Build CISC version of this instruction\n");
- fprintf(fp_cpp, "MachNode *%sNode::cisc_version( int offset, Compile* C ) {\n", this->_ident);
+ fprintf(fp_cpp, "MachNode *%sNode::cisc_version(int offset) {\n", this->_ident);
// Create the MachNode object
fprintf(fp_cpp, " %sNode *node = new %sNode();\n", name, name);
// Fill in the bottom_type where requested
@@ -4023,7 +4023,7 @@
fprintf(fp_cpp, "\n");
fprintf(fp_cpp, " // Copy _idx, inputs and operands to new node\n");
- fprintf(fp_cpp, " fill_new_machnode(node, C);\n");
+ fprintf(fp_cpp, " fill_new_machnode(node);\n");
// Construct operand to access [stack_pointer + offset]
fprintf(fp_cpp, " // Construct operand to access [stack_pointer + offset]\n");
fprintf(fp_cpp, " node->set_opnd_array(cisc_operand(), new %sOper(offset));\n", cisc_oper_name);
@@ -4042,7 +4042,7 @@
// Build prototypes for short branch methods
void InstructForm::declare_short_branch_methods(FILE *fp_hpp) {
if (has_short_branch_form()) {
- fprintf(fp_hpp, " virtual MachNode *short_branch_version(Compile* C);\n");
+ fprintf(fp_hpp, " virtual MachNode *short_branch_version();\n");
}
}
@@ -4055,7 +4055,7 @@
// Construct short_branch_version() method.
fprintf(fp_cpp, "// Build short branch version of this instruction\n");
- fprintf(fp_cpp, "MachNode *%sNode::short_branch_version(Compile* C) {\n", this->_ident);
+ fprintf(fp_cpp, "MachNode *%sNode::short_branch_version() {\n", this->_ident);
// Create the MachNode object
fprintf(fp_cpp, " %sNode *node = new %sNode();\n", name, name);
if( is_ideal_if() ) {
@@ -4071,7 +4071,7 @@
// Short branch version must use same node index for access
// through allocator's tables
fprintf(fp_cpp, " // Copy _idx, inputs and operands to new node\n");
- fprintf(fp_cpp, " fill_new_machnode(node, C);\n");
+ fprintf(fp_cpp, " fill_new_machnode(node);\n");
// Return result and exit scope
fprintf(fp_cpp, " return node;\n");
@@ -4097,7 +4097,7 @@
"// that invokes 'new' on the corresponding class constructor.\n");
fprintf(fp_cpp, "\n");
fprintf(fp_cpp, "MachNode *State::MachNodeGenerator");
- fprintf(fp_cpp, "(int opcode, Compile* C)");
+ fprintf(fp_cpp, "(int opcode)");
fprintf(fp_cpp, "{\n");
fprintf(fp_cpp, " switch(opcode) {\n");
--- a/hotspot/src/share/vm/adlc/output_h.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/adlc/output_h.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1119,7 +1119,7 @@
fprintf(fp_hpp, " _nop_count = %d\n",
_pipeline->_nopcnt);
fprintf(fp_hpp, " };\n\n");
- fprintf(fp_hpp, " static void initialize_nops(MachNode *nop_list[%d], Compile* C);\n\n",
+ fprintf(fp_hpp, " static void initialize_nops(MachNode *nop_list[%d]);\n\n",
_pipeline->_nopcnt);
fprintf(fp_hpp, "#ifndef PRODUCT\n");
fprintf(fp_hpp, " void dump(outputStream *st = tty) const;\n");
@@ -1240,7 +1240,7 @@
constant_type, _globalNames);
// Clone function
- fprintf(fp," virtual MachOper *clone(Compile* C) const;\n");
+ fprintf(fp," virtual MachOper *clone() const;\n");
// Support setting a spill offset into a constant operand.
// We only support setting an 'int' offset, while in the
@@ -1718,7 +1718,7 @@
// If there is an explicit peephole rule, build it
if ( instr->peepholes() != NULL ) {
- fprintf(fp," virtual MachNode *peephole(Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted, Compile *C);\n");
+ fprintf(fp," virtual MachNode *peephole(Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted);\n");
}
// Output the declaration for number of relocation entries
@@ -1863,7 +1863,7 @@
}
if ( instr->num_post_match_opnds() != 0
|| instr->is_chain_of_constant(_globalNames) ) {
- fprintf(fp," friend MachNode *State::MachNodeGenerator(int opcode, Compile* C);\n");
+ fprintf(fp," friend MachNode *State::MachNodeGenerator(int opcode);\n");
}
if ( instr->rematerialize(_globalNames, get_registers()) ) {
fprintf(fp," // Rematerialize %s\n", instr->_ident);
@@ -2071,8 +2071,8 @@
fprintf(fp," DEBUG_ONLY( ~State(void); ) // Destructor\n");
fprintf(fp,"\n");
fprintf(fp," // Methods created by ADLC and invoked by Reduce\n");
- fprintf(fp," MachOper *MachOperGenerator( int opcode, Compile* C );\n");
- fprintf(fp," MachNode *MachNodeGenerator( int opcode, Compile* C );\n");
+ fprintf(fp," MachOper *MachOperGenerator(int opcode);\n");
+ fprintf(fp," MachNode *MachNodeGenerator(int opcode);\n");
fprintf(fp,"\n");
fprintf(fp," // Assign a state to a node, definition of method produced by ADLC\n");
fprintf(fp," bool DFA( int opcode, const Node *ideal );\n");
--- a/hotspot/src/share/vm/opto/callGenerator.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/callGenerator.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -357,7 +357,7 @@
// Make sure the state is a MergeMem for parsing.
if (!map->in(TypeFunc::Memory)->is_MergeMem()) {
- Node* mem = MergeMemNode::make(C, map->in(TypeFunc::Memory));
+ Node* mem = MergeMemNode::make(map->in(TypeFunc::Memory));
C->initial_gvn()->set_type_bottom(mem);
map->set_req(TypeFunc::Memory, mem);
}
--- a/hotspot/src/share/vm/opto/cfgnode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/cfgnode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1876,7 +1876,7 @@
igvn->register_new_node_with_optimizer(new_base);
hook->add_req(new_base);
}
- MergeMemNode* result = MergeMemNode::make(phase->C, new_base);
+ MergeMemNode* result = MergeMemNode::make(new_base);
for (uint i = 1; i < req(); ++i) {
Node *ii = in(i);
if (ii->is_MergeMem()) {
--- a/hotspot/src/share/vm/opto/chaitin.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/chaitin.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1620,7 +1620,7 @@
C->check_node_count(0, "out of nodes fixing spills");
if (C->failing()) return;
// Transform node
- MachNode *cisc = mach->cisc_version(stk_offset, C)->as_Mach();
+ MachNode *cisc = mach->cisc_version(stk_offset)->as_Mach();
cisc->set_req(inp,fp); // Base register is frame pointer
if( cisc->oper_input_base() > 1 && mach->oper_input_base() <= 1 ) {
assert( cisc->oper_input_base() == 2, "Only adding one edge");
--- a/hotspot/src/share/vm/opto/compile.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/compile.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -2842,7 +2842,7 @@
// oops implicit null check is not generated.
// This will allow to generate normal oop implicit null check.
if (Matcher::gen_narrow_oop_implicit_null_checks())
- new_in2 = ConNode::make(this, TypeNarrowOop::NULL_PTR);
+ new_in2 = ConNode::make(TypeNarrowOop::NULL_PTR);
//
// This transformation together with CastPP transformation above
// will generated code for implicit NULL checks for compressed oops.
@@ -2881,9 +2881,9 @@
// NullCheck base_reg
//
} else if (t->isa_oopptr()) {
- new_in2 = ConNode::make(this, t->make_narrowoop());
+ new_in2 = ConNode::make(t->make_narrowoop());
} else if (t->isa_klassptr()) {
- new_in2 = ConNode::make(this, t->make_narrowklass());
+ new_in2 = ConNode::make(t->make_narrowklass());
}
}
if (new_in2 != NULL) {
@@ -2916,11 +2916,11 @@
const Type* t = in1->bottom_type();
if (t == TypePtr::NULL_PTR) {
assert(t->isa_oopptr(), "null klass?");
- n->subsume_by(ConNode::make(this, TypeNarrowOop::NULL_PTR), this);
+ n->subsume_by(ConNode::make(TypeNarrowOop::NULL_PTR), this);
} else if (t->isa_oopptr()) {
- n->subsume_by(ConNode::make(this, t->make_narrowoop()), this);
+ n->subsume_by(ConNode::make(t->make_narrowoop()), this);
} else if (t->isa_klassptr()) {
- n->subsume_by(ConNode::make(this, t->make_narrowklass()), this);
+ n->subsume_by(ConNode::make(t->make_narrowklass()), this);
}
}
if (in1->outcnt() == 0) {
@@ -2981,7 +2981,7 @@
if (d) {
// Replace them with a fused divmod if supported
if (Matcher::has_match_rule(Op_DivModI)) {
- DivModINode* divmod = DivModINode::make(this, n);
+ DivModINode* divmod = DivModINode::make(n);
d->subsume_by(divmod->div_proj(), this);
n->subsume_by(divmod->mod_proj(), this);
} else {
@@ -3001,7 +3001,7 @@
if (d) {
// Replace them with a fused divmod if supported
if (Matcher::has_match_rule(Op_DivModL)) {
- DivModLNode* divmod = DivModLNode::make(this, n);
+ DivModLNode* divmod = DivModLNode::make(n);
d->subsume_by(divmod->div_proj(), this);
n->subsume_by(divmod->mod_proj(), this);
} else {
@@ -3027,7 +3027,7 @@
if (n->req()-1 > 2) {
// Replace many operand PackNodes with a binary tree for matching
PackNode* p = (PackNode*) n;
- Node* btp = p->binary_tree_pack(this, 1, n->req());
+ Node* btp = p->binary_tree_pack(1, n->req());
n->subsume_by(btp, this);
}
break;
@@ -3052,11 +3052,11 @@
if (t != NULL && t->is_con()) {
juint shift = t->get_con();
if (shift > mask) { // Unsigned cmp
- n->set_req(2, ConNode::make(this, TypeInt::make(shift & mask)));
+ n->set_req(2, ConNode::make(TypeInt::make(shift & mask)));
}
} else {
if (t == NULL || t->_lo < 0 || t->_hi > (int)mask) {
- Node* shift = new AndINode(in2, ConNode::make(this, TypeInt::make(mask)));
+ Node* shift = new AndINode(in2, ConNode::make(TypeInt::make(mask)));
n->set_req(2, shift);
}
}
--- a/hotspot/src/share/vm/opto/connode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/connode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -43,7 +43,7 @@
}
//------------------------------make-------------------------------------------
-ConNode *ConNode::make( Compile* C, const Type *t ) {
+ConNode *ConNode::make(const Type *t) {
switch( t->basic_type() ) {
case T_INT: return new ConINode( t->is_int() );
case T_LONG: return new ConLNode( t->is_long() );
--- a/hotspot/src/share/vm/opto/connode.hpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/connode.hpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -46,7 +46,7 @@
virtual const RegMask &in_RegMask(uint) const { return RegMask::Empty; }
// Polymorphic factory method:
- static ConNode* make( Compile* C, const Type *t );
+ static ConNode* make(const Type *t);
};
//------------------------------ConINode---------------------------------------
@@ -57,7 +57,7 @@
virtual int Opcode() const;
// Factory method:
- static ConINode* make( Compile* C, int con ) {
+ static ConINode* make(int con) {
return new ConINode( TypeInt::make(con) );
}
@@ -71,7 +71,7 @@
virtual int Opcode() const;
// Factory methods:
- static ConPNode* make( Compile *C ,address con ) {
+ static ConPNode* make(address con) {
if (con == NULL)
return new ConPNode( TypePtr::NULL_PTR ) ;
else
@@ -105,7 +105,7 @@
virtual int Opcode() const;
// Factory method:
- static ConLNode* make( Compile *C ,jlong con ) {
+ static ConLNode* make(jlong con) {
return new ConLNode( TypeLong::make(con) );
}
@@ -119,7 +119,7 @@
virtual int Opcode() const;
// Factory method:
- static ConFNode* make( Compile *C, float con ) {
+ static ConFNode* make(float con) {
return new ConFNode( TypeF::make(con) );
}
@@ -133,7 +133,7 @@
virtual int Opcode() const;
// Factory method:
- static ConDNode* make( Compile *C, double con ) {
+ static ConDNode* make(double con) {
return new ConDNode( TypeD::make(con) );
}
--- a/hotspot/src/share/vm/opto/divnode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/divnode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1280,7 +1280,7 @@
}
//------------------------------make------------------------------------------
-DivModINode* DivModINode::make(Compile* C, Node* div_or_mod) {
+DivModINode* DivModINode::make(Node* div_or_mod) {
Node* n = div_or_mod;
assert(n->Opcode() == Op_DivI || n->Opcode() == Op_ModI,
"only div or mod input pattern accepted");
@@ -1292,7 +1292,7 @@
}
//------------------------------make------------------------------------------
-DivModLNode* DivModLNode::make(Compile* C, Node* div_or_mod) {
+DivModLNode* DivModLNode::make(Node* div_or_mod) {
Node* n = div_or_mod;
assert(n->Opcode() == Op_DivL || n->Opcode() == Op_ModL,
"only div or mod input pattern accepted");
--- a/hotspot/src/share/vm/opto/divnode.hpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/divnode.hpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2010, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -168,7 +168,7 @@
virtual Node *match( const ProjNode *proj, const Matcher *m );
// Make a divmod and associated projections from a div or mod.
- static DivModINode* make(Compile* C, Node* div_or_mod);
+ static DivModINode* make(Node* div_or_mod);
};
//------------------------------DivModLNode---------------------------------------
@@ -181,7 +181,7 @@
virtual Node *match( const ProjNode *proj, const Matcher *m );
// Make a divmod and associated projections from a div or mod.
- static DivModLNode* make(Compile* C, Node* div_or_mod);
+ static DivModLNode* make(Node* div_or_mod);
};
#endif // SHARE_VM_OPTO_DIVNODE_HPP
--- a/hotspot/src/share/vm/opto/escape.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/escape.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1452,7 +1452,6 @@
return 0;
InitializeNode* ini = alloc->as_Allocate()->initialization();
- Compile* C = _compile;
bool visited_bottom_offset = false;
GrowableArray<int> offsets_worklist;
--- a/hotspot/src/share/vm/opto/graphKit.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/graphKit.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -591,7 +591,7 @@
C->log()->elem("hot_throw preallocated='1' reason='%s'",
Deoptimization::trap_reason_name(reason));
const TypeInstPtr* ex_con = TypeInstPtr::make(ex_obj);
- Node* ex_node = _gvn.transform( ConNode::make(C, ex_con) );
+ Node* ex_node = _gvn.transform(ConNode::make(ex_con));
// Clear the detail message of the preallocated exception object.
// Weblogic sometimes mutates the detail message of exceptions
@@ -706,7 +706,7 @@
if (map() == NULL) return NULL;
// Clone the memory edge first
- Node* mem = MergeMemNode::make(C, map()->memory());
+ Node* mem = MergeMemNode::make(map()->memory());
gvn().set_type_bottom(mem);
SafePointNode *clonemap = (SafePointNode*)map()->clone();
@@ -1135,7 +1135,7 @@
return longcon((julong) offset_con);
}
Node* conv = _gvn.transform( new ConvI2LNode(offset));
- Node* mask = _gvn.transform( ConLNode::make(C, (julong) max_juint) );
+ Node* mask = _gvn.transform(ConLNode::make((julong) max_juint));
return _gvn.transform( new AndLNode(conv, mask) );
}
@@ -1435,7 +1435,7 @@
//------------------------------set_all_memory---------------------------------
void GraphKit::set_all_memory(Node* newmem) {
- Node* mergemem = MergeMemNode::make(C, newmem);
+ Node* mergemem = MergeMemNode::make(newmem);
gvn().set_type_bottom(mergemem);
map()->set_memory(mergemem);
}
@@ -1464,9 +1464,9 @@
Node* mem = memory(adr_idx);
Node* ld;
if (require_atomic_access && bt == T_LONG) {
- ld = LoadLNode::make_atomic(C, ctl, mem, adr, adr_type, t, mo);
+ ld = LoadLNode::make_atomic(ctl, mem, adr, adr_type, t, mo);
} else if (require_atomic_access && bt == T_DOUBLE) {
- ld = LoadDNode::make_atomic(C, ctl, mem, adr, adr_type, t, mo);
+ ld = LoadDNode::make_atomic(ctl, mem, adr, adr_type, t, mo);
} else {
ld = LoadNode::make(_gvn, ctl, mem, adr, adr_type, t, bt, mo);
}
@@ -1488,9 +1488,9 @@
Node *mem = memory(adr_idx);
Node* st;
if (require_atomic_access && bt == T_LONG) {
- st = StoreLNode::make_atomic(C, ctl, mem, adr, adr_type, val, mo);
+ st = StoreLNode::make_atomic(ctl, mem, adr, adr_type, val, mo);
} else if (require_atomic_access && bt == T_DOUBLE) {
- st = StoreDNode::make_atomic(C, ctl, mem, adr, adr_type, val, mo);
+ st = StoreDNode::make_atomic(ctl, mem, adr, adr_type, val, mo);
} else {
st = StoreNode::make(_gvn, ctl, mem, adr, adr_type, val, bt, mo);
}
@@ -3364,7 +3364,7 @@
// This will allow us to observe initializations when they occur,
// and link them properly (as a group) to the InitializeNode.
assert(init->in(InitializeNode::Memory) == malloc, "");
- MergeMemNode* minit_in = MergeMemNode::make(C, malloc);
+ MergeMemNode* minit_in = MergeMemNode::make(malloc);
init->set_req(InitializeNode::Memory, minit_in);
record_for_igvn(minit_in); // fold it up later, if possible
Node* minit_out = memory(rawidx);
--- a/hotspot/src/share/vm/opto/idealKit.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/idealKit.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2005, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -320,7 +320,7 @@
Node* ns = new_cvstate();
for (uint i = 0; i < ns->req(); i++) ns->init_req(i, _cvstate->in(i));
// We must clone memory since it will be updated as we do stores.
- ns->set_req(TypeFunc::Memory, MergeMemNode::make(C, ns->in(TypeFunc::Memory)));
+ ns->set_req(TypeFunc::Memory, MergeMemNode::make(ns->in(TypeFunc::Memory)));
return ns;
}
@@ -359,7 +359,7 @@
Node* mem = memory(adr_idx);
Node* ld;
if (require_atomic_access && bt == T_LONG) {
- ld = LoadLNode::make_atomic(C, ctl, mem, adr, adr_type, t, MemNode::unordered);
+ ld = LoadLNode::make_atomic(ctl, mem, adr, adr_type, t, MemNode::unordered);
} else {
ld = LoadNode::make(_gvn, ctl, mem, adr, adr_type, t, bt, MemNode::unordered);
}
@@ -375,7 +375,7 @@
Node *mem = memory(adr_idx);
Node* st;
if (require_atomic_access && bt == T_LONG) {
- st = StoreLNode::make_atomic(C, ctl, mem, adr, adr_type, val, mo);
+ st = StoreLNode::make_atomic(ctl, mem, adr, adr_type, val, mo);
} else {
st = StoreNode::make(_gvn, ctl, mem, adr, adr_type, val, bt, mo);
}
--- a/hotspot/src/share/vm/opto/library_call.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/library_call.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1905,7 +1905,7 @@
Node *bolyplus1 = _gvn.transform(new BoolNode( cmpyplus1, BoolTest::eq ));
Node* correctedsign = NULL;
if (ConditionalMoveLimit != 0) {
- correctedsign = _gvn.transform( CMoveNode::make(C, NULL, bolyplus1, signnode, longcon(0), TypeLong::LONG));
+ correctedsign = _gvn.transform(CMoveNode::make(NULL, bolyplus1, signnode, longcon(0), TypeLong::LONG));
} else {
IfNode *ifyplus1 = create_and_xform_if(ylong_path,bolyplus1, PROB_FAIR, COUNT_UNKNOWN);
RegionNode *r = new RegionNode(3);
@@ -1934,7 +1934,7 @@
// (1&(long)y)==1?-DPow(abs(x), y):DPow(abs(x), y)
Node *signresult = NULL;
if (ConditionalMoveLimit != 0) {
- signresult = _gvn.transform( CMoveNode::make(C, NULL, bol3, absxpowy, negabsxpowy, Type::DOUBLE));
+ signresult = _gvn.transform(CMoveNode::make(NULL, bol3, absxpowy, negabsxpowy, Type::DOUBLE));
} else {
IfNode *ifyeven = create_and_xform_if(ylong_path,bol3, PROB_FAIR, COUNT_UNKNOWN);
RegionNode *r = new RegionNode(3);
@@ -2268,7 +2268,7 @@
// which could hinder other optimizations.
// Since Math.min/max is often used with arraycopy, we want
// tightly_coupled_allocation to be able to see beyond min/max expressions.
- Node* cmov = CMoveNode::make(C, NULL, best_bol,
+ Node* cmov = CMoveNode::make(NULL, best_bol,
answer_if_false, answer_if_true,
TypeInt::make(lo, hi, widen));
--- a/hotspot/src/share/vm/opto/loopopts.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/loopopts.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -625,7 +625,7 @@
set_ctrl(inp, cmov_ctrl);
}
}
- Node *cmov = CMoveNode::make( C, cmov_ctrl, iff->in(1), phi->in(1+flip), phi->in(2-flip), _igvn.type(phi) );
+ Node *cmov = CMoveNode::make(cmov_ctrl, iff->in(1), phi->in(1+flip), phi->in(2-flip), _igvn.type(phi));
register_new_node( cmov, cmov_ctrl );
_igvn.replace_node( phi, cmov );
#ifndef PRODUCT
--- a/hotspot/src/share/vm/opto/machnode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/machnode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -178,7 +178,7 @@
}
// Return an equivalent instruction using memory for cisc_operand position
-MachNode *MachNode::cisc_version(int offset, Compile* C) {
+MachNode *MachNode::cisc_version(int offset) {
ShouldNotCallThis();
return NULL;
}
@@ -411,7 +411,7 @@
//------------------------------peephole---------------------------------------
// Apply peephole rule(s) to this instruction
-MachNode *MachNode::peephole( Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted, Compile* C ) {
+MachNode *MachNode::peephole(Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted) {
return NULL;
}
--- a/hotspot/src/share/vm/opto/machnode.hpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/machnode.hpp Tue Aug 05 09:58:52 2014 +0200
@@ -152,7 +152,7 @@
virtual uint cmp( const MachOper &oper ) const;
// Virtual clone, since I do not know how big the MachOper is.
- virtual MachOper *clone(Compile* C) const = 0;
+ virtual MachOper *clone() const = 0;
// Return ideal Type from simple operands. Fail for complex operands.
virtual const Type *type() const;
@@ -202,10 +202,10 @@
// Copy inputs and operands to new node of instruction.
// Called from cisc_version() and short_branch_version().
// !!!! The method's body is defined in ad_<arch>.cpp file.
- void fill_new_machnode(MachNode *n, Compile* C) const;
+ void fill_new_machnode(MachNode *n) const;
// Return an equivalent instruction using memory for cisc_operand position
- virtual MachNode *cisc_version(int offset, Compile* C);
+ virtual MachNode *cisc_version(int offset);
// Modify this instruction's register mask to use stack version for cisc_operand
virtual void use_cisc_RegMask();
@@ -317,7 +317,7 @@
virtual const class TypePtr *adr_type() const;
// Apply peephole rule(s) to this instruction
- virtual MachNode *peephole( Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted, Compile* C );
+ virtual MachNode *peephole(Block *block, int block_index, PhaseRegAlloc *ra_, int &deleted);
// Top-level ideal Opcode matched
virtual int ideal_Opcode() const { return Op_Node; }
@@ -627,7 +627,7 @@
virtual void save_label(Label** label, uint* block_num) = 0;
// Support for short branches
- virtual MachNode *short_branch_version(Compile* C) { return NULL; }
+ virtual MachNode *short_branch_version() { return NULL; }
virtual bool pinned() const { return true; };
};
@@ -985,7 +985,7 @@
labelOper(labelOper* l) : _label(l->_label) , _block_num(l->_block_num) {}
- virtual MachOper *clone(Compile* C) const;
+ virtual MachOper *clone() const;
virtual Label *label() const { assert(_label != NULL, "need Label"); return _label; }
@@ -1012,7 +1012,7 @@
methodOper() : _method(0) {}
methodOper(intptr_t method) : _method(method) {}
- virtual MachOper *clone(Compile* C) const;
+ virtual MachOper *clone() const;
virtual intptr_t method() const { return _method; }
--- a/hotspot/src/share/vm/opto/matcher.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/matcher.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -305,7 +305,7 @@
// to avoid false sharing if the corresponding mach node is not used.
// The corresponding mach node is only used in rare cases for derived
// pointers.
- Node* new_ideal_null = ConNode::make(C, TypePtr::NULL_PTR);
+ Node* new_ideal_null = ConNode::make(TypePtr::NULL_PTR);
// Swap out to old-space; emptying new-space
Arena *old = C->node_arena()->move_contents(C->old_arena());
@@ -1643,8 +1643,8 @@
}
// Build the object to represent this state & prepare for recursive calls
- MachNode *mach = s->MachNodeGenerator( rule, C );
- mach->_opnds[0] = s->MachOperGenerator( _reduceOp[rule], C );
+ MachNode *mach = s->MachNodeGenerator(rule);
+ mach->_opnds[0] = s->MachOperGenerator(_reduceOp[rule]);
assert( mach->_opnds[0] != NULL, "Missing result operand" );
Node *leaf = s->_leaf;
// Check for instruction or instruction chain rule
@@ -1756,13 +1756,13 @@
assert( 0 <= opnd_class_instance && opnd_class_instance < NUM_OPERANDS,
"Bad AD file: Instruction chain rule must chain from operand");
// Insert operand into array of operands for this instruction
- mach->_opnds[1] = s->MachOperGenerator( opnd_class_instance, C );
+ mach->_opnds[1] = s->MachOperGenerator(opnd_class_instance);
ReduceOper( s, newrule, mem, mach );
} else {
// Chain from the result of an instruction
assert( newrule >= _LAST_MACH_OPER, "Do NOT chain from internal operand");
- mach->_opnds[1] = s->MachOperGenerator( _reduceOp[catch_op], C );
+ mach->_opnds[1] = s->MachOperGenerator(_reduceOp[catch_op]);
Node *mem1 = (Node*)1;
debug_only(Node *save_mem_node = _mem_node;)
mach->add_req( ReduceInst(s, newrule, mem1) );
@@ -1807,7 +1807,7 @@
if( newrule < NUM_OPERANDS ) { // Operand/operandClass or internalOp/instruction?
// Operand/operandClass
// Insert operand into array of operands for this instruction
- mach->_opnds[num_opnds++] = newstate->MachOperGenerator( opnd_class_instance, C );
+ mach->_opnds[num_opnds++] = newstate->MachOperGenerator(opnd_class_instance);
ReduceOper( newstate, newrule, mem, mach );
} else { // Child is internal operand or new instruction
@@ -1818,7 +1818,7 @@
} else {
// instruction --> call build operand( ) to catch result
// --> ReduceInst( newrule )
- mach->_opnds[num_opnds++] = s->MachOperGenerator( _reduceOp[catch_op], C );
+ mach->_opnds[num_opnds++] = s->MachOperGenerator(_reduceOp[catch_op]);
Node *mem1 = (Node*)1;
debug_only(Node *save_mem_node = _mem_node;)
mach->add_req( ReduceInst( newstate, newrule, mem1 ) );
--- a/hotspot/src/share/vm/opto/mathexactnode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/mathexactnode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2013, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -191,7 +191,7 @@
NativeType val1 = TypeClass::as_self(type1)->get_con();
NativeType val2 = TypeClass::as_self(type2)->get_con();
if (node->will_overflow(val1, val2) == false) {
- Node* con_result = ConINode::make(phase->C, 0);
+ Node* con_result = ConINode::make(0);
return con_result;
}
return NULL;
--- a/hotspot/src/share/vm/opto/memnode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/memnode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -933,12 +933,12 @@
return (LoadNode*)NULL;
}
-LoadLNode* LoadLNode::make_atomic(Compile *C, Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, const Type* rt, MemOrd mo) {
+LoadLNode* LoadLNode::make_atomic(Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, const Type* rt, MemOrd mo) {
bool require_atomic = true;
return new LoadLNode(ctl, mem, adr, adr_type, rt->is_long(), mo, require_atomic);
}
-LoadDNode* LoadDNode::make_atomic(Compile *C, Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, const Type* rt, MemOrd mo) {
+LoadDNode* LoadDNode::make_atomic(Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, const Type* rt, MemOrd mo) {
bool require_atomic = true;
return new LoadDNode(ctl, mem, adr, adr_type, rt, mo, require_atomic);
}
@@ -2017,7 +2017,6 @@
//----------------------------LoadKlassNode::make------------------------------
// Polymorphic factory method:
Node *LoadKlassNode::make( PhaseGVN& gvn, Node *mem, Node *adr, const TypePtr* at, const TypeKlassPtr *tk ) {
- Compile* C = gvn.C;
Node *ctl = NULL;
// sanity check the alias category against the created node type
const TypePtr *adr_type = adr->bottom_type()->isa_ptr();
@@ -2382,12 +2381,12 @@
return (StoreNode*)NULL;
}
-StoreLNode* StoreLNode::make_atomic(Compile *C, Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, Node* val, MemOrd mo) {
+StoreLNode* StoreLNode::make_atomic(Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, Node* val, MemOrd mo) {
bool require_atomic = true;
return new StoreLNode(ctl, mem, adr, adr_type, val, mo, require_atomic);
}
-StoreDNode* StoreDNode::make_atomic(Compile *C, Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, Node* val, MemOrd mo) {
+StoreDNode* StoreDNode::make_atomic(Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, Node* val, MemOrd mo) {
bool require_atomic = true;
return new StoreDNode(ctl, mem, adr, adr_type, val, mo, require_atomic);
}
@@ -2463,7 +2462,7 @@
// and I need to disappear.
if (moved != NULL) {
// %%% hack to ensure that Ideal returns a new node:
- mem = MergeMemNode::make(phase->C, mem);
+ mem = MergeMemNode::make(mem);
return mem; // fold me away
}
}
@@ -2823,7 +2822,6 @@
intptr_t start_offset,
Node* end_offset,
PhaseGVN* phase) {
- Compile* C = phase->C;
intptr_t offset = start_offset;
int unit = BytesPerLong;
@@ -2850,7 +2848,6 @@
return mem;
}
- Compile* C = phase->C;
int unit = BytesPerLong;
Node* zbase = start_offset;
Node* zend = end_offset;
@@ -2878,7 +2875,6 @@
return mem;
}
- Compile* C = phase->C;
assert((end_offset % BytesPerInt) == 0, "odd end offset");
intptr_t done_offset = end_offset;
if ((done_offset % BytesPerLong) != 0) {
@@ -4132,7 +4128,7 @@
// Make a new, untransformed MergeMem with the same base as 'mem'.
// If mem is itself a MergeMem, populate the result with the same edges.
-MergeMemNode* MergeMemNode::make(Compile* C, Node* mem) {
+MergeMemNode* MergeMemNode::make(Node* mem) {
return new MergeMemNode(mem);
}
--- a/hotspot/src/share/vm/opto/memnode.hpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/memnode.hpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1997, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1997, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -333,7 +333,7 @@
virtual int store_Opcode() const { return Op_StoreL; }
virtual BasicType memory_type() const { return T_LONG; }
bool require_atomic_access() const { return _require_atomic_access; }
- static LoadLNode* make_atomic(Compile *C, Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type,
+ static LoadLNode* make_atomic(Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type,
const Type* rt, MemOrd mo);
#ifndef PRODUCT
virtual void dump_spec(outputStream *st) const {
@@ -384,7 +384,7 @@
virtual int store_Opcode() const { return Op_StoreD; }
virtual BasicType memory_type() const { return T_DOUBLE; }
bool require_atomic_access() const { return _require_atomic_access; }
- static LoadDNode* make_atomic(Compile *C, Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type,
+ static LoadDNode* make_atomic(Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type,
const Type* rt, MemOrd mo);
#ifndef PRODUCT
virtual void dump_spec(outputStream *st) const {
@@ -593,7 +593,7 @@
virtual int Opcode() const;
virtual BasicType memory_type() const { return T_LONG; }
bool require_atomic_access() const { return _require_atomic_access; }
- static StoreLNode* make_atomic(Compile *C, Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, Node* val, MemOrd mo);
+ static StoreLNode* make_atomic(Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, Node* val, MemOrd mo);
#ifndef PRODUCT
virtual void dump_spec(outputStream *st) const {
StoreNode::dump_spec(st);
@@ -629,7 +629,7 @@
virtual int Opcode() const;
virtual BasicType memory_type() const { return T_DOUBLE; }
bool require_atomic_access() const { return _require_atomic_access; }
- static StoreDNode* make_atomic(Compile *C, Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, Node* val, MemOrd mo);
+ static StoreDNode* make_atomic(Node* ctl, Node* mem, Node* adr, const TypePtr* adr_type, Node* val, MemOrd mo);
#ifndef PRODUCT
virtual void dump_spec(outputStream *st) const {
StoreNode::dump_spec(st);
@@ -1138,7 +1138,7 @@
// If the input is a whole memory state, clone it with all its slices intact.
// Otherwise, make a new memory state with just that base memory input.
// In either case, the result is a newly created MergeMem.
- static MergeMemNode* make(Compile* C, Node* base_memory);
+ static MergeMemNode* make(Node* base_memory);
virtual int Opcode() const;
virtual Node *Identity( PhaseTransform *phase );
--- a/hotspot/src/share/vm/opto/movenode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/movenode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -88,7 +88,7 @@
if( in(Condition)->is_Bool() ) {
BoolNode* b = in(Condition)->as_Bool();
BoolNode* b2 = b->negate(phase);
- return make( phase->C, in(Control), phase->transform(b2), in(IfTrue), in(IfFalse), _type );
+ return make(in(Control), phase->transform(b2), in(IfTrue), in(IfFalse), _type);
}
}
return NULL;
@@ -158,7 +158,7 @@
//------------------------------make-------------------------------------------
// Make a correctly-flavored CMove. Since _type is directly determined
// from the inputs we do not need to specify it here.
-CMoveNode *CMoveNode::make( Compile *C, Node *c, Node *bol, Node *left, Node *right, const Type *t ) {
+CMoveNode *CMoveNode::make(Node *c, Node *bol, Node *left, Node *right, const Type *t) {
switch( t->basic_type() ) {
case T_INT: return new CMoveINode( bol, left, right, t->is_int() );
case T_FLOAT: return new CMoveFNode( bol, left, right, t );
@@ -196,7 +196,7 @@
if( in(Condition)->is_Bool() ) {
BoolNode* b = in(Condition)->as_Bool();
BoolNode* b2 = b->negate(phase);
- return make( phase->C, in(Control), phase->transform(b2), in(IfTrue), in(IfFalse), _type );
+ return make(in(Control), phase->transform(b2), in(IfTrue), in(IfFalse), _type);
}
}
--- a/hotspot/src/share/vm/opto/movenode.hpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/movenode.hpp Tue Aug 05 09:58:52 2014 +0200
@@ -47,7 +47,7 @@
virtual Node *Ideal(PhaseGVN *phase, bool can_reshape);
virtual const Type *Value( PhaseTransform *phase ) const;
virtual Node *Identity( PhaseTransform *phase );
- static CMoveNode *make( Compile *C, Node *c, Node *bol, Node *left, Node *right, const Type *t );
+ static CMoveNode *make(Node *c, Node *bol, Node *left, Node *right, const Type *t);
// Helper function to spot cmove graph shapes
static Node *is_cmove_id( PhaseTransform *phase, Node *cmp, Node *t, Node *f, BoolNode *b );
};
--- a/hotspot/src/share/vm/opto/node.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/node.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -507,7 +507,7 @@
(const void*)(&mthis->_opnds), 1));
mach->_opnds = to;
for ( uint i = 0; i < nopnds; ++i ) {
- to[i] = from[i]->clone(C);
+ to[i] = from[i]->clone();
}
}
// cloning CallNode may need to clone JVMState
--- a/hotspot/src/share/vm/opto/output.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/output.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -526,7 +526,7 @@
if (_matcher->is_short_branch_offset(mach->rule(), br_size, offset)) {
// We've got a winner. Replace this branch.
- MachNode* replacement = mach->as_MachBranch()->short_branch_version(this);
+ MachNode* replacement = mach->as_MachBranch()->short_branch_version();
// Update the jmp_size.
int new_size = replacement->size(_regalloc);
@@ -1176,7 +1176,7 @@
// fill in the nop array for bundling computations
MachNode *_nop_list[Bundle::_nop_count];
- Bundle::initialize_nops(_nop_list, this);
+ Bundle::initialize_nops(_nop_list);
return cb;
}
@@ -1410,7 +1410,7 @@
if (_matcher->is_short_branch_offset(mach->rule(), br_size, offset)) {
// We've got a winner. Replace this branch.
- MachNode* replacement = mach->as_MachBranch()->short_branch_version(this);
+ MachNode* replacement = mach->as_MachBranch()->short_branch_version();
// Update the jmp_size.
int new_size = replacement->size(_regalloc);
--- a/hotspot/src/share/vm/opto/parse1.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/parse1.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1757,7 +1757,7 @@
if (remerge == NULL) {
assert(base != NULL, "");
assert(base->in(0) != NULL, "should not be xformed away");
- remerge = MergeMemNode::make(C, base->in(pnum));
+ remerge = MergeMemNode::make(base->in(pnum));
gvn().set_type(remerge, Type::MEMORY);
base->set_req(pnum, remerge);
}
@@ -2200,7 +2200,7 @@
// down below a SafePoint.
// Clone the current memory state
- Node* mem = MergeMemNode::make(C, map()->memory());
+ Node* mem = MergeMemNode::make(map()->memory());
mem = _gvn.transform(mem);
@@ -2214,7 +2214,7 @@
// Create a node for the polling address
if( add_poll_param ) {
- Node *polladr = ConPNode::make(C, (address)os::get_polling_page());
+ Node *polladr = ConPNode::make((address)os::get_polling_page());
sfpnt->init_req(TypeFunc::Parms+0, _gvn.transform(polladr));
}
--- a/hotspot/src/share/vm/opto/parseHelper.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/parseHelper.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -47,7 +47,7 @@
// Get method
const TypePtr* method_type = TypeMetadataPtr::make(method);
- Node *method_node = _gvn.transform( ConNode::make(C, method_type) );
+ Node *method_node = _gvn.transform(ConNode::make(method_type));
kill_dead_locals();
--- a/hotspot/src/share/vm/opto/phaseX.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/phaseX.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -615,7 +615,7 @@
// Make an idealized constant - one of ConINode, ConPNode, etc.
ConNode* PhaseValues::uncached_makecon(const Type *t) {
assert(t->singleton(), "must be a constant");
- ConNode* x = ConNode::make(C, t);
+ ConNode* x = ConNode::make(t);
ConNode* k = (ConNode*)hash_find_insert(x); // Value numbering
if (k == NULL) {
set_type(x, t); // Missed, provide type mapping
@@ -1628,7 +1628,7 @@
if( t == Type::TOP ) {
// cache my top node on the Compile instance
if( C->cached_top_node() == NULL || C->cached_top_node()->in(0) == NULL ) {
- C->set_cached_top_node( ConNode::make(C, Type::TOP) );
+ C->set_cached_top_node(ConNode::make(Type::TOP));
set_type(C->top(), Type::TOP);
}
nn = C->top();
@@ -1754,7 +1754,7 @@
MachNode *m = n->as_Mach();
int deleted_count = 0;
// check for peephole opportunities
- MachNode *m2 = m->peephole( block, instruction_index, _regalloc, deleted_count, C );
+ MachNode *m2 = m->peephole(block, instruction_index, _regalloc, deleted_count);
if( m2 != NULL ) {
#ifndef PRODUCT
if( PrintOptoPeephole ) {
--- a/hotspot/src/share/vm/opto/stringopts.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/stringopts.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2009, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1438,7 +1438,7 @@
}
// Make sure the memory state is a MergeMem for parsing.
if (!map->in(TypeFunc::Memory)->is_MergeMem()) {
- map->set_req(TypeFunc::Memory, MergeMemNode::make(C, map->in(TypeFunc::Memory)));
+ map->set_req(TypeFunc::Memory, MergeMemNode::make(map->in(TypeFunc::Memory)));
}
jvms->set_map(map);
--- a/hotspot/src/share/vm/opto/subnode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/subnode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1168,7 +1168,6 @@
Node* BoolNode::make_predicate(Node* test_value, PhaseGVN* phase) {
if (test_value->is_Con()) return test_value;
if (test_value->is_Bool()) return test_value;
- Compile* C = phase->C;
if (test_value->is_CMove() &&
test_value->in(CMoveNode::Condition)->is_Bool()) {
BoolNode* bol = test_value->in(CMoveNode::Condition)->as_Bool();
@@ -1191,7 +1190,7 @@
//--------------------------------as_int_value---------------------------------
Node* BoolNode::as_int_value(PhaseGVN* phase) {
// Inverse to make_predicate. The CMove probably boils down to a Conv2B.
- Node* cmov = CMoveNode::make(phase->C, NULL, this,
+ Node* cmov = CMoveNode::make(NULL, this,
phase->intcon(0), phase->intcon(1),
TypeInt::BOOL);
return phase->transform(cmov);
@@ -1199,7 +1198,6 @@
//----------------------------------negate-------------------------------------
BoolNode* BoolNode::negate(PhaseGVN* phase) {
- Compile* C = phase->C;
return new BoolNode(in(1), _test.negate());
}
--- a/hotspot/src/share/vm/opto/superword.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/superword.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2007, 2013, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -1380,7 +1380,7 @@
Node* mem = first->in(MemNode::Memory);
Node* adr = low_adr->in(MemNode::Address);
const TypePtr* atyp = n->adr_type();
- vn = LoadVectorNode::make(C, opc, ctl, mem, adr, atyp, vlen, velt_basic_type(n));
+ vn = LoadVectorNode::make(opc, ctl, mem, adr, atyp, vlen, velt_basic_type(n));
vlen_in_bytes = vn->as_LoadVector()->memory_size();
} else if (n->is_Store()) {
// Promote value to be stored to vector
@@ -1389,7 +1389,7 @@
Node* mem = first->in(MemNode::Memory);
Node* adr = low_adr->in(MemNode::Address);
const TypePtr* atyp = n->adr_type();
- vn = StoreVectorNode::make(C, opc, ctl, mem, adr, atyp, val, vlen);
+ vn = StoreVectorNode::make(opc, ctl, mem, adr, atyp, val, vlen);
vlen_in_bytes = vn->as_StoreVector()->memory_size();
} else if (n->req() == 3) {
// Promote operands to vector
@@ -1401,7 +1401,7 @@
in1 = in2;
in2 = tmp;
}
- vn = VectorNode::make(C, opc, in1, in2, vlen, velt_basic_type(n));
+ vn = VectorNode::make(opc, in1, in2, vlen, velt_basic_type(n));
vlen_in_bytes = vn->as_Vector()->length_in_bytes();
} else {
ShouldNotReachHere();
@@ -1450,11 +1450,11 @@
if (t != NULL && t->is_con()) {
juint shift = t->get_con();
if (shift > mask) { // Unsigned cmp
- cnt = ConNode::make(C, TypeInt::make(shift & mask));
+ cnt = ConNode::make(TypeInt::make(shift & mask));
}
} else {
if (t == NULL || t->_lo < 0 || t->_hi > (int)mask) {
- cnt = ConNode::make(C, TypeInt::make(mask));
+ cnt = ConNode::make(TypeInt::make(mask));
_igvn.register_new_node_with_optimizer(cnt);
cnt = new AndINode(opd, cnt);
_igvn.register_new_node_with_optimizer(cnt);
@@ -1462,7 +1462,7 @@
}
assert(opd->bottom_type()->isa_int(), "int type only");
// Move non constant shift count into vector register.
- cnt = VectorNode::shift_count(C, p0, cnt, vlen, velt_basic_type(p0));
+ cnt = VectorNode::shift_count(p0, cnt, vlen, velt_basic_type(p0));
}
if (cnt != opd) {
_igvn.register_new_node_with_optimizer(cnt);
@@ -1475,7 +1475,7 @@
// p0's vector. Use p0's type because size of operand's container in
// vector should match p0's size regardless operand's size.
const Type* p0_t = velt_type(p0);
- VectorNode* vn = VectorNode::scalar2vector(_phase->C, opd, vlen, p0_t);
+ VectorNode* vn = VectorNode::scalar2vector(opd, vlen, p0_t);
_igvn.register_new_node_with_optimizer(vn);
_phase->set_ctrl(vn, _phase->get_ctrl(opd));
@@ -1490,7 +1490,7 @@
// Insert pack operation
BasicType bt = velt_basic_type(p0);
- PackNode* pk = PackNode::make(_phase->C, opd, vlen, bt);
+ PackNode* pk = PackNode::make(opd, vlen, bt);
DEBUG_ONLY( const BasicType opd_bt = opd->bottom_type()->basic_type(); )
for (uint i = 1; i < vlen; i++) {
@@ -1546,7 +1546,7 @@
_igvn.hash_delete(def);
int def_pos = alignment(def) / data_size(def);
- Node* ex = ExtractNode::make(_phase->C, def, def_pos, velt_basic_type(def));
+ Node* ex = ExtractNode::make(def, def_pos, velt_basic_type(def));
_igvn.register_new_node_with_optimizer(ex);
_phase->set_ctrl(ex, _phase->get_ctrl(def));
_igvn.replace_input_of(use, idx, ex);
--- a/hotspot/src/share/vm/opto/vectornode.cpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/vectornode.cpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -245,7 +245,7 @@
}
// Return the vector version of a scalar operation node.
-VectorNode* VectorNode::make(Compile* C, int opc, Node* n1, Node* n2, uint vlen, BasicType bt) {
+VectorNode* VectorNode::make(int opc, Node* n1, Node* n2, uint vlen, BasicType bt) {
const TypeVect* vt = TypeVect::make(bt, vlen);
int vopc = VectorNode::opcode(opc, bt);
// This method should not be called for unimplemented vectors.
@@ -299,7 +299,7 @@
}
// Scalar promotion
-VectorNode* VectorNode::scalar2vector(Compile* C, Node* s, uint vlen, const Type* opd_t) {
+VectorNode* VectorNode::scalar2vector(Node* s, uint vlen, const Type* opd_t) {
BasicType bt = opd_t->array_element_basic_type();
const TypeVect* vt = opd_t->singleton() ? TypeVect::make(opd_t, vlen)
: TypeVect::make(bt, vlen);
@@ -323,7 +323,7 @@
return NULL;
}
-VectorNode* VectorNode::shift_count(Compile* C, Node* shift, Node* cnt, uint vlen, BasicType bt) {
+VectorNode* VectorNode::shift_count(Node* shift, Node* cnt, uint vlen, BasicType bt) {
assert(VectorNode::is_shift(shift) && !cnt->is_Con(), "only variable shift count");
// Match shift count type with shift vector type.
const TypeVect* vt = TypeVect::make(bt, vlen);
@@ -342,7 +342,7 @@
}
// Return initial Pack node. Additional operands added with add_opd() calls.
-PackNode* PackNode::make(Compile* C, Node* s, uint vlen, BasicType bt) {
+PackNode* PackNode::make(Node* s, uint vlen, BasicType bt) {
const TypeVect* vt = TypeVect::make(bt, vlen);
switch (bt) {
case T_BOOLEAN:
@@ -365,18 +365,18 @@
}
// Create a binary tree form for Packs. [lo, hi) (half-open) range
-PackNode* PackNode::binary_tree_pack(Compile* C, int lo, int hi) {
+PackNode* PackNode::binary_tree_pack(int lo, int hi) {
int ct = hi - lo;
assert(is_power_of_2(ct), "power of 2");
if (ct == 2) {
- PackNode* pk = PackNode::make(C, in(lo), 2, vect_type()->element_basic_type());
+ PackNode* pk = PackNode::make(in(lo), 2, vect_type()->element_basic_type());
pk->add_opd(in(lo+1));
return pk;
} else {
int mid = lo + ct/2;
- PackNode* n1 = binary_tree_pack(C, lo, mid);
- PackNode* n2 = binary_tree_pack(C, mid, hi );
+ PackNode* n1 = binary_tree_pack(lo, mid);
+ PackNode* n2 = binary_tree_pack(mid, hi );
BasicType bt = n1->vect_type()->element_basic_type();
assert(bt == n2->vect_type()->element_basic_type(), "should be the same");
@@ -402,23 +402,23 @@
}
// Return the vector version of a scalar load node.
-LoadVectorNode* LoadVectorNode::make(Compile* C, int opc, Node* ctl, Node* mem,
+LoadVectorNode* LoadVectorNode::make(int opc, Node* ctl, Node* mem,
Node* adr, const TypePtr* atyp, uint vlen, BasicType bt) {
const TypeVect* vt = TypeVect::make(bt, vlen);
return new LoadVectorNode(ctl, mem, adr, atyp, vt);
}
// Return the vector version of a scalar store node.
-StoreVectorNode* StoreVectorNode::make(Compile* C, int opc, Node* ctl, Node* mem,
+StoreVectorNode* StoreVectorNode::make(int opc, Node* ctl, Node* mem,
Node* adr, const TypePtr* atyp, Node* val,
uint vlen) {
return new StoreVectorNode(ctl, mem, adr, atyp, val);
}
// Extract a scalar element of vector.
-Node* ExtractNode::make(Compile* C, Node* v, uint position, BasicType bt) {
+Node* ExtractNode::make(Node* v, uint position, BasicType bt) {
assert((int)position < Matcher::max_vector_size(bt), "pos in range");
- ConINode* pos = ConINode::make(C, (int)position);
+ ConINode* pos = ConINode::make((int)position);
switch (bt) {
case T_BOOLEAN:
return new ExtractUBNode(v, pos);
--- a/hotspot/src/share/vm/opto/vectornode.hpp Tue Aug 05 07:37:10 2014 +0000
+++ b/hotspot/src/share/vm/opto/vectornode.hpp Tue Aug 05 09:58:52 2014 +0200
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2007, 2012, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2007, 2014, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
@@ -52,9 +52,9 @@
virtual uint ideal_reg() const { return Matcher::vector_ideal_reg(vect_type()->length_in_bytes()); }
- static VectorNode* scalar2vector(Compile* C, Node* s, uint vlen, const Type* opd_t);
- static VectorNode* shift_count(Compile* C, Node* shift, Node* cnt, uint vlen, BasicType bt);
- static VectorNode* make(Compile* C, int opc, Node* n1, Node* n2, uint vlen, BasicType bt);
+ static VectorNode* scalar2vector(Node* s, uint vlen, const Type* opd_t);
+ static VectorNode* shift_count(Node* shift, Node* cnt, uint vlen, BasicType bt);
+ static VectorNode* make(int opc, Node* n1, Node* n2, uint vlen, BasicType bt);
static int opcode(int opc, BasicType bt);
static bool implemented(int opc, uint vlen, BasicType bt);
@@ -371,7 +371,7 @@
virtual int store_Opcode() const { return Op_StoreVector; }
- static LoadVectorNode* make(Compile* C, int opc, Node* ctl, Node* mem,
+ static LoadVectorNode* make(int opc, Node* ctl, Node* mem,
Node* adr, const TypePtr* atyp, uint vlen, BasicType bt);
};
@@ -394,7 +394,7 @@
virtual BasicType memory_type() const { return T_VOID; }
virtual int memory_size() const { return vect_type()->length_in_bytes(); }
- static StoreVectorNode* make(Compile* C, int opc, Node* ctl, Node* mem,
+ static StoreVectorNode* make(int opc, Node* ctl, Node* mem,
Node* adr, const TypePtr* atyp, Node* val,
uint vlen);
};
@@ -465,9 +465,9 @@
}
// Create a binary tree form for Packs. [lo, hi) (half-open) range
- PackNode* binary_tree_pack(Compile* C, int lo, int hi);
+ PackNode* binary_tree_pack(int lo, int hi);
- static PackNode* make(Compile* C, Node* s, uint vlen, BasicType bt);
+ static PackNode* make(Node* s, uint vlen, BasicType bt);
};
//------------------------------PackBNode--------------------------------------
@@ -552,7 +552,7 @@
virtual int Opcode() const;
uint pos() const { return in(2)->get_int(); }
- static Node* make(Compile* C, Node* v, uint position, BasicType bt);
+ static Node* make(Node* v, uint position, BasicType bt);
};
//------------------------------ExtractBNode-----------------------------------