qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] 8612c9: target-s390: Implement SAM specificat


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] 8612c9: target-s390: Implement SAM specification exception
Date: Tue, 03 Feb 2015 15:00:06 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 8612c935831647c193281992738f96292428b9e6
      
https://github.com/qemu/qemu/commit/8612c935831647c193281992738f96292428b9e6
  Author: Richard Henderson <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/insn-data.def
    M target-s390x/translate.c

  Log Message:
  -----------
  target-s390: Implement SAM specification exception

Also, these are user-mode instructions; allow their use
in CONFIG_USER_ONLY.

Signed-off-by: Richard Henderson <address@hidden>


  Commit: e30a9d3fea58c356000ce328421fe65e03143bb1
      
https://github.com/qemu/qemu/commit/e30a9d3fea58c356000ce328421fe65e03143bb1
  Author: Richard Henderson <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/insn-data.def
    M target-s390x/translate.c

  Log Message:
  -----------
  target-s390: Implement EPSW

Signed-off-by: Richard Henderson <address@hidden>


  Commit: 7f745b31b39cb9be8b3c3dfaf3173390ae07353e
      
https://github.com/qemu/qemu/commit/7f745b31b39cb9be8b3c3dfaf3173390ae07353e
  Author: Richard Henderson <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/cpu.h
    M target-s390x/translate.c

  Log Message:
  -----------
  target-s390: Fix STIDP

The implementation had been incomplete, as we did not store the
machine type.  Note that the machine_type member is still unset
during initialization, so this has no effect yet.

Signed-off-by: Richard Henderson <address@hidden>


  Commit: 81822c2f42e0c3d7bf36f6eec92941de33ed92b8
      
https://github.com/qemu/qemu/commit/81822c2f42e0c3d7bf36f6eec92941de33ed92b8
  Author: Richard Henderson <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/mem_helper.c

  Log Message:
  -----------
  target-s390: Fix STURA

We were storing 16 bits instead of 32.

Signed-off-by: Richard Henderson <address@hidden>


  Commit: 9c3fd85b142f244ac1900b9da02f2d733d03c1b1
      
https://github.com/qemu/qemu/commit/9c3fd85b142f244ac1900b9da02f2d733d03c1b1
  Author: Richard Henderson <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/helper.h
    M target-s390x/insn-data.def
    M target-s390x/mem_helper.c
    M target-s390x/translate.c

  Log Message:
  -----------
  target-s390: Implement LURA, LURAG, STURG

Signed-off-by: Richard Henderson <address@hidden>


  Commit: 0774710f1bd052b05cc68ca3af06d8fc1a65664b
      
https://github.com/qemu/qemu/commit/0774710f1bd052b05cc68ca3af06d8fc1a65664b
  Author: Richard Henderson <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/insn-data.def
    M target-s390x/translate.c

  Log Message:
  -----------
  target-s390: Implement ECAG

Signed-off-by: Richard Henderson <address@hidden>


  Commit: 8841d9dfc7f871cec7c3401a8a2d31ad34e881f7
      
https://github.com/qemu/qemu/commit/8841d9dfc7f871cec7c3401a8a2d31ad34e881f7
  Author: Peter Maydell <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/translate.c

  Log Message:
  -----------
  target-s390x: Mark check_privileged() as !CONFIG_USER_ONLY

The function check_privileged() is only used in the softmmu configs;
wrap it in an #ifndef CONFIG_USER_ONLY to avoid clang warnings on the
linux-user builds.

[rth: Remove inline marker too; it was only there to prevent exactly
this warning in GCC.]

Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Stefan Weil <address@hidden>
Message-id: address@hidden
Signed-off-by: Richard Henderson <address@hidden>


  Commit: 5b279407704613dbee8bc0866817bf7006b487a5
      
https://github.com/qemu/qemu/commit/5b279407704613dbee8bc0866817bf7006b487a5
  Author: Peter Maydell <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M disas/s390.c

  Log Message:
  -----------
  disas/s390.c: Remove unused variables

The variables s390_opformats and s390_num_opformats are unused and
provoke clang warnings:

disas/s390.c:849:33: warning: variable 's390_opformats' is not needed and will 
not be emitted [-Wunneeded-internal-declaration]
static const struct s390_opcode s390_opformats[] =
                          ^
disas/s390.c:875:18: warning: unused variable 's390_num_opformats' 
[-Wunused-const-variable]
static const int s390_num_opformats =
           ^

Delete them, since QEMU doesn't use them.

Signed-off-by: Peter Maydell <address@hidden>
Reviewed-by: Stefan Weil <address@hidden>
Message-id: address@hidden
Signed-off-by: Richard Henderson <address@hidden>


  Commit: 8cf02f93dc37bc3de30dfb74eb0e904d1700dbf6
      
https://github.com/qemu/qemu/commit/8cf02f93dc37bc3de30dfb74eb0e904d1700dbf6
  Author: Paolo Bonzini <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/mem_helper.c

  Log Message:
  -----------
  target-s390x: support OC and NC in the EX instruction

This is needed to run the GMP testsuite.

Reported-by: Torbjorn Granlund <address@hidden>
Tested-by: Torbjorn Granlund <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>


  Commit: 9ef1473693a1400a903567489d3122fc9511765d
      
https://github.com/qemu/qemu/commit/9ef1473693a1400a903567489d3122fc9511765d
  Author: Torbjorn Granlund <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M target-s390x/cc_helper.c

  Log Message:
  -----------
  target-s390x: fix and optimize slb* and slbg* computation of carry/borrow flag

This patch fixes the bug with borrow_in being set incorrectly, but it
also simplifies the logic to be much more plain, improving speed.  It
fixes both the 32-bit SLB* and 64-bit SLBG*.

The SLBG* change has been well-tested.  I haven't tested the SLB* change
explicitly, but the code was copy-pasted from the tested code.

The error of these functions' current implementations would not likely
be triggered by compiler-generated code, since the only error was in the
state of the carry/borrow flag.  Compilers rarely generate an
instruction sequence such as carry-set -> carry-set-and-use ->
carry-use.

(With Paolo's fix and mine, there are still a couple of failures from
GMP's testsuite, but they are almost surely due to incorrect code
generation from gcc 4.9.  But since this gcc is running under qemu, it
might be qemu bugs.  I intend to investigate this.)

Signed-off-by: Torbjorn Granlund <address@hidden>
Signed-off-by: Paolo Bonzini <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>


  Commit: ec6f25e788ef57ce1e9f734984ef8885172fd9e2
      
https://github.com/qemu/qemu/commit/ec6f25e788ef57ce1e9f734984ef8885172fd9e2
  Author: Peter Maydell <address@hidden>
  Date:   2015-02-03 (Tue, 03 Feb 2015)

  Changed paths:
    M disas/s390.c
    M target-s390x/cc_helper.c
    M target-s390x/cpu.h
    M target-s390x/helper.h
    M target-s390x/insn-data.def
    M target-s390x/mem_helper.c
    M target-s390x/translate.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/rth/tags/pull-tg-s390-20150203' into 
staging

s390 translator bug fixes

# gpg: Signature made Tue 03 Feb 2015 20:39:15 GMT using RSA key ID 4DD0279B
# gpg: Good signature from "Richard Henderson <address@hidden>"
# gpg:                 aka "Richard Henderson <address@hidden>"
# gpg:                 aka "Richard Henderson <address@hidden>"

* remotes/rth/tags/pull-tg-s390-20150203:
  target-s390x: fix and optimize slb* and slbg* computation of carry/borrow flag
  target-s390x: support OC and NC in the EX instruction
  disas/s390.c: Remove unused variables
  target-s390x: Mark check_privileged() as !CONFIG_USER_ONLY
  target-s390: Implement ECAG
  target-s390: Implement LURA, LURAG, STURG
  target-s390: Fix STURA
  target-s390: Fix STIDP
  target-s390: Implement EPSW
  target-s390: Implement SAM specification exception

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


Compare: https://github.com/qemu/qemu/compare/007c99fd0fb4...ec6f25e788ef

reply via email to

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