10411a972Sj_mayer /* 20411a972Sj_mayer * PowerPC emulation special registers manipulation helpers for qemu. 30411a972Sj_mayer * 40411a972Sj_mayer * Copyright (c) 2003-2007 Jocelyn Mayer 50411a972Sj_mayer * 60411a972Sj_mayer * This library is free software; you can redistribute it and/or 70411a972Sj_mayer * modify it under the terms of the GNU Lesser General Public 80411a972Sj_mayer * License as published by the Free Software Foundation; either 96bd039cdSChetan Pant * version 2.1 of the License, or (at your option) any later version. 100411a972Sj_mayer * 110411a972Sj_mayer * This library is distributed in the hope that it will be useful, 120411a972Sj_mayer * but WITHOUT ANY WARRANTY; without even the implied warranty of 130411a972Sj_mayer * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 140411a972Sj_mayer * Lesser General Public License for more details. 150411a972Sj_mayer * 160411a972Sj_mayer * You should have received a copy of the GNU Lesser General Public 178167ee88SBlue Swirl * License along with this library; if not, see <http://www.gnu.org/licenses/>. 180411a972Sj_mayer */ 190411a972Sj_mayer 202a6a4076SMarkus Armbruster #ifndef HELPER_REGS_H 212a6a4076SMarkus Armbruster #define HELPER_REGS_H 220411a972Sj_mayer 23*2ec0dc24SPierrick Bouvier #include "target/ppc/cpu.h" 24*2ec0dc24SPierrick Bouvier 258a05fd9aSRichard Henderson void hreg_swap_gpr_tgpr(CPUPPCState *env); 268a05fd9aSRichard Henderson void hreg_compute_hflags(CPUPPCState *env); 276494d2c1SNicholas Piggin void hreg_update_pmu_hflags(CPUPPCState *env); 288a05fd9aSRichard Henderson void cpu_interrupt_exittb(CPUState *cs); 298a05fd9aSRichard Henderson int hreg_store_msr(CPUPPCState *env, target_ulong value, int alter_hv); 30044897efSRichard Purdie 318a05fd9aSRichard Henderson #ifdef CONFIG_USER_ONLY check_tlb_flush(CPUPPCState * env,bool global)32e3cffe6fSNikunj A Dadhaniastatic inline void check_tlb_flush(CPUPPCState *env, bool global) { } 338a05fd9aSRichard Henderson #else 348a05fd9aSRichard Henderson void check_tlb_flush(CPUPPCState *env, bool global); 35cd0c6f47SBenjamin Herrenschmidt #endif 36cd0c6f47SBenjamin Herrenschmidt 372a6a4076SMarkus Armbruster #endif /* HELPER_REGS_H */ 38