Mercurial > hg > graal-compiler
comparison src/share/vm/c1/c1_InstructionPrinter.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 | 701a83c86f28 |
children | da91efe96a93 |
comparison
equal
deleted
inserted
replaced
6241:aba91a731143 | 6266:1d7922586cf6 |
---|---|
135 output()->print("<unloaded object " PTR_FORMAT ">", value); | 135 output()->print("<unloaded object " PTR_FORMAT ">", value); |
136 } else if (value->is_method()) { | 136 } else if (value->is_method()) { |
137 ciMethod* m = (ciMethod*)value; | 137 ciMethod* m = (ciMethod*)value; |
138 output()->print("<method %s.%s>", m->holder()->name()->as_utf8(), m->name()->as_utf8()); | 138 output()->print("<method %s.%s>", m->holder()->name()->as_utf8(), m->name()->as_utf8()); |
139 } else { | 139 } else { |
140 output()->print("<object " PTR_FORMAT ">", value->constant_encoding()); | 140 output()->print("<object " PTR_FORMAT " klass=", value->constant_encoding()); |
141 print_klass(value->klass()); | |
142 output()->print(">"); | |
141 } | 143 } |
142 } else if (type->as_InstanceConstant() != NULL) { | 144 } else if (type->as_InstanceConstant() != NULL) { |
143 ciInstance* value = type->as_InstanceConstant()->value(); | 145 ciInstance* value = type->as_InstanceConstant()->value(); |
144 if (value->is_loaded()) { | 146 if (value->is_loaded()) { |
145 output()->print("<instance " PTR_FORMAT ">", value->constant_encoding()); | 147 output()->print("<instance " PTR_FORMAT " klass=", value->constant_encoding()); |
148 print_klass(value->klass()); | |
149 output()->print(">"); | |
146 } else { | 150 } else { |
147 output()->print("<unloaded instance " PTR_FORMAT ">", value); | 151 output()->print("<unloaded instance " PTR_FORMAT ">", value); |
148 } | 152 } |
149 } else if (type->as_ArrayConstant() != NULL) { | 153 } else if (type->as_ArrayConstant() != NULL) { |
150 output()->print("<array " PTR_FORMAT ">", type->as_ArrayConstant()->value()->constant_encoding()); | 154 output()->print("<array " PTR_FORMAT ">", type->as_ArrayConstant()->value()->constant_encoding()); |
451 output()->print(" (eliminated)"); | 455 output()->print(" (eliminated)"); |
452 } | 456 } |
453 } | 457 } |
454 | 458 |
455 | 459 |
460 void InstructionPrinter::do_TypeCast(TypeCast* x) { | |
461 output()->print("type_cast("); | |
462 print_value(x->obj()); | |
463 output()->print(") "); | |
464 print_klass(x->declared_type()->klass()); | |
465 } | |
466 | |
467 | |
456 void InstructionPrinter::do_Invoke(Invoke* x) { | 468 void InstructionPrinter::do_Invoke(Invoke* x) { |
457 if (x->receiver() != NULL) { | 469 if (x->receiver() != NULL) { |
458 print_value(x->receiver()); | 470 print_value(x->receiver()); |
459 output()->print("."); | 471 output()->print("."); |
460 } | 472 } |