aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHelge Deller <deller@gmx.de>2024-02-09 23:00:11 +0100
committerHelge Deller <deller@gmx.de>2024-04-02 14:22:45 +0200
commit5f2410a9f6a17dedb558a1ebe8eeed0f30d4cfa8 (patch)
tree083481d57da7bc01d26218f754fabcd3335d1b95
parent19279978ab47e60475cbd604fcac0fdb3c031567 (diff)
downloadseabios-hppa-5f2410a9f6a17dedb558a1ebe8eeed0f30d4cfa8.zip
seabios-hppa-5f2410a9f6a17dedb558a1ebe8eeed0f30d4cfa8.tar.gz
seabios-hppa-5f2410a9f6a17dedb558a1ebe8eeed0f30d4cfa8.tar.bz2
parisc: Small optimization in IODC call
Signed-off-by: Helge Deller <deller@gmx.de>
-rw-r--r--src/parisc/head.S13
1 files changed, 2 insertions, 11 deletions
diff --git a/src/parisc/head.S b/src/parisc/head.S
index 018ee99..8734704 100644
--- a/src/parisc/head.S
+++ b/src/parisc/head.S
@@ -659,21 +659,12 @@ ENTRY(iodc_entry)
iodc_narrow:
/* we run narrow, but want wide! Jump to firmware to set PSW.W=1 */
- stw %r1,-20(%sp) /* temporarily store r1 */
-
/* Switch to wide mode. */
-#if 0
-1: mfia %r1
- ldo 2f-1b(%r1),%r1
- depdi 0,31,32,%r1
-#else
- load32 MEM_PDC_ENTRY + 2f - pdc_entry_table,%r1
-#endif
- bv 0(%r1)
+ load32 MEM_PDC_ENTRY + 2f - pdc_entry_table,%r31
+ bv 0(%r31)
set_PSW_W
2: /* now in wide mode, running in low memory */
depdi 0, 31, 32, %sp
- ldw -20(%sp),%r1 /* restore r1 */
load_fw_upper32 %r1
stw %rp,-20(%sp)