src/share/vm/adlc/output_h.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File
*** old/src/share/vm/adlc/output_h.cpp	Tue Jul 26 19:26:55 2011
--- new/src/share/vm/adlc/output_h.cpp	Tue Jul 26 19:26:55 2011

*** 1534,1553 **** --- 1534,1549 ---- // virtual functions for attributes // // Each instruction attribute results in a virtual call of same name. // The ins_cost is not handled here. Attribute *attr = instr->_attribs; bool is_pc_relative = false; while (attr != NULL) { if (strcmp(attr->_ident,"ins_cost") && ! strcmp(attr->_ident,"ins_pc_relative")) { ! strcmp(attr->_ident,"ins_short_branch")) { fprintf(fp," int %s() const { return %s; }\n", attr->_ident, attr->_val); } // Check value for ins_pc_relative, and if it is true (1), set the flag if (!strcmp(attr->_ident,"ins_pc_relative") && attr->int_val(*this) != 0) is_pc_relative = true; attr = (Attribute *)attr->_next; } // virtual functions for encode and format
*** 1655,1679 **** --- 1651,1665 ---- } fprintf(fp," _num_opnds = %d; _opnds = _opnd_array; ", instr->num_opnds()); bool node_flags_set = false; // flag: if this instruction matches an ideal 'Goto' node if ( instr->is_ideal_goto() ) { fprintf(fp,"init_flags(Flag_is_Goto"); node_flags_set = true; } // flag: if this instruction matches an ideal 'Copy*' node if ( instr->is_ideal_copy() != 0 ) { if ( node_flags_set ) { fprintf(fp," | Flag_is_Copy"); } else { fprintf(fp,"init_flags(Flag_is_Copy"); node_flags_set = true; } } // Is an instruction is a constant? If so, get its type Form::DataType data_type; const char *opType = NULL; const char *result = NULL;
*** 1706,1725 **** --- 1692,1701 ---- fprintf(fp,"init_flags(Flag_is_cisc_alternate"); node_flags_set = true; } } // flag: if this instruction is pc relative if ( is_pc_relative ) { if ( node_flags_set ) { fprintf(fp," | Flag_is_pc_relative"); } else { fprintf(fp,"init_flags(Flag_is_pc_relative"); node_flags_set = true; } } // flag: if this instruction has short branch form if ( instr->has_short_branch_form() ) { if ( node_flags_set ) { fprintf(fp," | Flag_may_be_short_branch"); } else {
*** 1741,1754 **** --- 1717,1726 ---- if ( node_flags_set ) { fprintf(fp,"); "); } if (instr->is_ideal_unlock() || instr->is_ideal_call_leaf()) { fprintf(fp,"clear_flag(Flag_is_safepoint_node); "); } fprintf(fp,"}\n"); // size_of, used by base class's clone to obtain the correct size. fprintf(fp," virtual uint size_of() const {"); fprintf(fp, " return sizeof(%sNode);", instr->_ident);

src/share/vm/adlc/output_h.cpp
Index Unified diffs Context diffs Sdiffs Wdiffs Patch New Old Previous File Next File