[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [RFC 00/14] tcg: Use TCGTemp pointers instead of indices
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [RFC 00/14] tcg: Use TCGTemp pointers instead of indices |
Date: |
Wed, 16 Nov 2016 20:51:36 +0100 |
The comment clarification that Peter asked for in this last
cycle made me wonder if we couldn't make better use of the
data that we're already storing.
We have pointer sized integers that we're passing around. Why
should we not simply pass the pointers themselves, to save on
looking them up later?
This does cause a few data structures to grow, so it's not a
sure fire win. Indeed, getting measurements that aren't noise
seems to be a problem.
I'm curious if anyone thinks this is a technical improvment,
or if it's just churn.
(Oh, and the last patch is unrelated, but because of the timeline
in which is was written it is dependent on the others. It could
be adjusted to be independent, but that would just be extra work.)
r~
Richard Henderson (13):
tcg: Use NULL for TCGV_UNUSED_*
tcg: Define actual structures for TCGv_*
tcg: Use per-temp state data in liveness
tcg: Add temp_global bit to TCGTemp
tcg: Avoid loops against variable bounds
tcg: More use of arg_temp
tcg: Change temp_allocate_frame arg to TCGTemp
tcg: Remove unused TCG_CALL_DUMMY_TCGV
tcg: More use of arg_index
tcg: Map TCG_CALL_DUMMY_ARG to NULL
tcg: Introduce temp_info for the optimize pass
tcg: Store pointers to temporaries directly in TCGArg
tcg: Use temp number 0 again
tcg/optimize: Fold movcond 0/1 into setcond
tcg/optimize.c | 291 +++++++++++++++++++++++++-----------------
tcg/tcg.c | 392 ++++++++++++++++++++++++++-------------------------------
tcg/tcg.h | 259 ++++++++++++++++++++------------------
3 files changed, 493 insertions(+), 449 deletions(-)
--
2.7.4
- [Qemu-devel] [RFC 00/14] tcg: Use TCGTemp pointers instead of indices,
Richard Henderson <=
- [Qemu-devel] [RFC 01/14] tcg: Use NULL for TCGV_UNUSED_*, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 04/14] tcg: Add temp_global bit to TCGTemp, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 02/14] tcg: Define actual structures for TCGv_*, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 05/14] tcg: Avoid loops against variable bounds, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 03/14] tcg: Use per-temp state data in liveness, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 06/14] tcg: More use of arg_temp, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 07/14] tcg: Change temp_allocate_frame arg to TCGTemp, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 08/14] tcg: Remove unused TCG_CALL_DUMMY_TCGV, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 09/14] tcg: More use of arg_index, Richard Henderson, 2016/11/16
- [Qemu-devel] [RFC 10/14] tcg: Map TCG_CALL_DUMMY_ARG to NULL, Richard Henderson, 2016/11/16