Skip to content
Snippets Groups Projects
  1. Sep 17, 2020
  2. Aug 21, 2019
    • Paul A. Clarke's avatar
      ppc: Add support for 'mffsl' instruction · 31eb7ddd
      Paul A. Clarke authored
      
      ISA 3.0B added a set of Floating-Point Status and Control Register (FPSCR)
      instructions: mffsce, mffscdrn, mffscdrni, mffscrn, mffscrni, mffsl.
      This patch adds support for 'mffsl'.
      
      'mffsl' is identical to 'mffs', except it only returns mode, status, and enable
      bits from the FPSCR.
      
      On CPUs without support for 'mffsl' (below ISA 3.0), the 'mffsl' instruction
      will execute identically to 'mffs'.
      
      Note: I renamed FPSCR_RN to FPSCR_RN0 so I could create an FPSCR_RN mask which
      is both bits of the FPSCR rounding mode, as defined in the ISA.
      
      I also fixed a typo in the definition of FPSCR_FR.
      
      Signed-off-by: default avatarPaul A. Clarke <pc@us.ibm.com>
      
      v4:
      - nit: added some braces to resolve a checkpatch complaint.
      
      v3:
      - Changed tcg_gen_and_i64 to tcg_gen_andi_i64, eliminating the need for a
        temporary, per review from Richard Henderson.
      
      v2:
      - I found that I copied too much of the 'mffs' implementation.
        The 'Rc' condition code bits are not needed for 'mffsl'.  Removed.
      - I now free the (renamed) 'tmask' temporary.
      - I now bail early for older ISA to the original 'mffs' implementation.
      
      Message-Id: <1565982203-11048-1-git-send-email-pc@us.ibm.com>
      Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
      31eb7ddd
  3. Apr 18, 2019
  4. Dec 20, 2018
    • Suraj Jitindar Singh's avatar
      target/ppc: tcg: Implement addex instruction · 4c5920af
      Suraj Jitindar Singh authored
      
      Implement the addex instruction introduced in ISA V3.00 in qemu tcg.
      
      The add extended using alternate carry bit (addex) instruction performs
      the same operation as the add extended (adde) instruction, but using the
      overflow (ov) field in the fixed point exception register (xer) as the
      carry in and out instead of the carry (ca) field.
      
      The instruction has a Z23-form, not an XO form, as follows:
      
          ------------------------------------------------------------------
          |   31   |   RT   |   RA   |   RB   |   CY   |     170     |  0  |
          ------------------------------------------------------------------
          0        6        11       16       21       23            31    32
      
      However since the only valid form of the instruction defined so far is
      CY = 0, we can treat this like an XO form instruction.
      
      There is no dot form (addex.) of the instruction and the summary overflow
      (so) bit in the xer is not modified by this instruction.
      
      For simplicity we reuse the gen_op_arith_add function and add a function
      argument to specify where the carry in input should come from and the
      carry out output be stored (note must be the same location).
      
      Signed-off-by: default avatarSuraj Jitindar Singh <sjitindarsingh@gmail.com>
      Signed-off-by: default avatarDavid Gibson <david@gibson.dropbear.id.au>
      4c5920af
  5. Jan 30, 2017
  6. Jan 10, 2017
  7. Nov 14, 2016
  8. Jul 18, 2016
  9. Jan 29, 2016
    • Peter Maydell's avatar
      ppc: Clean up includes · 0d75590d
      Peter Maydell authored
      
      Clean up includes so that osdep.h is included first and headers
      which it implies are not included manually.
      
      This commit was created with scripts/clean-includes.
      
      Signed-off-by: default avatarPeter Maydell <peter.maydell@linaro.org>
      Message-id: 1453832250-766-6-git-send-email-peter.maydell@linaro.org
      0d75590d
  10. Sep 02, 2013
  11. Dec 19, 2012
  12. Apr 07, 2012
  13. Sep 12, 2009
  14. Jul 16, 2009
  15. Feb 09, 2009
  16. Jan 04, 2009
  17. Sep 16, 2007
  18. Jul 23, 2005
  19. Jul 03, 2005
  20. Jun 04, 2005
  21. Aug 25, 2004
  22. May 20, 2004
  23. Jun 26, 2003
  24. Apr 29, 2003
Loading