diff options
Diffstat (limited to 'compiler/utils/jni_macro_assembler.cc')
-rw-r--r-- | compiler/utils/jni_macro_assembler.cc | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/compiler/utils/jni_macro_assembler.cc b/compiler/utils/jni_macro_assembler.cc index dc7ec60032..7a90a46f51 100644 --- a/compiler/utils/jni_macro_assembler.cc +++ b/compiler/utils/jni_macro_assembler.cc @@ -38,6 +38,7 @@ #include "base/globals.h" #include "base/memory_region.h" #include "gc_root.h" +#include "stack_reference.h" namespace art HIDDEN { @@ -115,4 +116,17 @@ void JNIMacroAssembler<PointerSize::k64>::LoadGcRootWithoutReadBarrier(ManagedRe ManagedRegister base, MemberOffset offs); +template <PointerSize kPointerSize> +void JNIMacroAssembler<kPointerSize>::LoadStackReference(ManagedRegister dest, FrameOffset offs) { + static_assert(sizeof(uint32_t) == sizeof(StackReference<mirror::Object>)); + Load(dest, offs, sizeof(uint32_t)); +} + +template +void JNIMacroAssembler<PointerSize::k32>::LoadStackReference(ManagedRegister dest, + FrameOffset offs); +template +void JNIMacroAssembler<PointerSize::k64>::LoadStackReference(ManagedRegister dest, + FrameOffset offs); + } // namespace art |