@samitouri / QOSamiQemu / commits / 23dcccfe8a

target/hppa: Work-around for Fast TLB insert instruction on HP-UX 9

The HP-UX 9 kernel uses two TLB insert instructions (0x05315440 and 0x05385400), which seem to be wrongly encoded fast TLB instructions, but similiar to the non-fast instructions idtlba r17,(r9) and idtlbp r24,(r9). It's not clear, if those undocumented instructions were used by mistake, or intentionally. Either way, this patch allows qemu to handle those instructions, so that a HP-UX 9 boot-CD can now boot somewhat further (but still crashes due to other reasons afterwards). Signed-off-by: Helge Deller <deller@gmx.de> Suggested-by: Philippe Mathieu-Daudé <philmd@oss.qualcomm.com> Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

Helge Deller committed Jul 3, 2026 at 00:32 UTC 23dcccfe8a4221da7b5d0bb2220fcc58c7c1ff86
1 file changed +2
target/hppa/insns.decode
+2
@@ -164,6 +164,8 @@ ixtlbx 000001 b:5 r:5 ... 000000 addr:1 0 00000 \
164
165 # pcxl and pcxl2 Fast TLB Insert instructions
166 ixtlbxf 000001 00000 r:5 00 0 data:1 01000 addr:1 0 00000
167 +# workaround for non-standard encoding as used in HP-UX 9
168 +ixtlbxf 000001 01001 r:5 01 0 data:1 01000 addr:1 0 00000
169
170 # pa2.0 tlb insert idtlbt and iitlbt instructions
171 ixtlbt 000001 r2:5 r1:5 000 data:1 100000 0 00000 # idtlbt