comparison src/share/vm/adlc/output_h.cpp @ 17791:ad3b94907eed

8030863: PPC64: (part 220): ConstantTableBase for calls between args and jvms Summary: Add ConstantTableBase node edge after parameters and before jvms. Adapt jvms offsets. Reviewed-by: kvn
author goetz
date Fri, 20 Dec 2013 13:51:14 +0100
parents 41b780b43b74
children abec000618bf
comparison
equal deleted inserted replaced
17790:5da8bb64b370 17791:ad3b94907eed
1663 instr->ideal_Opcode(_globalNames) ); 1663 instr->ideal_Opcode(_globalNames) );
1664 } 1664 }
1665 1665
1666 if (instr->needs_constant_base() && 1666 if (instr->needs_constant_base() &&
1667 !instr->is_mach_constant()) { // These inherit the funcion from MachConstantNode. 1667 !instr->is_mach_constant()) { // These inherit the funcion from MachConstantNode.
1668 fprintf(fp," virtual uint mach_constant_base_node_input() const { return req()-1; }\n"); 1668 fprintf(fp," virtual uint mach_constant_base_node_input() const { ");
1669 if (instr->is_ideal_call() != Form::invalid_type &&
1670 instr->is_ideal_call() != Form::JAVA_LEAF) {
1671 // MachConstantBase goes behind arguments, but before jvms.
1672 fprintf(fp,"assert(tf() && tf()->domain(), \"\"); return tf()->domain()->cnt();");
1673 } else {
1674 fprintf(fp,"return req()-1;");
1675 }
1676 fprintf(fp," }\n");
1669 } 1677 }
1670 1678
1671 // Allow machine-independent optimization, invert the sense of the IF test 1679 // Allow machine-independent optimization, invert the sense of the IF test
1672 if( instr->is_ideal_if() ) { 1680 if( instr->is_ideal_if() ) {
1673 fprintf(fp," virtual void negate() { \n"); 1681 fprintf(fp," virtual void negate() { \n");