summary refs log tree commit diff stats
path: root/scripts/qapi/common.py
diff options
context:
space:
mode:
authorRichard Henderson <richard.henderson@linaro.org>2022-06-04 23:10:04 +0000
committerAlistair Francis <alistair@alistair23.me>2022-07-03 10:03:20 +1000
commita9814e3e08d2aacbd9018c36c77c2fb652537848 (patch)
tree1eb64b2e8e06c4847aab6bcb433247202cdbd43d /scripts/qapi/common.py
parent5dacdbaeaf7874d361dc95d07e30c86b72c9693d (diff)
downloadfocaccia-qemu-a9814e3e08d2aacbd9018c36c77c2fb652537848.tar.gz
focaccia-qemu-a9814e3e08d2aacbd9018c36c77c2fb652537848.zip
target/riscv: Minimize the calls to decode_save_opc
The set of instructions that require decode_save_opc for
unwinding is really fairly small -- only insns that can
raise ILLEGAL_INSN at runtime.  This includes CSR, anything
that uses a *new* fp rounding mode, and many privileged insns.

Since unwind info is stored as the difference from the
previous insn, storing a 0 for most insns minimizes the
size of the unwind info.

Booting a debian kernel image to the missing rootfs panic yields

- gen code size       22226819/1026886656
+ gen code size       21601907/1026886656

on 41k TranslationBlocks, a savings of 610kB or a bit less than 3%.

Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Message-Id: <20220604231004.49990-4-richard.henderson@linaro.org>
Signed-off-by: Alistair Francis <alistair.francis@wdc.com>
Diffstat (limited to 'scripts/qapi/common.py')
0 files changed, 0 insertions, 0 deletions