SPARC: Fix 32 bit register window flushing endian conversion.
authorGabe Black <gblack@eecs.umich.edu>
Fri, 30 Nov 2007 04:20:18 +0000 (20:20 -0800)
committerGabe Black <gblack@eecs.umich.edu>
Fri, 30 Nov 2007 04:20:18 +0000 (20:20 -0800)
--HG--
extra : convert_revision : be91d6fecb44a85e983343704a098b456948af8a

src/arch/sparc/process.cc

index d682b976984fa58087cfb98cdc394baf907bc9a3..6e490e05eb8ac6919e098e28f9b5fa7370fde73f 100644 (file)
@@ -453,7 +453,7 @@ void Sparc32LiveProcess::flushWindows(ThreadContext *tc)
             //Do the stores
             IntReg sp = tc->readIntReg(StackPointerReg);
             for (int index = 16; index < 32; index++) {
-                IntReg regVal = tc->readIntReg(index);
+                uint32_t regVal = tc->readIntReg(index);
                 regVal = htog(regVal);
                 if (!tc->getMemPort()->tryWriteBlob(
                         sp + (index - 16) * 4, (uint8_t *)&regVal, 4)) {