]> git.proxmox.com Git - mirror_qemu.git/commit
tcg/mips: Create and use TCG_REG_TB
authorRichard Henderson <richard.henderson@linaro.org>
Fri, 6 Aug 2021 19:28:31 +0000 (09:28 -1000)
committerRichard Henderson <richard.henderson@linaro.org>
Thu, 25 May 2023 13:57:51 +0000 (13:57 +0000)
commit53c4fa2726629b2f34a23082e6f985bd36c3e1f7
tree9bb5dc841d53c0a0449956f95b01896b833bad24
parentf63eb2e59f45a2307f2e3f41e82e76f7abcd03f0
tcg/mips: Create and use TCG_REG_TB

This vastly reduces the size of code generated for 64-bit addresses.
The code for exit_tb, for instance, where we load a (tagged) pointer
to the current TB, goes from

0x400aa9725c:  li       v0,64
0x400aa97260:  dsll     v0,v0,0x10
0x400aa97264:  ori      v0,v0,0xaa9
0x400aa97268:  dsll     v0,v0,0x10
0x400aa9726c:  j        0x400aa9703c
0x400aa97270:  ori      v0,v0,0x7083

to

0x400aa97240:  j        0x400aa97040
0x400aa97244:  daddiu   v0,s6,-189

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
tcg/mips/tcg-target.c.inc