Add cache flushing routine for sun compiler on sparc solaris 2.8

This commit is contained in:
Anthony Green
2013-02-07 18:00:36 -05:00
parent ed6ae9501b
commit fd07c9e404
5 changed files with 51 additions and 6 deletions

View File

@@ -1,5 +1,6 @@
/* -----------------------------------------------------------------------
v8.S - Copyright (c) 1996, 1997, 2003, 2004, 2008 Red Hat, Inc.
v8.S - Copyright (c) 2013 The Written Word, Inc.
Copyright (c) 1996, 1997, 2003, 2004, 2008 Red Hat, Inc.
SPARC Foreign Function Interface
@@ -31,11 +32,35 @@
#define STACKFRAME 96 /* Minimum stack framesize for SPARC */
#define ARGS (64+4) /* Offset of register area in frame */
#ifndef __GNUC__
.text
.align 8
.globl ffi_flush_icache
.globl _ffi_flush_icache
ffi_flush_icache:
_ffi_flush_icache:
add %o0, %o1, %o2
1: iflush %o0
add %o0, 8, %o0
cmp %o0, %o2
blt 1b
nop
nop
nop
nop
nop
retl
nop
.ffi_flush_icache_end:
.size ffi_flush_icache,.ffi_flush_icache_end-ffi_flush_icache
.text
.align 8
.globl ffi_call_v8
.globl _ffi_call_v8
#endif
ffi_call_v8:
_ffi_call_v8:
.LLFB1: