summaryrefslogtreecommitdiffstats
path: root/qemu/roms/qemu-palcode/pal.h
diff options
context:
space:
mode:
Diffstat (limited to 'qemu/roms/qemu-palcode/pal.h')
-rw-r--r--qemu/roms/qemu-palcode/pal.h157
1 files changed, 0 insertions, 157 deletions
diff --git a/qemu/roms/qemu-palcode/pal.h b/qemu/roms/qemu-palcode/pal.h
deleted file mode 100644
index c89a18c39..000000000
--- a/qemu/roms/qemu-palcode/pal.h
+++ /dev/null
@@ -1,157 +0,0 @@
-/* Common definitions for QEMU Emulation PALcode
-
- Copyright (C) 2011 Richard Henderson
-
- This file is part of QEMU PALcode.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the text
- of the GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program; see the file COPYING. If not see
- <http://www.gnu.org/licenses/>. */
-
-#ifndef PAL_H
-#define PAL_H 1
-
-/* General Purpose Registers. */
-#define v0 $0
-#define t0 $1
-#define t1 $2
-#define t2 $3
-#define t3 $4
-#define t4 $5
-#define t5 $6
-#define a0 $16
-#define a1 $17
-#define a2 $18
-#define a3 $19
-#define a4 $20
-#define a5 $21
-#define t8 $22
-#define t9 $23
-#define t10 $24
-
-/* PALcode Shadow Registers. These registers are swapped out when
- QEMU is in PALmode. Unlike real hardware, there is no enable bit.
- However, also unlike real hardware, the originals can be accessed
- via MTPR/MFPR. */
-#define p0 $8
-#define p1 $9
-#define p2 $10
-#define p3 $11
-#define p4 $12
-#define p5 $13
-#define p6 $14 // Used to save exc_addr for machine check
-#define p7 $25
-
-/* QEMU Processor Registers. */
-#define qemu_ps 0
-#define qemu_fen 1
-#define qemu_pcc_ofs 2
-#define qemu_trap_arg0 3
-#define qemu_trap_arg1 4
-#define qemu_trap_arg2 5
-#define qemu_exc_addr 6
-#define qemu_palbr 7
-#define qemu_ptbr 8
-#define qemu_vptptr 9
-#define qemu_unique 10
-#define qemu_sysval 11
-#define qemu_usp 12
-
-#define qemu_shadow0 32
-#define qemu_shadow1 33
-#define qemu_shadow2 34
-#define qemu_shadow3 35
-#define qemu_shadow4 36
-#define qemu_shadow5 37
-#define qemu_shadow6 38
-#define qemu_shadow7 39
-
-/* PALcode Processor Register Private Storage. */
-#define pt0 40
-#define pt1 41
-#define pt2 42
-#define pt3 43
-#define pt4 44
-#define pt5 45
-#define pt6 46
-#define pt7 47
-#define pt8 48
-#define pt9 49
-#define pt10 50
-#define pt11 51
-#define pt12 52
-#define pt13 53
-#define pt14 54
-#define pt15 55
-#define pt16 56
-#define pt17 57
-#define pt18 58
-#define pt19 59
-#define pt20 60
-#define pt21 61
-#define pt22 62
-#define pt23 63
-
-/* QEMU function calls, via mtpr. */
-#define qemu_tbia 255
-#define qemu_tbis 254
-#define qemu_wait 253
-#define qemu_halt 252
-#define qemu_alarm 251
-#define qemu_walltime 250
-#define qemu_vmtime 249
-
-/* PALcode uses of the private storage slots. */
-#define ptEntUna pt0
-#define ptEntIF pt1
-#define ptEntSys pt2
-#define ptEntInt pt3
-#define ptEntArith pt4
-#define ptEntMM pt5
-#define ptMces pt6
-#define ptKsp pt7
-#define ptKgp pt8
-#define ptPcbb pt9
-#define ptPgp pt10
-#define ptMisc pt11
-#define ptMchk0 pt12
-#define ptMchk1 pt13
-#define ptMchk2 pt14
-#define ptMchk3 pt15
-#define ptMchk4 pt16
-#define ptMchk5 pt17
-#define ptSys0 pt18
-#define ptSys1 pt19
-
-/*
- * Shortcuts for various PALmode instructions.
- */
-#define mtpr hw_mtpr
-#define mfpr hw_mfpr
-#define stq_p hw_stq/p
-#define stl_p hw_stl/p
-#define ldl_p hw_ldl/p
-#define ldq_p hw_ldq/p
-
-/* QEMU recognizes the EV4/EV5 HW_REI instruction as a special case of
- the EV6 HW_RET instruction. This pulls the destination address from
- the EXC_ADDR processor register. */
-#define hw_rei hw_ret ($31)
-
-
-.macro ENDFN function
- .type \function, @function
- .size \function, . - \function
-.endm
-
-#endif /* PAL_H */