Search
lxdream.org :: lxdream/src/sh4/xltcache.c :: diff
lxdream 0.9.1
released Jun 29
Download Now
filename src/sh4/xltcache.c
changeset 905:4c17ebd9ef5e
prev901:32c5cf5e206f
next922:8a8361264b1e
author nkeynes
date Wed Oct 29 23:51:58 2008 +0000 (15 years ago)
permissions -rw-r--r--
last change Use regparam calling conventions for all functions called from translated code,
along with a few other high-use functions. Can probably extend this to all functions,
but as it is this is a nice performance boost
file annotate diff log raw
1.1 --- a/src/sh4/xltcache.c Sun Oct 26 02:28:29 2008 +0000
1.2 +++ b/src/sh4/xltcache.c Wed Oct 29 23:51:58 2008 +0000
1.3 @@ -129,7 +129,7 @@
1.4 }
1.5 }
1.6
1.7 -void xlat_invalidate_word( sh4addr_t addr )
1.8 +void FASTCALL xlat_invalidate_word( sh4addr_t addr )
1.9 {
1.10 if( xlat_lut ) {
1.11 void **page = xlat_lut[XLAT_LUT_PAGE(addr)];
1.12 @@ -142,7 +142,7 @@
1.13 }
1.14 }
1.15
1.16 -void xlat_invalidate_long( sh4addr_t addr )
1.17 +void FASTCALL xlat_invalidate_long( sh4addr_t addr )
1.18 {
1.19 if( xlat_lut ) {
1.20 void **page = xlat_lut[XLAT_LUT_PAGE(addr)];
1.21 @@ -155,7 +155,7 @@
1.22 }
1.23 }
1.24
1.25 -void xlat_invalidate_block( sh4addr_t address, size_t size )
1.26 +void FASTCALL xlat_invalidate_block( sh4addr_t address, size_t size )
1.27 {
1.28 int i;
1.29 int entry_count = size >> 1; // words;
1.30 @@ -189,7 +189,7 @@
1.31 }
1.32 }
1.33
1.34 -void xlat_flush_page( sh4addr_t address )
1.35 +void FASTCALL xlat_flush_page( sh4addr_t address )
1.36 {
1.37 void **page = xlat_lut[XLAT_LUT_PAGE(address)];
1.38 if( page != NULL ) {
1.39 @@ -197,7 +197,7 @@
1.40 }
1.41 }
1.42
1.43 -void *xlat_get_code( sh4addr_t address )
1.44 +void * FASTCALL xlat_get_code( sh4addr_t address )
1.45 {
1.46 void *result = NULL;
1.47 void **page = xlat_lut[XLAT_LUT_PAGE(address)];
1.48 @@ -248,7 +248,7 @@
1.49 return NULL;
1.50 }
1.51
1.52 -void **xlat_get_lut_entry( sh4addr_t address )
1.53 +void ** FASTCALL xlat_get_lut_entry( sh4addr_t address )
1.54 {
1.55 void **page = xlat_lut[XLAT_LUT_PAGE(address)];
1.56
1.57 @@ -265,13 +265,13 @@
1.58
1.59
1.60
1.61 -uint32_t xlat_get_block_size( void *block )
1.62 +uint32_t FASTCALL xlat_get_block_size( void *block )
1.63 {
1.64 xlat_cache_block_t xlt = (xlat_cache_block_t)(((char *)block)-sizeof(struct xlat_cache_block));
1.65 return xlt->size;
1.66 }
1.67
1.68 -uint32_t xlat_get_code_size( void *block )
1.69 +uint32_t FASTCALL xlat_get_code_size( void *block )
1.70 {
1.71 xlat_cache_block_t xlt = (xlat_cache_block_t)(((char *)block)-sizeof(struct xlat_cache_block));
1.72 if( xlt->recover_table_offset == 0 ) {
.