aboutsummaryrefslogtreecommitdiff
path: root/target-sparc/op.c
diff options
context:
space:
mode:
Diffstat (limited to 'target-sparc/op.c')
-rw-r--r--target-sparc/op.c98
1 files changed, 0 insertions, 98 deletions
diff --git a/target-sparc/op.c b/target-sparc/op.c
index 2490617..99b9942 100644
--- a/target-sparc/op.c
+++ b/target-sparc/op.c
@@ -37,109 +37,11 @@
#endif
#endif
-#ifndef TARGET_SPARC64
-/* XXX: use another pointer for %iN registers to avoid slow wrapping
- handling ? */
-void OPPROTO op_save(void)
-{
- uint32_t cwp;
- cwp = (env->cwp - 1) & (NWINDOWS - 1);
- if (env->wim & (1 << cwp)) {
- raise_exception(TT_WIN_OVF);
- }
- set_cwp(cwp);
- FORCE_RET();
-}
-
-void OPPROTO op_restore(void)
-{
- uint32_t cwp;
- cwp = (env->cwp + 1) & (NWINDOWS - 1);
- if (env->wim & (1 << cwp)) {
- raise_exception(TT_WIN_UNF);
- }
- set_cwp(cwp);
- FORCE_RET();
-}
-#else
-/* XXX: use another pointer for %iN registers to avoid slow wrapping
- handling ? */
-void OPPROTO op_save(void)
-{
- uint32_t cwp;
- cwp = (env->cwp - 1) & (NWINDOWS - 1);
- if (env->cansave == 0) {
- raise_exception(TT_SPILL | (env->otherwin != 0 ?
- (TT_WOTHER | ((env->wstate & 0x38) >> 1)):
- ((env->wstate & 0x7) << 2)));
- } else {
- if (env->cleanwin - env->canrestore == 0) {
- // XXX Clean windows without trap
- raise_exception(TT_CLRWIN);
- } else {
- env->cansave--;
- env->canrestore++;
- set_cwp(cwp);
- }
- }
- FORCE_RET();
-}
-
-void OPPROTO op_restore(void)
-{
- uint32_t cwp;
- cwp = (env->cwp + 1) & (NWINDOWS - 1);
- if (env->canrestore == 0) {
- raise_exception(TT_FILL | (env->otherwin != 0 ?
- (TT_WOTHER | ((env->wstate & 0x38) >> 1)):
- ((env->wstate & 0x7) << 2)));
- } else {
- env->cansave++;
- env->canrestore--;
- set_cwp(cwp);
- }
- FORCE_RET();
-}
-#endif
-
void OPPROTO op_jmp_label(void)
{
GOTO_LABEL_PARAM(1);
}
-#ifdef TARGET_SPARC64
-void OPPROTO op_flushw(void)
-{
- if (env->cansave != NWINDOWS - 2) {
- raise_exception(TT_SPILL | (env->otherwin != 0 ?
- (TT_WOTHER | ((env->wstate & 0x38) >> 1)):
- ((env->wstate & 0x7) << 2)));
- }
-}
-
-void OPPROTO op_saved(void)
-{
- env->cansave++;
- if (env->otherwin == 0)
- env->canrestore--;
- else
- env->otherwin--;
- FORCE_RET();
-}
-
-void OPPROTO op_restored(void)
-{
- env->canrestore++;
- if (env->cleanwin < NWINDOWS - 1)
- env->cleanwin++;
- if (env->otherwin == 0)
- env->cansave--;
- else
- env->otherwin--;
- FORCE_RET();
-}
-#endif
-
#define CHECK_ALIGN_OP(align) \
void OPPROTO op_check_align_T0_ ## align (void) \
{ \