summaryrefslogtreecommitdiff
path: root/test/ProfileTestMultiDex
diff options
context:
space:
mode:
authorAart Bik <ajcbik@google.com>2016-04-04 17:28:59 -0700
committerNicolas Geoffray <ngeoffray@google.com>2016-05-10 09:17:07 +0100
commitffaa91d39baf82006afe74ad6e59cfd498334017 (patch)
treedab2ce329bc65dd770cdec619b35ae28a337289e /test/ProfileTestMultiDex
parentceeb3b73f84e8b11f362605007d382405d08d95c (diff)
Workaround invokesuper underspecified behavior.
The verifier allows invokesuper on a class unrelated to the referring class. However, the runtime uses the vtable of the super class of the referring class to lookup the ArtMethod. Since the receiver has no relation to the referring class, this lead to either jumping to a wrong method, or "luckily" throw a NoSuchMethodError if the vtable index is out of bounds of the super class of the referring class. This changes the runtime behavior to always throw NoSuchMethodError when hitting such invokesuper. Also, we make the verifier consistent with the runtime by treating such calls unresolved. bug=27627004 (cherry picked from commit f663e341c550d1aa6f8f587d0ae0dbf7d254ff55) Change-Id: Ibec5a1e3a3320c474e1e0e5634a9ef62ea734cdf
Diffstat (limited to 'test/ProfileTestMultiDex')
0 files changed, 0 insertions, 0 deletions