From 9be25d09d24b3d6d0dd1a41c1c09471af4827687 Mon Sep 17 00:00:00 2001 From: Dan Bornstein Date: Sun, 10 Oct 2010 12:29:07 -0700 Subject: Clarify the invoke-* opcodes. In particular, make it a little more explicit what kinds of methods are acceptable for each variant. Change-Id: Icd9dad876c2d10c23462b4d85ccaa9441d7f2c04 --- docs/dalvik-bytecode.html | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/dalvik-bytecode.html b/docs/dalvik-bytecode.html index e69a962ee..35fa64b0a 100644 --- a/docs/dalvik-bytecode.html +++ b/docs/dalvik-bytecode.html @@ -712,11 +712,12 @@ with an appropriate move-result* variant as the immediately subsequent instruction.

invoke-virtual is used to invoke a normal virtual - method (a method that is not static or final, - and is not a constructor).

+ method (a method that is not private, static, + or final, and is also not a constructor).

invoke-super is used to invoke the closest superclass's virtual method (as opposed to the one with the same method_id - in the calling class).

+ in the calling class). The same method restrictions hold as for + invoke-virtual.

invoke-direct is used to invoke a non-static direct method (that is, an instance method that is by its nature non-overridable, namely either a private instance method -- cgit v1.2.3