equal
deleted
inserted
replaced
1692 // interface we have to insert a check that it's the class we |
1692 // interface we have to insert a check that it's the class we |
1693 // expect. Interface types are not checked by the verifier so |
1693 // expect. Interface types are not checked by the verifier so |
1694 // they are roughly equivalent to Object. |
1694 // they are roughly equivalent to Object. |
1695 ciInstanceKlass* singleton = NULL; |
1695 ciInstanceKlass* singleton = NULL; |
1696 if (target->holder()->nof_implementors() == 1) { |
1696 if (target->holder()->nof_implementors() == 1) { |
1697 singleton = target->holder()->implementor(0); |
1697 singleton = target->holder()->implementor(); |
|
1698 assert(singleton != NULL && singleton != target->holder(), |
|
1699 "just checking"); |
1698 |
1700 |
1699 assert(holder->is_interface(), "invokeinterface to non interface?"); |
1701 assert(holder->is_interface(), "invokeinterface to non interface?"); |
1700 ciInstanceKlass* decl_interface = (ciInstanceKlass*)holder; |
1702 ciInstanceKlass* decl_interface = (ciInstanceKlass*)holder; |
1701 // the number of implementors for decl_interface is less or |
1703 // the number of implementors for decl_interface is less or |
1702 // equal to the number of implementors for target->holder() so |
1704 // equal to the number of implementors for target->holder() so |