comparison src/share/vm/adlc/output_h.cpp @ 6266:1d7922586cf6

7023639: JSR 292 method handle invocation needs a fast path for compiled code 6984705: JSR 292 method handle creation should not go through JNI Summary: remove assembly code for JDK 7 chained method handles Reviewed-by: jrose, twisti, kvn, mhaupt Contributed-by: John Rose <john.r.rose@oracle.com>, Christian Thalinger <christian.thalinger@oracle.com>, Michael Haupt <michael.haupt@oracle.com>
author twisti
date Tue, 24 Jul 2012 10:51:00 -0700
parents f03a3c8bd5e5
children da91efe96a93
comparison
equal deleted inserted replaced
6241:aba91a731143 6266:1d7922586cf6
672 fprintf(fp, " st->print(\" P=%%f C=%%f\",_prob,_fcnt);\n" ); 672 fprintf(fp, " st->print(\" P=%%f C=%%f\",_prob,_fcnt);\n" );
673 } 673 }
674 else if( inst.is_ideal_mem() ) { 674 else if( inst.is_ideal_mem() ) {
675 // Print out the field name if available to improve readability 675 // Print out the field name if available to improve readability
676 fprintf(fp, " if (ra->C->alias_type(adr_type())->field() != NULL) {\n"); 676 fprintf(fp, " if (ra->C->alias_type(adr_type())->field() != NULL) {\n");
677 fprintf(fp, " st->print(\" ! Field \");\n"); 677 fprintf(fp, " ciField* f = ra->C->alias_type(adr_type())->field();\n");
678 fprintf(fp, " if( ra->C->alias_type(adr_type())->is_volatile() )\n"); 678 fprintf(fp, " st->print(\" ! Field: \");\n");
679 fprintf(fp, " st->print(\" Volatile\");\n"); 679 fprintf(fp, " if (f->is_volatile())\n");
680 fprintf(fp, " ra->C->alias_type(adr_type())->field()->holder()->name()->print_symbol_on(st);\n"); 680 fprintf(fp, " st->print(\"volatile \");\n");
681 fprintf(fp, " f->holder()->name()->print_symbol_on(st);\n");
681 fprintf(fp, " st->print(\".\");\n"); 682 fprintf(fp, " st->print(\".\");\n");
682 fprintf(fp, " ra->C->alias_type(adr_type())->field()->name()->print_symbol_on(st);\n"); 683 fprintf(fp, " f->name()->print_symbol_on(st);\n");
684 fprintf(fp, " if (f->is_constant())\n");
685 fprintf(fp, " st->print(\" (constant)\");\n");
683 fprintf(fp, " } else\n"); 686 fprintf(fp, " } else\n");
684 // Make sure 'Volatile' gets printed out 687 // Make sure 'Volatile' gets printed out
685 fprintf(fp, " if( ra->C->alias_type(adr_type())->is_volatile() )\n"); 688 fprintf(fp, " if (ra->C->alias_type(adr_type())->is_volatile())\n");
686 fprintf(fp, " st->print(\" Volatile!\");\n"); 689 fprintf(fp, " st->print(\" volatile!\");\n");
687 } 690 }
688 691
689 // Complete the definition of the format function 692 // Complete the definition of the format function
690 fprintf(fp, " }\n#endif\n"); 693 fprintf(fp, " }\n#endif\n");
691 } 694 }