mirror of
https://github.com/tobast/libunwind-eh_elf.git
synced 2024-12-23 12:03:41 +01:00
If we have it, include <ia64intrin.h>.
(flush_cache): Moved to flush-cache.S. (Logical change 1.68)
This commit is contained in:
parent
bf2a805be2
commit
b0d98c76e4
1 changed files with 5 additions and 14 deletions
|
@ -8,6 +8,10 @@
|
|||
|
||||
#include <sys/mman.h>
|
||||
|
||||
#ifdef HAVE_IA64INTRIN_H
|
||||
# include <ia64intrin.h>
|
||||
#endif
|
||||
|
||||
int verbose;
|
||||
|
||||
#ifdef __ia64__
|
||||
|
@ -20,20 +24,7 @@ int verbose;
|
|||
# define EXTRA 0
|
||||
#endif
|
||||
|
||||
static void
|
||||
flush_cache (void *addr, size_t len)
|
||||
{
|
||||
#ifdef __ia64__
|
||||
void *end = (char *) addr + len;
|
||||
|
||||
while (addr < end)
|
||||
{
|
||||
asm volatile ("fc %0" :: "r"(addr));
|
||||
addr = (char *) addr + 32;
|
||||
}
|
||||
asm volatile (";;sync.i;;srlz.i;;");
|
||||
#endif
|
||||
}
|
||||
extern void flush_cache (void *addr, size_t len);
|
||||
|
||||
int
|
||||
make_executable (void *addr, size_t len)
|
||||
|
|
Loading…
Reference in a new issue