Changes v2-v3: 
  * Make more use, where appropriate, of normal pointer arithmetic under
    the new type.  In particular, if the target previously computed
  
        (label - code_ptr) >> 2
  
    using byte arithmetic, we can now arrange for this to be just

        label - code_ptr
  
    with the shift added by the compiler.  Given that technically a right
    shift of a negative value is implementation defined (may the death of
    catering to one's compliment machine come soon), having the compiler do
    this is going to eliminate one more stupid warning from some sanitizer.
  
  * Finish conversion of all tcg backends.
  
  
r~


Peter Maydell (3):
  exec-all.h: Use stl_p to avoid undefined behaviour patching x86 jumps
  tcg: Avoid stores to unaligned addresses
  tcg: Avoid undefined behaviour patching code at unaligned addresses

Richard Henderson (13):
  tcg: Introduce byte pointer arithmetic helpers
  tcg: Define tcg_insn_unit for code pointers
  tcg-i386: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg-ppc64: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg-ppc: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg-sparc: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg-arm: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg-aarch64: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg-s390: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg-ia64: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg-mips: Define TCG_TARGET_INSN_UNIT_SIZE
  tci: Define TCG_TARGET_INSN_UNIT_SIZE
  tcg: Require TCG_TARGET_INSN_UNIT_SIZE

 include/exec/exec-all.h  |   4 +-
 tcg/aarch64/tcg-target.c | 121 ++++++++++++--------------
 tcg/aarch64/tcg-target.h |   1 +
 tcg/arm/tcg-target.c     | 150 ++++++++++++--------------------
 tcg/arm/tcg-target.h     |   1 +
 tcg/i386/tcg-target.c    |  60 ++++++-------
 tcg/i386/tcg-target.h    |   2 +
 tcg/ia64/tcg-target.c    | 217 ++++++++++++++++-------------------------------
 tcg/ia64/tcg-target.h    |   6 ++
 tcg/mips/tcg-target.c    | 116 ++++++++-----------------
 tcg/mips/tcg-target.h    |   1 +
 tcg/ppc/tcg-target.c     | 195 ++++++++++++++++++++----------------------
 tcg/ppc/tcg-target.h     |   1 +
 tcg/ppc64/tcg-target.c   | 164 +++++++++++++++++------------------
 tcg/ppc64/tcg-target.h   |   1 +
 tcg/s390/tcg-target.c    |  91 ++++++++++----------
 tcg/s390/tcg-target.h    |   2 +
 tcg/sparc/tcg-target.c   | 128 +++++++++++++---------------
 tcg/sparc/tcg-target.h   |   1 +
 tcg/tcg-be-ldst.h        |   4 +-
 tcg/tcg.c                | 110 +++++++++++++++++-------
 tcg/tcg.h                |  83 ++++++++++++++++--
 tcg/tci/tcg-target.c     |  19 +++--
 tcg/tci/tcg-target.h     |   1 +
 translate-all.c          |  13 ++-
 25 files changed, 714 insertions(+), 778 deletions(-)

-- 
1.9.0


Reply via email to