1 /*
  2  * Copyright (c) 2019, 2023, Oracle and/or its affiliates. All rights reserved.
  3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  4  *
  5  * This code is free software; you can redistribute it and/or modify it
  6  * under the terms of the GNU General Public License version 2 only, as
  7  * published by the Free Software Foundation.
  8  *
  9  * This code is distributed in the hope that it will be useful, but WITHOUT
 10  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 11  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
 12  * version 2 for more details (a copy is included in the LICENSE file that
 13  * accompanied this code).
 14  *
 15  * You should have received a copy of the GNU General Public License version
 16  * 2 along with this work; if not, write to the Free Software Foundation,
 17  * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
 18  *
 19  * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
 20  * or visit www.oracle.com if you need additional information or have any
 21  * questions.
 22  *
 23  */
 24 
 25 #ifndef CPU_ARM_CONTINUATION_ARM_INLINE_HPP
 26 #define CPU_ARM_CONTINUATION_ARM_INLINE_HPP
 27 
 28 #include "oops/stackChunkOop.inline.hpp"
 29 #include "runtime/frame.hpp"
 30 #include "runtime/frame.inline.hpp"
 31 
 32 inline void FreezeBase::set_top_frame_metadata_pd(const frame& hf) {
 33   Unimplemented();
 34 }
 35 
 36 template<typename FKind>
 37 inline frame FreezeBase::sender(const frame& f) {
 38   Unimplemented();
 39   return frame();
 40 }
 41 
 42 template<typename FKind> frame FreezeBase::new_heap_frame(frame& f, frame& caller) {
 43   Unimplemented();
 44   return frame();
 45 }
 46 
 47 void FreezeBase::adjust_interpreted_frame_unextended_sp(frame& f) {
 48   Unimplemented();
 49 }
 50 
 51 inline void FreezeBase::prepare_freeze_interpreted_top_frame(const frame& f) {
 52   Unimplemented();
 53 }
 54 
 55 inline void FreezeBase::relativize_interpreted_frame_metadata(const frame& f, const frame& hf) {
 56   Unimplemented();
 57 }
 58 
 59 inline void FreezeBase::patch_pd(frame& hf, const frame& caller) {
 60   Unimplemented();
 61 }
 62 
 63 inline void FreezeBase::patch_stack_pd(intptr_t* frame_sp, intptr_t* heap_sp) {
 64   Unimplemented();
 65 }
 66 
 67 inline frame ThawBase::new_entry_frame() {
 68   Unimplemented();
 69   return frame();
 70 }
 71 
 72 template<typename FKind> frame ThawBase::new_stack_frame(const frame& hf, frame& caller, bool bottom) {
 73   Unimplemented();
 74   return frame();
 75 }
 76 
 77 inline void ThawBase::derelativize_interpreted_frame_metadata(const frame& hf, const frame& f) {
 78   Unimplemented();
 79 }
 80 
 81 inline intptr_t* ThawBase::align(const frame& hf, intptr_t* frame_sp, frame& caller, bool bottom) {
 82   Unimplemented();
 83   return nullptr;
 84 }
 85 
 86 inline void ThawBase::patch_pd(frame& f, const frame& caller) {
 87   Unimplemented();
 88 }
 89 
 90 inline void ThawBase::patch_pd(frame& f, intptr_t* caller_sp) {
 91   Unimplemented();
 92 }
 93 
 94 inline void ThawBase::fix_native_wrapper_return_pc_pd(frame& top) {
 95   Unimplemented();
 96 }
 97 
 98 inline intptr_t* ThawBase::push_resume_adapter(frame& top) {
 99   Unimplemented();
100   return nullptr;
101 }
102 
103 inline intptr_t* ThawBase::push_cleanup_continuation() {
104   Unimplemented();
105   return nullptr;
106 }
107 
108 template <typename ConfigT>
109 inline void Thaw<ConfigT>::patch_caller_links(intptr_t* sp, intptr_t* bottom) {
110   Unimplemented();
111 }
112 
113 inline void ThawBase::prefetch_chunk_pd(void* start, int size) {
114   Unimplemented();
115 }
116 
117 #endif // CPU_ARM_CONTINUATION_ARM_INLINE_HPP