equal
deleted
inserted
replaced
3123 __ call_from_interpreter(Rcall, Gargs, Rret); |
3123 __ call_from_interpreter(Rcall, Gargs, Rret); |
3124 |
3124 |
3125 } |
3125 } |
3126 |
3126 |
3127 |
3127 |
|
3128 void TemplateTable::invokedynamic(int byte_no) { |
|
3129 transition(vtos, vtos); |
|
3130 |
|
3131 if (!EnableInvokeDynamic) { |
|
3132 // We should not encounter this bytecode if !EnableInvokeDynamic. |
|
3133 // The verifier will stop it. However, if we get past the verifier, |
|
3134 // this will stop the thread in a reasonable way, without crashing the JVM. |
|
3135 __ call_VM(noreg, CAST_FROM_FN_PTR(address, |
|
3136 InterpreterRuntime::throw_IncompatibleClassChangeError)); |
|
3137 // the call_VM checks for exception, so we should never return here. |
|
3138 __ should_not_reach_here(); |
|
3139 return; |
|
3140 } |
|
3141 |
|
3142 __ stop("invokedynamic NYI");//6815692// |
|
3143 } |
|
3144 |
|
3145 |
3128 //---------------------------------------------------------------------------------------------------- |
3146 //---------------------------------------------------------------------------------------------------- |
3129 // Allocation |
3147 // Allocation |
3130 |
3148 |
3131 void TemplateTable::_new() { |
3149 void TemplateTable::_new() { |
3132 transition(vtos, atos); |
3150 transition(vtos, atos); |