[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] a85833: tcg: Move USE_DIRECT_JUMP discriminat
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] a85833: tcg: Move USE_DIRECT_JUMP discriminator to tcg/cpu... |
Date: |
Fri, 08 Sep 2017 04:56:43 -0700 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: a85833933628384d74ec412024d55cf012640287
https://github.com/qemu/qemu/commit/a85833933628384d74ec412024d55cf012640287
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M accel/tcg/cpu-exec.c
M accel/tcg/translate-all.c
M include/exec/exec-all.h
M tcg/aarch64/tcg-target.h
M tcg/aarch64/tcg-target.inc.c
M tcg/arm/tcg-target.h
M tcg/i386/tcg-target.h
M tcg/mips/tcg-target.h
M tcg/mips/tcg-target.inc.c
M tcg/ppc/tcg-target.h
M tcg/ppc/tcg-target.inc.c
M tcg/s390/tcg-target.h
M tcg/sparc/tcg-target.h
M tcg/sparc/tcg-target.inc.c
M tcg/tcg.h
M tcg/tci/tcg-target.h
Log Message:
-----------
tcg: Move USE_DIRECT_JUMP discriminator to tcg/cpu/tcg-target.h
Replace the USE_DIRECT_JUMP ifdef with a TCG_TARGET_HAS_direct_jump
boolean test. Replace the tb_set_jmp_target1 ifdef with an unconditional
function tb_target_set_jmp_target.
While we're touching all backends, add a parameter for tb->tc_ptr;
we're going to need it shortly for some backends.
Move tb_set_jmp_target and tb_add_jump from exec-all.h to cpu-exec.c.
This opens the possibility for TCG_TARGET_HAS_direct_jump to be
a runtime decision -- based on host cpu capabilities, the size of
code_gen_buffer, or a future debugging switch.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 659ef5cbb893872d25e9d95191cc23b16546c8a1
https://github.com/qemu/qemu/commit/659ef5cbb893872d25e9d95191cc23b16546c8a1
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/aarch64/tcg-target.h
M tcg/aarch64/tcg-target.inc.c
M tcg/arm/tcg-target.h
M tcg/arm/tcg-target.inc.c
M tcg/i386/tcg-target.h
M tcg/i386/tcg-target.inc.c
M tcg/mips/tcg-target.h
M tcg/mips/tcg-target.inc.c
M tcg/ppc/tcg-target.h
M tcg/ppc/tcg-target.inc.c
M tcg/s390/tcg-target.h
M tcg/s390/tcg-target.inc.c
M tcg/sparc/tcg-target.inc.c
R tcg/tcg-be-ldst.h
R tcg/tcg-be-null.h
A tcg/tcg-ldst.inc.c
M tcg/tcg.c
M tcg/tcg.h
M tcg/tci/tcg-target.h
M tcg/tci/tcg-target.inc.c
Log Message:
-----------
tcg: Rearrange ldst label tracking
Dispense with TCGBackendData, as it has never been used for more than
holding a single pointer. Use a define in the cpu/tcg-target.h to
signal requirement for TCGLabelQemuLdst, so that we can drop the no-op
tcg-be-null.h stubs. Rename tcg-be-ldst.h to tcg-ldst.inc.c.
Reviewed-by: Paolo Bonzini <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
Commit: 57a269469dbf70013dab3a176e1735636010a772
https://github.com/qemu/qemu/commit/57a269469dbf70013dab3a176e1735636010a772
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M accel/tcg/translate-all.c
A tcg/tcg-pool.inc.c
M tcg/tcg.c
M tcg/tcg.h
Log Message:
-----------
tcg: Infrastructure for managing constant pools
A new shared header tcg-pool.inc.c adds new_pool_label,
for registering a tcg_target_ulong to be emitted after
the generated code, plus relocation data to install a
pointer to the data.
A new pointer is added to the TCGContext, so that we
dump the constant pool as data, not code.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 4e45f23943c0bb91588627de3801826546155ad8
https://github.com/qemu/qemu/commit/4e45f23943c0bb91588627de3801826546155ad8
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/i386/tcg-target.h
M tcg/i386/tcg-target.inc.c
Log Message:
-----------
tcg/i386: Store out-of-range call targets in constant pool
Already it saves 2 bytes per call, but also the constant pool
entry may well be shared across multiple calls.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 829e1376d94009a7ccacc0535bffcc679f7bb507
https://github.com/qemu/qemu/commit/829e1376d94009a7ccacc0535bffcc679f7bb507
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/s390/tcg-target.h
M tcg/s390/tcg-target.inc.c
Log Message:
-----------
tcg/s390: Introduce TCG_REG_TB
Signed-off-by: Richard Henderson <address@hidden>
Commit: e692a3492d04500355bcf23575eed7cf137b38d5
https://github.com/qemu/qemu/commit/e692a3492d04500355bcf23575eed7cf137b38d5
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/s390/tcg-target.inc.c
Log Message:
-----------
tcg/s390: Fix sign of patch_reloc addend
We were passing in -2 instead of +2, but then ignoring
the actual contents of addend in the calculation.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 28eef8aaece5e83df4568d9842ab9611ec130b2c
https://github.com/qemu/qemu/commit/28eef8aaece5e83df4568d9842ab9611ec130b2c
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M include/elf.h
M tcg/s390/tcg-target.h
M tcg/s390/tcg-target.inc.c
Log Message:
-----------
tcg/s390: Use constant pool for movi
Split out maybe_out_small_movi for use with other operations
that want to add to the constant pool.
Signed-off-by: Richard Henderson <address@hidden>
Commit: bdcd5d1926a7ae42c060efdcaa15074930a92ebb
https://github.com/qemu/qemu/commit/bdcd5d1926a7ae42c060efdcaa15074930a92ebb
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/s390/tcg-target.inc.c
Log Message:
-----------
tcg/s390: Use constant pool for andi
Signed-off-by: Richard Henderson <address@hidden>
Commit: 4046d9ca04728ca3ad0617082994d1f44c7d6adb
https://github.com/qemu/qemu/commit/4046d9ca04728ca3ad0617082994d1f44c7d6adb
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/s390/tcg-target.inc.c
Log Message:
-----------
tcg/s390: Use constant pool for ori
Signed-off-by: Richard Henderson <address@hidden>
Commit: 5bf67a9217a31512f35b036924e1db1baf2f9ebf
https://github.com/qemu/qemu/commit/5bf67a9217a31512f35b036924e1db1baf2f9ebf
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/s390/tcg-target.inc.c
Log Message:
-----------
tcg/s390: Use constant pool for xori
Signed-off-by: Richard Henderson <address@hidden>
Commit: a534bb15f30ff7e420434b3e5746bcad595c5429
https://github.com/qemu/qemu/commit/a534bb15f30ff7e420434b3e5746bcad595c5429
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/s390/tcg-target.inc.c
Log Message:
-----------
tcg/s390: Use constant pool for cmpi
Also use CHI/CGHI for 16-bit signed constants.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 55129955e92ec164ee2d778f20070dc214109bc6
https://github.com/qemu/qemu/commit/55129955e92ec164ee2d778f20070dc214109bc6
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/aarch64/tcg-target.h
M tcg/aarch64/tcg-target.inc.c
Log Message:
-----------
tcg/aarch64: Use constant pool for movi
Signed-off-by: Richard Henderson <address@hidden>
Commit: ab20bdc11624837bd0c8aea83c603b66f0406e8b
https://github.com/qemu/qemu/commit/ab20bdc11624837bd0c8aea83c603b66f0406e8b
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/sparc/tcg-target.inc.c
Log Message:
-----------
tcg/sparc: Introduce TCG_REG_TB
Signed-off-by: Richard Henderson <address@hidden>
Commit: e9823b4c3347370414b63010ec4a2a4754e4abb5
https://github.com/qemu/qemu/commit/e9823b4c3347370414b63010ec4a2a4754e4abb5
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/sparc/tcg-target.h
M tcg/sparc/tcg-target.inc.c
Log Message:
-----------
tcg/sparc: Use constant pool for movi
Signed-off-by: Richard Henderson <address@hidden>
Commit: 647ab96aaf5defeb138e48d610f7f633c587b40d
https://github.com/qemu/qemu/commit/647ab96aaf5defeb138e48d610f7f633c587b40d
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/arm/tcg-target.inc.c
Log Message:
-----------
tcg/arm: Improve tlb load for armv7
Use UBFX to avoid limitation on CPU_TLB_BITS. Since we're dropping
the initial shift, we need to replace the page masking. We can use
MOVW+BIC to do this without shifting. The result is the same size
as the armv6 path with one less conditional instruction.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 95ede84f4de18747d03d79c148013cff99acd60b
https://github.com/qemu/qemu/commit/95ede84f4de18747d03d79c148013cff99acd60b
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/arm/tcg-target.inc.c
Log Message:
-----------
tcg/arm: Tighten tlb indexing offset test
We are not going to use ldrd for loading the comparator
for 32-bit guests, so don't limit cmp_off to 8 bits then.
This eliminates one insn in the tlb load for some guests.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 150706163748ec45458b6fc902581572cfdc111c
https://github.com/qemu/qemu/commit/150706163748ec45458b6fc902581572cfdc111c
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/arm/tcg-target.inc.c
Log Message:
-----------
tcg/arm: Code rearrangement
Move constants before all of the functions.
Move tcg_out_<format> functions before all
of the others. No functional change.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 2a8ab93c6bd459ff3cf3fe8978cf733a7dbd3080
https://github.com/qemu/qemu/commit/2a8ab93c6bd459ff3cf3fe8978cf733a7dbd3080
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/arm/tcg-target.inc.c
Log Message:
-----------
tcg/arm: Extract INSN_NOP
We'll want this for tcg_out_nop_fill.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 880ad9626c37886c3f17f782916675baf1eb8a98
https://github.com/qemu/qemu/commit/880ad9626c37886c3f17f782916675baf1eb8a98
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/arm/tcg-target.h
M tcg/arm/tcg-target.inc.c
Log Message:
-----------
tcg/arm: Use constant pool for movi
Signed-off-by: Richard Henderson <address@hidden>
Commit: afe74dbd6a58031741b68e99843c1f1d390996b2
https://github.com/qemu/qemu/commit/afe74dbd6a58031741b68e99843c1f1d390996b2
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/arm/tcg-target.inc.c
Log Message:
-----------
tcg/arm: Use constant pool for call
Signed-off-by: Richard Henderson <address@hidden>
Commit: 5964fca8a12c39ec99705e3d222f07e33038e4ad
https://github.com/qemu/qemu/commit/5964fca8a12c39ec99705e3d222f07e33038e4ad
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/ppc/tcg-target.inc.c
Log Message:
-----------
tcg/ppc: Change TCG_REG_RA to TCG_REG_TB
At this point the conversion is a wash. Loading of TB+ofs is
smaller, but the actual return address from exit_tb is larger.
There are a few more insns required to transition between TBs.
But the expectation is that accesses to the constant pool will
on the whole be smaller.
Signed-off-by: Richard Henderson <address@hidden>
Commit: 77bfc7c0b442f1cee5da5706f4de429a526ddac5
https://github.com/qemu/qemu/commit/77bfc7c0b442f1cee5da5706f4de429a526ddac5
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/ppc/tcg-target.inc.c
Log Message:
-----------
tcg/ppc: Look for shifted constants
Signed-off-by: Richard Henderson <address@hidden>
Commit: 53c89efd02cef626040165cc8f06b5cf2c15355d
https://github.com/qemu/qemu/commit/53c89efd02cef626040165cc8f06b5cf2c15355d
Author: Richard Henderson <address@hidden>
Date: 2017-09-07 (Thu, 07 Sep 2017)
Changed paths:
M tcg/ppc/tcg-target.h
M tcg/ppc/tcg-target.inc.c
Log Message:
-----------
tcg/ppc: Use constant pool for movi
Signed-off-by: Richard Henderson <address@hidden>
Commit: b3a1179f570b10b7a24a546f7a0dfdf78350d094
https://github.com/qemu/qemu/commit/b3a1179f570b10b7a24a546f7a0dfdf78350d094
Author: Peter Maydell <address@hidden>
Date: 2017-09-08 (Fri, 08 Sep 2017)
Changed paths:
M accel/tcg/cpu-exec.c
M accel/tcg/translate-all.c
M include/elf.h
M include/exec/exec-all.h
M tcg/aarch64/tcg-target.h
M tcg/aarch64/tcg-target.inc.c
M tcg/arm/tcg-target.h
M tcg/arm/tcg-target.inc.c
M tcg/i386/tcg-target.h
M tcg/i386/tcg-target.inc.c
M tcg/mips/tcg-target.h
M tcg/mips/tcg-target.inc.c
M tcg/ppc/tcg-target.h
M tcg/ppc/tcg-target.inc.c
M tcg/s390/tcg-target.h
M tcg/s390/tcg-target.inc.c
M tcg/sparc/tcg-target.h
M tcg/sparc/tcg-target.inc.c
R tcg/tcg-be-ldst.h
R tcg/tcg-be-null.h
A tcg/tcg-ldst.inc.c
A tcg/tcg-pool.inc.c
M tcg/tcg.c
M tcg/tcg.h
M tcg/tci/tcg-target.h
M tcg/tci/tcg-target.inc.c
Log Message:
-----------
Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20170907' into staging
TCG constant pools
# gpg: Signature made Thu 07 Sep 2017 23:35:45 BST
# gpg: using RSA key 0x64DF38E8AF7E215F
# gpg: Good signature from "Richard Henderson <address@hidden>"
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg: It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A 05C0 64DF 38E8 AF7E 215F
* remotes/rth/tags/pull-tcg-20170907: (23 commits)
tcg/ppc: Use constant pool for movi
tcg/ppc: Look for shifted constants
tcg/ppc: Change TCG_REG_RA to TCG_REG_TB
tcg/arm: Use constant pool for call
tcg/arm: Use constant pool for movi
tcg/arm: Extract INSN_NOP
tcg/arm: Code rearrangement
tcg/arm: Tighten tlb indexing offset test
tcg/arm: Improve tlb load for armv7
tcg/sparc: Use constant pool for movi
tcg/sparc: Introduce TCG_REG_TB
tcg/aarch64: Use constant pool for movi
tcg/s390: Use constant pool for cmpi
tcg/s390: Use constant pool for xori
tcg/s390: Use constant pool for ori
tcg/s390: Use constant pool for andi
tcg/s390: Use constant pool for movi
tcg/s390: Fix sign of patch_reloc addend
tcg/s390: Introduce TCG_REG_TB
tcg/i386: Store out-of-range call targets in constant pool
...
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/e6d767b72732...b3a1179f570b
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] a85833: tcg: Move USE_DIRECT_JUMP discriminator to tcg/cpu...,
GitHub <=