]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
ffi.c (flush_icache): Fix left-over from previous patch.
authorAlexandre Oliva <aoliva@redhat.com>
Thu, 8 Mar 2007 11:06:41 +0000 (11:06 +0000)
committerAlexandre Oliva <aoliva@gcc.gnu.org>
Thu, 8 Mar 2007 11:06:41 +0000 (11:06 +0000)
* src/powerpc/ffi.c (flush_icache): Fix left-over from previous
patch.
(ffi_prep_closure_loc): Remove unneeded casts.  Add needed ones.

From-SVN: r122692

libffi/ChangeLog
libffi/src/powerpc/ffi.c

index 7118b67869590f58a8eb70b385d15a8b9a220572..ecd75cf978a5297cd24c4b5340c26d2e2b58864b 100644 (file)
@@ -1,3 +1,9 @@
+2007-03-08  Alexandre Oliva  <aoliva@redhat.com>
+
+       * src/powerpc/ffi.c (flush_icache): Fix left-over from previous
+       patch.
+       (ffi_prep_closure_loc): Remove unneeded casts.  Add needed ones.
+
 2007-03-07  Alexandre Oliva  <aoliva@redhat.com>
 
        * include/ffi.h.in (ffi_closure_alloc, ffi_closure_free): New.
index 8c30c64fd750662f306fe127465953e15d936a65..fe5550d5889fcc698bddd7bbaac0299ab2387d85 100644 (file)
@@ -839,11 +839,8 @@ flush_icache (char *wraddr, char *xaddr, int size)
 {
   int i;
   for (i = 0; i < size; i += MIN_CACHE_LINE_SIZE)
-    {
-      addr = addr1 + i;
-      __asm__ volatile ("icbi 0,%0;" "dcbf 0,%1;"
-                       : : "r" (xaddr + i), "r" (wraddr + i) : "memory");
-    }
+    __asm__ volatile ("icbi 0,%0;" "dcbf 0,%1;"
+                     : : "r" (xaddr + i), "r" (wraddr + i) : "memory");
   __asm__ volatile ("icbi 0,%0;" "dcbf 0,%1;" "sync;" "isync;"
                    : : "r"(xaddr + size - 1), "r"(wraddr + size - 1)
                    : "memory");
@@ -863,7 +860,7 @@ ffi_prep_closure_loc (ffi_closure *closure,
   FFI_ASSERT (cif->abi == FFI_LINUX64);
   /* Copy function address and TOC from ffi_closure_LINUX64.  */
   memcpy (tramp, (char *) ffi_closure_LINUX64, 16);
-  tramp[2] = (void *) codeloc;
+  tramp[2] = codeloc;
 #else
   unsigned int *tramp;
 
@@ -879,10 +876,10 @@ ffi_prep_closure_loc (ffi_closure *closure,
   tramp[8] = 0x7c0903a6;  /*   mtctr   r0 */
   tramp[9] = 0x4e800420;  /*   bctr */
   *(void **) &tramp[2] = (void *) ffi_closure_SYSV; /* function */
-  *(void **) &tramp[3] = (void *) codeloc;          /* context */
+  *(void **) &tramp[3] = codeloc;                   /* context */
 
   /* Flush the icache.  */
-  flush_icache (tramp, codeloc, FFI_TRAMPOLINE_SIZE);
+  flush_icache ((char *)tramp, (char *)codeloc, FFI_TRAMPOLINE_SIZE);
 #endif
 
   closure->cif = cif;