[pypy-commit] pypy stm: Shut off spurious warnings.

arigo noreply at buildbot.pypy.org
Fri Jan 20 10:03:08 CET 2012


Author: Armin Rigo <arigo at tunes.org>
Branch: stm
Changeset: r51511:08154d958352
Date: 2012-01-19 23:17 +0100
http://bitbucket.org/pypy/pypy/changeset/08154d958352/

Log:	Shut off spurious warnings.

diff --git a/pypy/translator/stm/src_stm/et.c b/pypy/translator/stm/src_stm/et.c
--- a/pypy/translator/stm/src_stm/et.c
+++ b/pypy/translator/stm/src_stm/et.c
@@ -861,19 +861,19 @@
 }
 
 // XXX little-endian only!
-unsigned long stm_read_partial_word(int fieldsize, char *addr)
+unsigned long stm_read_partial_word(int fieldsize, void *addr)
 {
   int misalignment = ((long)addr) & (sizeof(void*)-1);
-  long *p = (long*)(addr - misalignment);
+  long *p = (long*)((char *)addr - misalignment);
   unsigned long word = stm_read_word(p);
   return word >> (misalignment * 8);
 }
 
 // XXX little-endian only!
-void stm_write_partial_word(int fieldsize, char *addr, unsigned long nval)
+void stm_write_partial_word(int fieldsize, void *addr, unsigned long nval)
 {
   int misalignment = ((long)addr) & (sizeof(void*)-1);
-  long *p = (long*)(addr - misalignment);
+  long *p = (long*)((char *)addr - misalignment);
   long val = nval << (misalignment * 8);
   long word = stm_read_word(p);
   long mask = ((1L << (fieldsize * 8)) - 1) << (misalignment * 8);
@@ -951,7 +951,7 @@
 #if PYPY_LONG_BIT == 32
   stm_write_word(addr, ii);         /* 32 bits */
 #else
-  stm_write_partial_word(4, (char *)addr, ii);   /* 64 bits */
+  stm_write_partial_word(4, addr, ii);   /* 64 bits */
 #endif
 }
 
diff --git a/pypy/translator/stm/src_stm/et.h b/pypy/translator/stm/src_stm/et.h
--- a/pypy/translator/stm/src_stm/et.h
+++ b/pypy/translator/stm/src_stm/et.h
@@ -58,8 +58,8 @@
            (long*)(((char*)(base)) + ((offset) & ~(sizeof(void*)-1))))  \
         >> (8 * ((offset) & (sizeof(void*)-1))))
 
-unsigned long stm_read_partial_word(int fieldsize, char *addr);
-void stm_write_partial_word(int fieldsize, char *addr, unsigned long nval);
+unsigned long stm_read_partial_word(int fieldsize, void *addr);
+void stm_write_partial_word(int fieldsize, void *addr, unsigned long nval);
 
 double stm_read_double(long *addr);
 void stm_write_double(long *addr, double val);


More information about the pypy-commit mailing list