1 /*
  2  * Copyright (c) 2019, 2024, 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_S390_CONTINUATION_S390_INLINE_HPP
 26 #define CPU_S390_CONTINUATION_S390_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(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 intptr_t* AnchorMark::anchor_mark_set_pd() {
 68   Unimplemented();
 69   return nullptr;
 70 }
 71 
 72 inline void AnchorMark::anchor_mark_clear_pd() {
 73   Unimplemented();
 74 }
 75 
 76 inline frame ThawBase::new_entry_frame() {
 77   Unimplemented();
 78   return frame();
 79 }
 80 
 81 template<typename FKind> frame ThawBase::new_stack_frame(const frame& hf, frame& caller, bool bottom) {
 82   Unimplemented();
 83   return frame();
 84 }
 85 
 86 inline void ThawBase::derelativize_interpreted_frame_metadata(const frame& hf, const frame& f) {
 87   Unimplemented();
 88 }
 89 
 90 inline intptr_t* ThawBase::align(const frame& hf, intptr_t* frame_sp, frame& caller, bool bottom) {
 91   Unimplemented();
 92   return nullptr;
 93 }
 94 
 95 inline void ThawBase::patch_pd(frame& f, const frame& caller) {
 96   Unimplemented();
 97 }
 98 
 99 inline void ThawBase::patch_pd(frame& f, intptr_t* caller_sp) {
100   Unimplemented();
101 }
102 
103 inline intptr_t* ThawBase::push_cleanup_continuation() {
104   Unimplemented();
105   return nullptr;
106 }
107 
108 inline intptr_t* ThawBase::push_preempt_adapter() {
109   Unimplemented();
110   return nullptr;
111 }
112 
113 template <typename ConfigT>
114 inline void Thaw<ConfigT>::patch_caller_links(intptr_t* sp, intptr_t* bottom) {
115   Unimplemented();
116 }
117 
118 inline void ThawBase::prefetch_chunk_pd(void* start, int size) {
119   Unimplemented();
120 }
121 
122 #endif // CPU_S390_CONTINUATION_S390_INLINE_HPP