gcl-devel
[Top][All Lists]
Advanced

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

[Gcl-devel] Flushing the d-cache (was Re: BFD relocations)


From: Camm Maguire
Subject: [Gcl-devel] Flushing the d-cache (was Re: BFD relocations)
Date: 14 Jun 2002 11:51:38 -0400

Greetings!

Daniel Jacobowitz <address@hidden> writes:

> On Mon, Jun 10, 2002 at 06:35:02PM -0400, Camm Maguire wrote:
> > Greetings!  Thank you all once again.  To finalize this issue for gcl,
> > could you perhaps guide me as to the following:
> > 
> > 1) Is there a central place where I can find the analogous
> >    data-cache-flushing assembly instructions for the Debian supported
> >    architectures?  Barring that, decentralized places?
> 
> Glibc.  Under sysdeps/<arch>/.  Good luck.
> 

OK, here are two proposals -- comments from the experts most welcome!
These are basically working, but not completely yet, still get some
SIGILL's.

arm:

#define CLEAR_CACHE do {\
  void *v=memory->cfd.cfd_start,*ve=v+memory->cfd.cfd_size; \
  for (;v<ve;v+=16)   {   \
       register unsigned long _beg __asm ("a1") = (unsigned long)(v);   \
       register unsigned long _end __asm ("a2") = (unsigned long)(v+16);\
       register unsigned long _flg __asm ("a3") = 0;                    \
       __asm __volatile ("swi 0x9f0002          @ sys_cacheflush"       \
                    : /* no outputs */                                  \
                    : /* no inputs */                                   \
                    : "a1");                                            \
       }\
} while (0)


m68k:
#include <asm/cachectl.h>
#define CLEAR_CACHE do {\
        void *v=memory->cfd.cfd_start,*ve=v+memory->cfd.cfd_size; \
        for (;v<ve;v+=16)   \
                sys_cacheflush(v,FLUSH_SCOPE_LINE,FLUSH_CACHE_DATA,16);\
        } while(0)


> -- 
> Daniel Jacobowitz                           Carnegie Mellon University
> MontaVista Software                         Debian GNU/Linux Developer
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah



reply via email to

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