qemu/linux-user/hexagon/target_cpu.h
<<
>>
Prefs
   1/*
   2 *  Copyright(c) 2019-2021 Qualcomm Innovation Center, Inc. All Rights Reserved.
   3 *
   4 *  This program is free software; you can redistribute it and/or modify
   5 *  it under the terms of the GNU General Public License as published by
   6 *  the Free Software Foundation; either version 2 of the License, or
   7 *  (at your option) any later version.
   8 *
   9 *  This program is distributed in the hope that it will be useful,
  10 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  11 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12 *  GNU General Public License for more details.
  13 *
  14 *  You should have received a copy of the GNU General Public License
  15 *  along with this program; if not, see <http://www.gnu.org/licenses/>.
  16 */
  17
  18#ifndef HEXAGON_TARGET_CPU_H
  19#define HEXAGON_TARGET_CPU_H
  20
  21static inline void cpu_clone_regs_child(CPUHexagonState *env,
  22                                        target_ulong newsp, unsigned flags)
  23{
  24    if (newsp) {
  25        env->gpr[HEX_REG_SP] = newsp;
  26    }
  27    env->gpr[0] = 0;
  28}
  29
  30static inline void cpu_clone_regs_parent(CPUHexagonState *env, unsigned flags)
  31{
  32}
  33
  34static inline void cpu_set_tls(CPUHexagonState *env, target_ulong newtls)
  35{
  36    env->gpr[HEX_REG_UGP] = newtls;
  37}
  38
  39static inline abi_ulong get_sp_from_cpustate(CPUHexagonState *state)
  40{
  41    return state->gpr[HEX_REG_SP];
  42}
  43
  44#endif
  45