#include <functional>
#include <sstream>
#include <tuple>
#include <type_traits>
#include <utility>
#include "base/compiler.hh"
#include "sim/guest_abi/definition.hh"
#include "sim/guest_abi/layout.hh"
Go to the source code of this file.
|
namespace | gem5 |
| Copyright (c) 2024 - Pranith Kumar Copyright (c) 2020 Inria All rights reserved.
|
|
namespace | gem5::guest_abi |
|
|
template<typename ABI , typename Ret , bool store_ret, typename Target , typename State , typename Args , std::size_t... I> |
static std::enable_if_t<!store_ret, Ret > | gem5::guest_abi::callFromHelper (Target &target, ThreadContext *tc, State &state, Args &&args, std::index_sequence< I... >) |
|
template<typename ABI , typename Ret , bool store_ret, typename Target , typename State , typename Args , std::size_t... I> |
static std::enable_if_t< store_ret, Ret > | gem5::guest_abi::callFromHelper (Target &target, ThreadContext *tc, State &state, Args &&args, std::index_sequence< I... >) |
|
template<typename ABI , typename Ret , bool store_ret, typename ... Args> |
static Ret | gem5::guest_abi::callFrom (ThreadContext *tc, typename ABI::State &state, std::function< Ret(ThreadContext *, Args...)> target) |
|
template<typename ABI , typename Ret , typename ... Args> |
static void | gem5::guest_abi::dumpArgsFrom (std::ostream &os, ThreadContext *tc, typename ABI::State &state) |
|