qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] eed566: accel/tcg: demacro cputlb


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] eed566: accel/tcg: demacro cputlb
Date: Mon, 13 May 2019 04:46:18 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: eed5664238ea5317689cf32426d9318686b2b75c
      
https://github.com/qemu/qemu/commit/eed5664238ea5317689cf32426d9318686b2b75c
  Author: Alex Bennée <address@hidden>
  Date:   2019-05-10 (Fri, 10 May 2019)

  Changed paths:
    M accel/tcg/cputlb.c
    R accel/tcg/softmmu_template.h

  Log Message:
  -----------
  accel/tcg: demacro cputlb

Instead of expanding a series of macros to generate the load/store
helpers we move stuff into common functions and rely on the compiler
to eliminate the dead code for each variant.

Signed-off-by: Alex Bennée <address@hidden>
Tested-by: Mark Cave-Ayland <address@hidden>


  Commit: f1be36969de2fb9b6b64397db1098f115210fcd9
      
https://github.com/qemu/qemu/commit/f1be36969de2fb9b6b64397db1098f115210fcd9
  Author: Richard Henderson <address@hidden>
  Date:   2019-05-10 (Fri, 10 May 2019)

  Changed paths:
    M accel/tcg/cputlb.c

  Log Message:
  -----------
  cputlb: Move TLB_RECHECK handling into load/store_helper

Having this in io_readx/io_writex meant that we forgot to
re-compute index after tlb_fill.  It also means we can use
the normal aligned memory load path.  It also fixes a bug
in that we had cached a use of index across a tlb_fill.

Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Alex Bennée <address@hidden>
Tested-by: Mark Cave-Ayland <address@hidden>


  Commit: fc1bc777910dc14a3db4e2ad66f3e536effc297d
      
https://github.com/qemu/qemu/commit/fc1bc777910dc14a3db4e2ad66f3e536effc297d
  Author: Richard Henderson <address@hidden>
  Date:   2019-05-10 (Fri, 10 May 2019)

  Changed paths:
    M accel/tcg/cputlb.c

  Log Message:
  -----------
  cputlb: Drop attribute flatten

Going to approach this problem via __attribute__((always_inline))
instead, but full conversion will take several steps.

Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Alex Bennée <address@hidden>
Tested-by: Mark Cave-Ayland <address@hidden>


  Commit: 2dd926067867c2dd19e66d31a7990e8eea7258f6
      
https://github.com/qemu/qemu/commit/2dd926067867c2dd19e66d31a7990e8eea7258f6
  Author: Richard Henderson <address@hidden>
  Date:   2019-05-10 (Fri, 10 May 2019)

  Changed paths:
    M accel/tcg/cputlb.c

  Log Message:
  -----------
  cputlb: Do unaligned load recursion to outermost function

If we attempt to recurse from load_helper back to load_helper,
even via intermediary, we do not get all of the constants
expanded away as desired.

But if we recurse back to the original helper (or a shim that
has a consistent function signature), the operands are folded
away as desired.

Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Alex Bennée <address@hidden>
Tested-by: Mark Cave-Ayland <address@hidden>


  Commit: 4601f8d10d7628bcaf2a8179af36e04b42879e91
      
https://github.com/qemu/qemu/commit/4601f8d10d7628bcaf2a8179af36e04b42879e91
  Author: Richard Henderson <address@hidden>
  Date:   2019-05-10 (Fri, 10 May 2019)

  Changed paths:
    M accel/tcg/cputlb.c

  Log Message:
  -----------
  cputlb: Do unaligned store recursion to outermost function

This is less tricky than for loads, because we always fall
back to single byte stores to implement unaligned stores.

Signed-off-by: Richard Henderson <address@hidden>
Signed-off-by: Alex Bennée <address@hidden>
Tested-by: Mark Cave-Ayland <address@hidden>


  Commit: 04d6556c5c91d6b00c70df7b85e1715a7c7870df
      
https://github.com/qemu/qemu/commit/04d6556c5c91d6b00c70df7b85e1715a7c7870df
  Author: Peter Maydell <address@hidden>
  Date:   2019-05-13 (Mon, 13 May 2019)

  Changed paths:
    M accel/tcg/cputlb.c
    R accel/tcg/softmmu_template.h

  Log Message:
  -----------
  Merge remote-tracking branch 
'remotes/stsquad/tags/pull-demacro-softmmu-100519-1' into staging

Demacrofy the SoftMMU

  - the demacro itself
  - refactor TLB_RECHECK and fix bug
  - move unaligned handler out

# gpg: Signature made Fri 10 May 2019 20:34:14 BST
# gpg:                using RSA key 6685AE99E75167BCAFC8DF35FBD0DB095A9E2A44
# gpg: Good signature from "Alex Bennée (Master Work Key) <address@hidden>" 
[full]
# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44

* remotes/stsquad/tags/pull-demacro-softmmu-100519-1:
  cputlb: Do unaligned store recursion to outermost function
  cputlb: Do unaligned load recursion to outermost function
  cputlb: Drop attribute flatten
  cputlb: Move TLB_RECHECK handling into load/store_helper
  accel/tcg: demacro cputlb

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/c9ba36ff2f56...04d6556c5c91



reply via email to

[Prev in Thread] Current Thread [Next in Thread]