• Andreas Gampe's avatar
    ART: Use StackReference in Quick Stack Frame · cf4035a4
    Andreas Gampe authored
    The method reference at the bottom of a quick frame is a stack
    reference and not a native pointer. This is important for 64b
    architectures, where the notions do not coincide.
    
    Change key methods to have StackReference<mirror::ArtMethod>*
    parameter instead of mirror::ArtMethod**. Make changes to
    invoke stubs for 64b archs, change the frame setup for JNI code
    (both generic JNI and compilers), tie up loose ends.
    
    Tested on x86 and x86-64 with host tests. On x86-64, tests succeed
    with jni compiler activated. x86-64 QCG was not tested.
    
    Tested on ARM32 with device tests.
    
    Fix ARM64 not saving x19 (used for wSUSPEND) on upcalls.
    
    Tested on ARM64 in interpreter-only + generic-jni mode.
    
    Fix ARM64 JNI Compiler to work with the CL.
    
    Tested on ARM64 in interpreter-only + jni compiler.
    
    Change-Id: I77931a0cbadd04d163b3eb8d6f6a6f8740578f13
    cf4035a4
scoped_fast_native_object_access.h 1.72 KB