qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [COMMIT ab101c2] Fix compiler warnings in nwfpe code.


From: Anthony Liguori
Subject: [Qemu-commits] [COMMIT ab101c2] Fix compiler warnings in nwfpe code.
Date: Mon, 04 May 2009 14:22:22 -0000

From: Paul Brook <address@hidden>

Signed-off-by: Paul Brook <address@hidden>

diff --git a/linux-user/arm/nwfpe/fpa11.c b/linux-user/arm/nwfpe/fpa11.c
index eb006f0..67e65e5 100644
--- a/linux-user/arm/nwfpe/fpa11.c
+++ b/linux-user/arm/nwfpe/fpa11.c
@@ -30,11 +30,6 @@
 
 #include <stdio.h>
 
-/* forward declarations */
-unsigned int EmulateCPDO(const unsigned int);
-unsigned int EmulateCPDT(const unsigned int);
-unsigned int EmulateCPRT(const unsigned int);
-
 FPA11* qemufpa=0;
 CPUARMState* user_registers;
 
diff --git a/linux-user/arm/nwfpe/fpa11.h b/linux-user/arm/nwfpe/fpa11.h
index 4fc0b3b..0328701 100644
--- a/linux-user/arm/nwfpe/fpa11.h
+++ b/linux-user/arm/nwfpe/fpa11.h
@@ -116,6 +116,15 @@ static inline void writeConditionCodes(unsigned int x)
 
 unsigned int EmulateAll(unsigned int opcode, FPA11* qfpa, CPUARMState* qregs);
 
+unsigned int EmulateCPDO(const unsigned int);
+unsigned int EmulateCPDT(const unsigned int);
+unsigned int EmulateCPRT(const unsigned int);
+
+unsigned int SingleCPDO(const unsigned int opcode);
+unsigned int DoubleCPDO(const unsigned int opcode);
+unsigned int ExtendedCPDO(const unsigned int opcode);
+
+
 /* included only for get_user/put_user macros */
 #include "qemu.h"
 
diff --git a/linux-user/arm/nwfpe/fpa11_cpdo.c 
b/linux-user/arm/nwfpe/fpa11_cpdo.c
index 7779637..6669112 100644
--- a/linux-user/arm/nwfpe/fpa11_cpdo.c
+++ b/linux-user/arm/nwfpe/fpa11_cpdo.c
@@ -22,10 +22,6 @@
 #include "fpa11.h"
 #include "fpopcode.h"
 
-unsigned int SingleCPDO(const unsigned int opcode);
-unsigned int DoubleCPDO(const unsigned int opcode);
-unsigned int ExtendedCPDO(const unsigned int opcode);
-
 unsigned int EmulateCPDO(const unsigned int opcode)
 {
    FPA11 *fpa11 = GET_FPA11();
diff --git a/linux-user/arm/nwfpe/fpa11_cpdt.c 
b/linux-user/arm/nwfpe/fpa11_cpdt.c
index 41877df..76c6dcf 100644
--- a/linux-user/arm/nwfpe/fpa11_cpdt.c
+++ b/linux-user/arm/nwfpe/fpa11_cpdt.c
@@ -29,9 +29,8 @@
 //#include <asm/uaccess.h>
 
 static inline
-void loadSingle(const unsigned int Fn,const unsigned int *pMem)
+void loadSingle(const unsigned int Fn, target_ulong addr)
 {
-   target_ulong addr = (target_ulong)(long)pMem;
    FPA11 *fpa11 = GET_FPA11();
    fpa11->fType[Fn] = typeSingle;
    /* FIXME - handle failure of get_user() */
@@ -39,9 +38,8 @@ void loadSingle(const unsigned int Fn,const unsigned int 
*pMem)
 }
 
 static inline
-void loadDouble(const unsigned int Fn,const unsigned int *pMem)
+void loadDouble(const unsigned int Fn, target_ulong addr)
 {
-   target_ulong addr = (target_ulong)(long)pMem;
    FPA11 *fpa11 = GET_FPA11();
    unsigned int *p;
    p = (unsigned int*)&fpa11->fpreg[Fn].fDouble;
@@ -58,9 +56,8 @@ void loadDouble(const unsigned int Fn,const unsigned int 
*pMem)
 }
 
 static inline
-void loadExtended(const unsigned int Fn,const unsigned int *pMem)
+void loadExtended(const unsigned int Fn, target_ulong addr)
 {
-   target_ulong addr = (target_ulong)(long)pMem;
    FPA11 *fpa11 = GET_FPA11();
    unsigned int *p;
    p = (unsigned int*)&fpa11->fpreg[Fn].fExtended;
@@ -72,9 +69,8 @@ void loadExtended(const unsigned int Fn,const unsigned int 
*pMem)
 }
 
 static inline
-void loadMultiple(const unsigned int Fn,const unsigned int *pMem)
+void loadMultiple(const unsigned int Fn, target_ulong addr)
 {
-   target_ulong addr = (target_ulong)(long)pMem;
    FPA11 *fpa11 = GET_FPA11();
    register unsigned int *p;
    unsigned long x;
@@ -108,9 +104,8 @@ void loadMultiple(const unsigned int Fn,const unsigned int 
*pMem)
 }
 
 static inline
-void storeSingle(const unsigned int Fn,unsigned int *pMem)
+void storeSingle(const unsigned int Fn, target_ulong addr)
 {
-   target_ulong addr = (target_ulong)(long)pMem;
    FPA11 *fpa11 = GET_FPA11();
    float32 val;
    register unsigned int *p = (unsigned int*)&val;
@@ -133,9 +128,8 @@ void storeSingle(const unsigned int Fn,unsigned int *pMem)
 }
 
 static inline
-void storeDouble(const unsigned int Fn,unsigned int *pMem)
+void storeDouble(const unsigned int Fn, target_ulong addr)
 {
-   target_ulong addr = (target_ulong)(long)pMem;
    FPA11 *fpa11 = GET_FPA11();
    float64 val;
    register unsigned int *p = (unsigned int*)&val;
@@ -163,9 +157,8 @@ void storeDouble(const unsigned int Fn,unsigned int *pMem)
 }
 
 static inline
-void storeExtended(const unsigned int Fn,unsigned int *pMem)
+void storeExtended(const unsigned int Fn, target_ulong addr)
 {
-   target_ulong addr = (target_ulong)(long)pMem;
    FPA11 *fpa11 = GET_FPA11();
    floatx80 val;
    register unsigned int *p = (unsigned int*)&val;
@@ -190,9 +183,8 @@ void storeExtended(const unsigned int Fn,unsigned int *pMem)
 }
 
 static inline
-void storeMultiple(const unsigned int Fn,unsigned int *pMem)
+void storeMultiple(const unsigned int Fn, target_ulong addr)
 {
-   target_ulong addr = (target_ulong)(long)pMem;
    FPA11 *fpa11 = GET_FPA11();
    register unsigned int nType, *p;
 
@@ -220,25 +212,26 @@ void storeMultiple(const unsigned int Fn,unsigned int 
*pMem)
    }
 }
 
-unsigned int PerformLDF(const unsigned int opcode)
+static unsigned int PerformLDF(const unsigned int opcode)
 {
-   unsigned int *pBase, *pAddress, *pFinal, nRc = 1,
+    target_ulong pBase, pAddress, pFinal;
+    unsigned int nRc = 1,
      write_back = WRITE_BACK(opcode);
 
    //printk("PerformLDF(0x%08x), Fd = 0x%08x\n",opcode,getFd(opcode));
 
-   pBase = (unsigned int*)readRegister(getRn(opcode));
+   pBase = readRegister(getRn(opcode));
    if (REG_PC == getRn(opcode))
    {
-     pBase += 2;
+     pBase += 8;
      write_back = 0;
    }
 
    pFinal = pBase;
    if (BIT_UP_SET(opcode))
-     pFinal += getOffset(opcode);
+     pFinal += getOffset(opcode) * 4;
    else
-     pFinal -= getOffset(opcode);
+     pFinal -= getOffset(opcode) * 4;
 
    if (PREINDEXED(opcode)) pAddress = pFinal; else pAddress = pBase;
 
@@ -254,26 +247,27 @@ unsigned int PerformLDF(const unsigned int opcode)
    return nRc;
 }
 
-unsigned int PerformSTF(const unsigned int opcode)
+static unsigned int PerformSTF(const unsigned int opcode)
 {
-   unsigned int *pBase, *pAddress, *pFinal, nRc = 1,
+   target_ulong pBase, pAddress, pFinal;
+   unsigned int nRc = 1,
      write_back = WRITE_BACK(opcode);
 
    //printk("PerformSTF(0x%08x), Fd = 0x%08x\n",opcode,getFd(opcode));
    SetRoundingMode(ROUND_TO_NEAREST);
 
-   pBase = (unsigned int*)readRegister(getRn(opcode));
+   pBase = readRegister(getRn(opcode));
    if (REG_PC == getRn(opcode))
    {
-     pBase += 2;
+     pBase += 8;
      write_back = 0;
    }
 
    pFinal = pBase;
    if (BIT_UP_SET(opcode))
-     pFinal += getOffset(opcode);
+     pFinal += getOffset(opcode) * 4;
    else
-     pFinal -= getOffset(opcode);
+     pFinal -= getOffset(opcode) * 4;
 
    if (PREINDEXED(opcode)) pAddress = pFinal; else pAddress = pBase;
 
@@ -289,23 +283,24 @@ unsigned int PerformSTF(const unsigned int opcode)
    return nRc;
 }
 
-unsigned int PerformLFM(const unsigned int opcode)
+static unsigned int PerformLFM(const unsigned int opcode)
 {
-   unsigned int i, Fd, *pBase, *pAddress, *pFinal,
+   unsigned int i, Fd,
      write_back = WRITE_BACK(opcode);
+   target_ulong pBase, pAddress, pFinal;
 
-   pBase = (unsigned int*)readRegister(getRn(opcode));
+   pBase = readRegister(getRn(opcode));
    if (REG_PC == getRn(opcode))
    {
-     pBase += 2;
+     pBase += 8;
      write_back = 0;
    }
 
    pFinal = pBase;
    if (BIT_UP_SET(opcode))
-     pFinal += getOffset(opcode);
+     pFinal += getOffset(opcode) * 4;
    else
-     pFinal -= getOffset(opcode);
+     pFinal -= getOffset(opcode) * 4;
 
    if (PREINDEXED(opcode)) pAddress = pFinal; else pAddress = pBase;
 
@@ -313,7 +308,7 @@ unsigned int PerformLFM(const unsigned int opcode)
    for (i=getRegisterCount(opcode);i>0;i--)
    {
      loadMultiple(Fd,pAddress);
-     pAddress += 3; Fd++;
+     pAddress += 12; Fd++;
      if (Fd == 8) Fd = 0;
    }
 
@@ -321,23 +316,24 @@ unsigned int PerformLFM(const unsigned int opcode)
    return 1;
 }
 
-unsigned int PerformSFM(const unsigned int opcode)
+static unsigned int PerformSFM(const unsigned int opcode)
 {
-   unsigned int i, Fd, *pBase, *pAddress, *pFinal,
+   unsigned int i, Fd,
      write_back = WRITE_BACK(opcode);
+   target_ulong pBase, pAddress, pFinal;
 
-   pBase = (unsigned int*)readRegister(getRn(opcode));
+   pBase = readRegister(getRn(opcode));
    if (REG_PC == getRn(opcode))
    {
-     pBase += 2;
+     pBase += 8;
      write_back = 0;
    }
 
    pFinal = pBase;
    if (BIT_UP_SET(opcode))
-     pFinal += getOffset(opcode);
+     pFinal += getOffset(opcode) * 4;
    else
-     pFinal -= getOffset(opcode);
+     pFinal -= getOffset(opcode) * 4;
 
    if (PREINDEXED(opcode)) pAddress = pFinal; else pAddress = pBase;
 
@@ -345,7 +341,7 @@ unsigned int PerformSFM(const unsigned int opcode)
    for (i=getRegisterCount(opcode);i>0;i--)
    {
      storeMultiple(Fd,pAddress);
-     pAddress += 3; Fd++;
+     pAddress += 12; Fd++;
      if (Fd == 8) Fd = 0;
    }
 
diff --git a/linux-user/arm/nwfpe/fpopcode.c b/linux-user/arm/nwfpe/fpopcode.c
index a733a1d..1e07e60 100644
--- a/linux-user/arm/nwfpe/fpopcode.c
+++ b/linux-user/arm/nwfpe/fpopcode.c
@@ -59,21 +59,6 @@ const float32 float32Constant[] = {
   0x41200000                           /* single 10.0 */
 };
 
-unsigned int getTransferLength(const unsigned int opcode)
-{
-  unsigned int nRc;
-
-  switch (opcode & MASK_TRANSFER_LENGTH)
-  {
-    case 0x00000000: nRc = 1; break; /* single precision */
-    case 0x00008000: nRc = 2; break; /* double precision */
-    case 0x00400000: nRc = 3; break; /* extended precision */
-    default: nRc = 0;
-  }
-
-  return(nRc);
-}
-
 unsigned int getRegisterCount(const unsigned int opcode)
 {
   unsigned int nRc;
@@ -90,21 +75,6 @@ unsigned int getRegisterCount(const unsigned int opcode)
   return(nRc);
 }
 
-unsigned int getRoundingPrecision(const unsigned int opcode)
-{
-  unsigned int nRc;
-
-  switch (opcode & MASK_ROUNDING_PRECISION)
-  {
-    case 0x00000000: nRc = 1; break;
-    case 0x00000080: nRc = 2; break;
-    case 0x00080000: nRc = 3; break;
-    default: nRc = 0;
-  }
-
-  return(nRc);
-}
-
 unsigned int getDestinationSize(const unsigned int opcode)
 {
   unsigned int nRc;
@@ -141,8 +111,3 @@ static const unsigned short aCC[16] = {
     0xFFFF, // AL always
     0 // NV
 };
-
-unsigned int checkCondition(const unsigned int opcode, const unsigned int 
ccodes)
-{
-  return (aCC[opcode>>28] >> (ccodes>>28)) & 1;
-}




reply via email to

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