RPA Toolkit
used types cleaned up...
authorMartin Stoilov <martin@rpasearch.com>
Wed, 27 Jul 2011 04:34:06 +0000 (21:34 -0700)
committerMartin Stoilov <martin@rpasearch.com>
Wed, 27 Jul 2011 04:40:36 +0000 (21:40 -0700)
89 files changed:
arch/darwin/i386/rtypes.h
arch/linux/i386/rtypes.h
arch/linux/x86_64/rtypes.h
arch/windows/i386/rtypes.h
arch/windows/x64/rtypes.h
rjs/rjs.c
rlib/rlist.h
rlib/rmap.c
rlib/rmem.c
rlib/rstring.c
rlib/rstring.h
rpa/rpabitmap.c
rpa/rpabitmap.h
rpa/rparecord.h
rpa/rpastat.c
rpa/rpastat.h
rpa/rpavm.c
rvm/rvmcodegen.c
rvm/rvmcodemap.c
rvm/rvmcodemap.h
rvm/rvmcpu.c
rvm/rvmcpu.h
rvm/rvmoperator.c
rvm/rvmoperator.h
rvm/rvmoperatoradd.c
rvm/rvmoperatoradd.h
rvm/rvmoperatorand.c
rvm/rvmoperatorand.h
rvm/rvmoperatorbin.c
rvm/rvmoperatorbin.h
rvm/rvmoperatorcast.c
rvm/rvmoperatorcast.h
rvm/rvmoperatorcat.h
rvm/rvmoperatorcmn.c
rvm/rvmoperatorcmn.h
rvm/rvmoperatorcmp.c
rvm/rvmoperatorcmp.h
rvm/rvmoperatordiv.c
rvm/rvmoperatordiv.h
rvm/rvmoperatoreq.c
rvm/rvmoperatoreq.h
rvm/rvmoperatorgreater.c
rvm/rvmoperatorgreater.h
rvm/rvmoperatorgreatereq.c
rvm/rvmoperatorgreatereq.h
rvm/rvmoperatorless.c
rvm/rvmoperatorless.h
rvm/rvmoperatorlesseq.c
rvm/rvmoperatorlesseq.h
rvm/rvmoperatorlogicand.c
rvm/rvmoperatorlogicand.h
rvm/rvmoperatorlogicnot.c
rvm/rvmoperatorlogicor.c
rvm/rvmoperatorlogicor.h
rvm/rvmoperatorlsl.c
rvm/rvmoperatorlsl.h
rvm/rvmoperatorlsr.c
rvm/rvmoperatorlsr.h
rvm/rvmoperatorlsru.c
rvm/rvmoperatorlsru.h
rvm/rvmoperatormod.c
rvm/rvmoperatormod.h
rvm/rvmoperatormul.c
rvm/rvmoperatormul.h
rvm/rvmoperatornot.c
rvm/rvmoperatornoteq.c
rvm/rvmoperatornoteq.h
rvm/rvmoperatoror.c
rvm/rvmoperatoror.h
rvm/rvmoperatorsub.c
rvm/rvmoperatorsub.h
rvm/rvmoperatorxor.c
rvm/rvmoperatorxor.h
rvm/rvmreg.c
rvm/rvmreg.h
rvm/rvmrelocmap.c
tests/testmisc/asm-adds.c
tests/testmisc/asm-cast.c
tests/testmisc/asm-clz.c
tests/testmisc/asm-loadstore.c
tests/testmisc/asm-shiftops.c
tests/testmisc/codegen-test.c
tests/testmisc/funcarg-test.c
tests/testmisc/rharray-test.c
tests/testmisc/rpagen-test.c
tests/testmisc/rvm-test.c
tests/testmisc/string-test.c
tests/testrjs/rjs-args.c
tests/testrjs/rjs-simple.c

index bee9d5b..f45a866 100644 (file)
@@ -14,8 +14,8 @@ typedef unsigned int ruint32;
 typedef signed long long rint64;
 typedef unsigned long long ruint64;
 typedef unsigned int ratomic_t;
-typedef unsigned long rword;
-typedef long rsword;
+typedef unsigned long ruword;
+typedef long rword;
 
 
 #ifndef _RSIZE_T_DEFINED
index 25475ed..181493d 100644 (file)
@@ -14,8 +14,8 @@ typedef unsigned int ruint32;
 typedef signed long long rint64;
 typedef unsigned long long ruint64;
 typedef unsigned int ratomic_t;
-typedef unsigned long rword;
-typedef long rsword;
+typedef unsigned long ruword;
+typedef long rword;
 
 #ifndef _RSIZE_T_DEFINED
 typedef unsigned long rsize_t;
index 31fbf81..8fd010d 100644 (file)
@@ -13,8 +13,8 @@ typedef signed int rint32;
 typedef unsigned int ruint32;
 typedef signed long rint64;
 typedef unsigned long ruint64;
-typedef unsigned long rword;
-typedef long rsword;
+typedef unsigned long ruword;
+typedef long rword;
 typedef unsigned int ratomic_t;
 
 #ifndef _RSIZE_T_DEFINED
index 2a76f98..e27a9e7 100644 (file)
@@ -15,8 +15,8 @@ typedef unsigned int ruint32;
 typedef signed long long rint64;
 typedef unsigned long long ruint64;
 typedef long ratomic_t;
-typedef unsigned long rword;
-typedef long rsword;
+typedef unsigned long ruword;
+typedef long rword;
 
 #ifndef _RSIZE_T_DEFINED
 typedef unsigned long rsize_t;
index c17e470..afbbd58 100644 (file)
@@ -15,8 +15,8 @@ typedef unsigned int ruint32;
 typedef signed long long rint64;
 typedef unsigned long long ruint64;
 typedef long ratomic_t;
-typedef ruint64 rword;
-typedef rint64 rsword;
+typedef ruint64 ruword;
+typedef rint64 rword;
 
 #ifndef _RSIZE_T_DEFINED
 typedef ruint64 rsize_t;
index e57b1b7..386ffd7 100644 (file)
--- a/rjs/rjs.c
+++ b/rjs/rjs.c
@@ -227,7 +227,7 @@ rvmreg_t *rjs_engine_exec_s(rjs_engine_t *jse, const char *script)
 static int rjs_compiler_argarray_setup(rjs_compiler_t *co)
 {
        rvm_varmap_t *v;
-       rvmreg_t count = rvm_reg_create_long(0);
+       rvmreg_t count = rvm_reg_create_signed(0);
        rmap_t *a;
 
        v = rvm_scope_tiplookup_s(co->scope, "ARGS");
@@ -258,7 +258,7 @@ static int rjs_compiler_addarg(rjs_compiler_t *co, rvmreg_t *arg)
        R_ASSERT(index >= 0);
        count = (rvmreg_t *)r_map_value(a, index);
        r_map_add_l(a, RVM_REG_GETL(count), arg);
-       rvm_reg_setlong(count, RVM_REG_GETL(count) + 1);
+       rvm_reg_setsigned(count, RVM_REG_GETL(count) + 1);
 
        return 0;
 }
@@ -322,7 +322,7 @@ static void rjs_engine_print(rvmcpu_t *cpu, rvm_asmins_t *ins)
                r_printf("%s\n", RVM_REG_GETU(r) ? "true" : "false");
        else if (rvm_reg_gettype(r) == RVM_DTYPE_POINTER)
                r_printf("%p\n", RVM_REG_GETP(r));
-       else if (rvm_reg_gettype(r) == RVM_DTYPE_LONG)
+       else if (rvm_reg_gettype(r) == RVM_DTYPE_SINGED)
                r_printf("%ld\n", RVM_REG_GETL(r));
        else if (rvm_reg_gettype(r) == RVM_DTYPE_DOUBLE)
                r_printf("%f\n", RVM_REG_GETD(r));
@@ -355,7 +355,7 @@ static void rjs_engine_dbgprint(rvmcpu_t *cpu, rvm_asmins_t *ins)
                r_printf("(BOOLEAN) %s\n", RVM_REG_GETU(r) ? "true" : "false");
        else if (rvm_reg_gettype(r) == RVM_DTYPE_POINTER)
                r_printf("(POINTER) %p\n", RVM_REG_GETP(r));
-       else if (rvm_reg_gettype(r) == RVM_DTYPE_LONG)
+       else if (rvm_reg_gettype(r) == RVM_DTYPE_SINGED)
                r_printf("(LONG) %ld\n", RVM_REG_GETL(r));
        else if (rvm_reg_gettype(r) == RVM_DTYPE_DOUBLE)
                r_printf("(DOUBLE) %f\n", RVM_REG_GETD(r));
index e015101..e05217e 100644 (file)
@@ -33,7 +33,7 @@ typedef struct rlist_s rlist_t, rlink_t, rhead_t;
 #define R_LIST_HEAD(__name__) {&(__name__), &(__name__) }
 #define r_list(__name__) rlist_t __name__ = { &(__name__), &(__name__) }
 #define r_list_empty(__head__) ((__head__)->next == ((void*)0) || (__head__)->next == __head__)
-#define r_list_entry(__ptr__, __type__, __member__) ((__type__ *)((char *)(__ptr__)-(rword)(&((__type__ *)0)->__member__)))
+#define r_list_entry(__ptr__, __type__, __member__) ((__type__ *)((char *)(__ptr__)-(ruword)(&((__type__ *)0)->__member__)))
 #define r_list_foreach(__pos__, __head__) for (__pos__ = (__head__)->next; __pos__ != (__head__); __pos__ = (__pos__)->next)
 #define r_list_foreachreverse(__pos__, __head__) for (__pos__ = (__head__)->prev; __pos__ != (__head__); __pos__ = (__pos__)->prev)
 #define r_list_fo_eachsafe(__pos__, __n__, __head__) \
index 654ad49..90eb406 100644 (file)
@@ -115,7 +115,7 @@ void r_map_cleanup(robject_t *obj)
 
 robject_t *r_map_init(robject_t *obj, ruint32 type, r_object_cleanupfun cleanup, r_object_copyfun copy, unsigned int elt_size, unsigned int nbits)
 {
-       rsize_t elt_realsize = R_SIZE_ALIGN(elt_size + sizeof(r_mapnode_t), sizeof(rword));
+       rsize_t elt_realsize = R_SIZE_ALIGN(elt_size + sizeof(r_mapnode_t), sizeof(ruword));
        rsize_t hashsize, i;
        rmap_t *map = (rmap_t*)obj;
        if (nbits == 0 || nbits > 16) {
index ea83429..0384e72 100644 (file)
@@ -62,11 +62,11 @@ static rpointer r_std_realloc(rpointer ptr, rsize_t size)
 
 static rpointer r_dbg_calloc(rsize_t nmemb, rsize_t size)
 {
-       rword *mem = NULL;
+       ruword *mem = NULL;
 
-       nmemb += (size < sizeof(rword)) ? sizeof(rword) : 1;
-       mem = (rword*)calloc((size_t)nmemb, (size_t)size);
-       *((rword*)mem) = size * nmemb;
+       nmemb += (size < sizeof(ruword)) ? sizeof(ruword) : 1;
+       mem = (ruword*)calloc((size_t)nmemb, (size_t)size);
+       *((ruword*)mem) = size * nmemb;
        r_spinlock_lock(&g_lock);
        g_allocmem += size * nmemb;
        if (g_maxmem < g_allocmem)
@@ -79,10 +79,10 @@ static rpointer r_dbg_calloc(rsize_t nmemb, rsize_t size)
 
 static rpointer r_dbg_malloc(rsize_t size)
 {
-       rword *mem = NULL;
-       size += sizeof(rword);
-       mem = (rword*)malloc((size_t)(size));
-       *((rword*)mem) = size;
+       ruword *mem = NULL;
+       size += sizeof(ruword);
+       mem = (ruword*)malloc((size_t)(size));
+       *((ruword*)mem) = size;
        r_spinlock_lock(&g_lock);
        g_allocmem += size;
        if (g_maxmem < g_allocmem)
@@ -95,8 +95,8 @@ static rpointer r_dbg_malloc(rsize_t size)
 
 static void r_dbg_free(rpointer ptr)
 {
-       rword *mem = (void*)(((rword*)ptr) - 1);
-       rword size;
+       ruword *mem = (void*)(((ruword*)ptr) - 1);
+       ruword size;
        if (!ptr)
                return;
        size = *mem;
@@ -109,16 +109,16 @@ static void r_dbg_free(rpointer ptr)
 
 static rpointer r_dbg_realloc(rpointer ptr, rsize_t size)
 {
-       rword *mem = (void*)(((rword*)ptr) - 1);
-       rword csize;
+       ruword *mem = (void*)(((ruword*)ptr) - 1);
+       ruword csize;
        if (!ptr)
                return r_malloc(size);
        csize = *mem;
        r_spinlock_lock(&g_lock);
        g_allocmem -= csize;
        r_spinlock_unlock(&g_lock);
-       size += sizeof(rword);
-       mem = (rword*)realloc((void*)mem, (size_t)(size));
+       size += sizeof(ruword);
+       mem = (ruword*)realloc((void*)mem, (size_t)(size));
        *mem = size;
        r_spinlock_lock(&g_lock);
        g_allocmem += size;
index 23f6c23..73f5c7b 100644 (file)
@@ -296,13 +296,13 @@ rstring_t *r_string_create_from_double(double d)
 }
 
 
-rstring_t *r_string_create_from_long(long l)
+rstring_t *r_string_create_from_signed(rword l)
 {
        char temp[128];
        int size;
 
        r_memset(temp, 0, sizeof(temp));
-       size = r_snprintf(temp, sizeof(temp) - 1, "%ld", l);
+       size = r_snprintf(temp, sizeof(temp) - 1, "%ld", (long)l);
        if (size > 0 && size < sizeof(temp)) {
                return r_string_create_strsize(temp, size);
        }
index 1b692ef..92d07c6 100644 (file)
@@ -73,7 +73,7 @@ typedef struct rstring_s {
 rstring_t *r_string_create();
 rstring_t *r_string_create_from_ansistr(const char *str);
 rstring_t *r_string_create_from_double(double d);
-rstring_t *r_string_create_from_long(long l);
+rstring_t *r_string_create_from_signed(long l);
 rstring_t *r_string_create_strsize(const char *str, unsigned int size);
 rstring_t *r_string_create_from_rstr(const rstr_t *str);
 void r_string_destroy(rstring_t *string);
index d39771a..505c206 100644 (file)
@@ -52,9 +52,9 @@ void rpa_dbex_buildbitmapinfo_for_rule(rpadbex_t *dbex, rparule_t rid)
 }
 
 
-rword rpa_dbex_getrulebitmap(rpadbex_t *dbex, rparule_t rid)
+ruword rpa_dbex_getrulebitmap(rpadbex_t *dbex, rparule_t rid)
 {
-       rword bitmap = 0L;
+       ruword bitmap = 0L;
        rharray_t *rules = dbex->rules;
        rpa_ruleinfo_t *info;
 
@@ -293,7 +293,7 @@ static long rpa_bitmap_set_numrng(rarray_t *records, rparecord_t *record, long r
                long first = rpa_recordtree_firstchild(records, rec, RPA_RECORD_END);
                long second = rpa_recordtree_lastchild(records, rec, RPA_RECORD_END);
                if (first >= 0 && second >= 0) {
-                       rword wc1, wc2, wc;
+                       ruword wc1, wc2, wc;
                        rparecord_t *firstrecord = rpa_record_get(records, first);
                        rparecord_t *secondrecord = rpa_record_get(records, second);
                        if (firstrecord->userdata < secondrecord->userdata) {
index 789e526..4e66ad2 100644 (file)
@@ -30,7 +30,7 @@ extern "C" {
 #include "rpa/rpadbex.h"
 #include "rpa/rparecord.h"
 
-typedef rword rpabitmap_t;
+typedef ruword rpabitmap_t;
 
 #define RPA_BITMAP_SIZE (sizeof(rpabitmap_t))
 #define RPA_BITMAP_BITS (RPA_BITMAP_SIZE * 8)
@@ -45,11 +45,11 @@ typedef rword rpabitmap_t;
 #define RPA_BITMAP_GETVAL(__pbmp__) *(__pbmp__)
 
 
-//#define RPA_BITMAP_SETBIT(__r__, __b__) do { (__r__)->userdata |= ((rword)1) << (__b__); } while (0)
-//#define RPA_BITMAP_GETBIT(__r__, __b__) ((__r__)->userdata & (((rword)1) << (__b__)) ? 1 : 0)
-//#define RPA_BITMAP_CLRBIT(__r__, __b__) do { (__r__)->userdata &= ~(((rword)1) << (__b__)); } while (0)
-//#define RPA_BITMAP_CLRALL(__r__) do { (__r__)->userdata = (rword)0; } while (0)
-//#define RPA_BITMAP_SETALL(__r__) do { (__r__)->userdata = (rword)-1; } while (0)
+//#define RPA_BITMAP_SETBIT(__r__, __b__) do { (__r__)->userdata |= ((ruword)1) << (__b__); } while (0)
+//#define RPA_BITMAP_GETBIT(__r__, __b__) ((__r__)->userdata & (((ruword)1) << (__b__)) ? 1 : 0)
+//#define RPA_BITMAP_CLRBIT(__r__, __b__) do { (__r__)->userdata &= ~(((ruword)1) << (__b__)); } while (0)
+//#define RPA_BITMAP_CLRALL(__r__) do { (__r__)->userdata = (ruword)0; } while (0)
+//#define RPA_BITMAP_SETALL(__r__) do { (__r__)->userdata = (ruword)-1; } while (0)
 //#define RPA_BITMAP_ORBITS(__r__, __c__) do { (__r__)->userdata |= (__c__)->userdata; } while (0)
 //#define RPA_BITMAP_SETVAL(__r__, __v__) do { (__r__)->userdata = __v__; } while (0)
 //#define RPA_BITMAP_GETVAL(__r__) ((__r__)->userdata)
index fe6c49f..957e19b 100644 (file)
@@ -104,7 +104,7 @@ struct rparecord_s {
        ruint32 ruleid;                 /**< Unique ID, identifying the BNF rule that created the record */
        ruint32 ruleuid;                /**< User specified Rule ID. If you used directive @ref emitid for this rulename, this member will contain the specified ID */
        ruint32 usertype;               /**< User specified type. */
-       rword userdata;                 /**< Scratch area. This member can be used to associate some user specific data with this record. */
+       ruword userdata;                        /**< Scratch area. This member can be used to associate some user specific data with this record. */
 };
 
 
index 515bf42..8d54966 100644 (file)
@@ -110,7 +110,7 @@ void rpa_stat_cacheinvalidate(rpastat_t *stat)
 }
 
 
-long rpa_stat_exec(rpastat_t *stat, rvm_asmins_t *prog, rword off, unsigned int encoding, const char *input, const char *start, const char *end, rarray_t *records)
+long rpa_stat_exec(rpastat_t *stat, rvm_asmins_t *prog, ruword off, unsigned int encoding, const char *input, const char *start, const char *end, rarray_t *records)
 {
        long ret;
 
index b2f0581..103e8ef 100644 (file)
@@ -191,7 +191,7 @@ long rpa_stat_match(rpastat_t *stat, rparule_t rid, unsigned int encoding, const
  * @return If successful return the size of the matched string in bytes, if the input stream cannot be matched against the BNF
  *                     return 0, return negative in case of error.
  */
-long rpa_stat_exec(rpastat_t *stat, rvm_asmins_t *prog, rword off, unsigned int encoding, const char *input, const char *start, const char *end, rarray_t *records);
+long rpa_stat_exec(rpastat_t *stat, rvm_asmins_t *prog, ruword off, unsigned int encoding, const char *input, const char *start, const char *end, rarray_t *records);
 
 
 /**
index 1919b69..c6fb08d 100644 (file)
@@ -27,7 +27,7 @@
 static void rpavm_swi_shift(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rsword top = RVM_CPUREG_GETL(cpu, R_TOP);
+       rword top = RVM_CPUREG_GETL(cpu, R_TOP);
 
        if ((top = rpa_stat_shift(stat, top)) >= 0)
                RVM_CPUREG_SETL(cpu, R_TOP, top);
@@ -43,7 +43,7 @@ static void rpavm_swi_matchbitmap(rvmcpu_t *cpu, rvm_asmins_t *ins)
                cpu->status = 0;
        } else {
                cpu->status = RVM_STATUS_N;
-               RVM_CPUREG_SETU(cpu, R0, (rword)-1);
+               RVM_CPUREG_SETU(cpu, R0, (ruword)-1);
        }
 }
 
@@ -57,7 +57,7 @@ static void rpavm_swi_exitonbitmap(rvmcpu_t *cpu, rvm_asmins_t *ins)
                cpu->status = 0;
        } else {
                cpu->status = RVM_STATUS_N;
-               RVM_CPUREG_SETU(cpu, R0, (rword)-1);
+               RVM_CPUREG_SETU(cpu, R0, (ruword)-1);
                cpu->abort = 1;
        }
 }
@@ -67,7 +67,7 @@ static void rpavm_swi_verifybitmap(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rpabitmap_t bitmap = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword r0 = RVM_CPUREG_GETU(cpu, R0);
+       ruword r0 = RVM_CPUREG_GETU(cpu, R0);
 
        if (bitmap && r0 > 0) {
                if (!rpa_stat_matchbitmap(stat, RVM_CPUREG_GETL(cpu, R_TOP) - r0, bitmap)) {
@@ -81,23 +81,23 @@ static void rpavm_swi_verifybitmap(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rpavm_swi_matchchr_nan(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rword wc = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword matched = 0;
+       ruword wc = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword matched = 0;
 
        if (rpa_stat_matchchr(stat, RVM_CPUREG_GETL(cpu, R_TOP), wc) > 0) {
                rpavm_swi_shift(cpu, ins);
                matched = 1;
        }
        cpu->status = matched ? 0 : RVM_STATUS_N;
-       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (rword)-1);
+       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (ruword)-1);
 }
 
 
 static void rpavm_swi_matchchr_opt(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rword wc = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword matched = 0;
+       ruword wc = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword matched = 0;
 
        if (rpa_stat_matchchr(stat, RVM_CPUREG_GETL(cpu, R_TOP), wc) > 0) {
                rpavm_swi_shift(cpu, ins);
@@ -111,23 +111,23 @@ static void rpavm_swi_matchchr_opt(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rpavm_swi_matchchr_mul(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rword wc = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword matched = 0;
+       ruword wc = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword matched = 0;
 
        while (rpa_stat_matchchr(stat, RVM_CPUREG_GETL(cpu, R_TOP), wc) > 0) {
                rpavm_swi_shift(cpu, ins);
                matched += 1;
        }
        cpu->status = matched ? 0 : RVM_STATUS_N;
-       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (rword)-1);
+       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (ruword)-1);
 }
 
 
 static void rpavm_swi_matchchr_mop(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rword wc = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword matched = 0;
+       ruword wc = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword matched = 0;
 
        while (rpa_stat_matchchr(stat, RVM_CPUREG_GETL(cpu, R_TOP), wc) > 0) {
                rpavm_swi_shift(cpu, ins);
@@ -141,23 +141,23 @@ static void rpavm_swi_matchchr_mop(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rpavm_swi_matchspchr_nan(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rword wc = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword matched = 0;
+       ruword wc = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword matched = 0;
 
        if (rpa_stat_matchspchr(stat, RVM_CPUREG_GETL(cpu, R_TOP), wc) > 0) {
                rpavm_swi_shift(cpu, ins);
                matched = 1;
        }
        cpu->status = matched ? 0 : RVM_STATUS_N;
-       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (rword)-1);
+       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (ruword)-1);
 }
 
 
 static void rpavm_swi_matchspchr_opt(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rword wc = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword matched = 0;
+       ruword wc = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword matched = 0;
 
        if (rpa_stat_matchspchr(stat, RVM_CPUREG_GETL(cpu, R_TOP), wc) > 0) {
                rpavm_swi_shift(cpu, ins);
@@ -172,15 +172,15 @@ static void rpavm_swi_matchspchr_opt(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rpavm_swi_matchspchr_mul(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rword wc = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword matched = 0;
+       ruword wc = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword matched = 0;
 
        while (rpa_stat_matchspchr(stat, RVM_CPUREG_GETL(cpu, R_TOP), wc) > 0) {
                rpavm_swi_shift(cpu, ins);
                matched += 1;
        }
        cpu->status = matched ? 0 : RVM_STATUS_N;
-       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (rword)-1);
+       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (ruword)-1);
 
 }
 
@@ -188,8 +188,8 @@ static void rpavm_swi_matchspchr_mul(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rpavm_swi_matchspchr_mop(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rword wc = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword matched = 0;
+       ruword wc = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword matched = 0;
 
        while (rpa_stat_matchspchr(stat, RVM_CPUREG_GETL(cpu, R_TOP), wc) > 0) {
                rpavm_swi_shift(cpu, ins);
@@ -204,11 +204,11 @@ static void rpavm_swi_matchrng_peek(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rpair_t pr = RVM_CPUREG_GETPAIR(cpu, ins->op1);
-       rword matched = 0;
+       ruword matched = 0;
 
        if (rpa_stat_matchrng(stat, RVM_CPUREG_GETL(cpu, R_TOP), pr.p1, pr.p2) <= 0) {
                cpu->status = matched ? 0 : RVM_STATUS_N;
-               RVM_CPUREG_SETU(cpu, R0, matched ? matched : (rword)-1);
+               RVM_CPUREG_SETU(cpu, R0, matched ? matched : (ruword)-1);
        }
 }
 
@@ -217,14 +217,14 @@ static void rpavm_swi_matchrng_nan(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rpair_t pr = RVM_CPUREG_GETPAIR(cpu, ins->op1);
-       rword matched = 0;
+       ruword matched = 0;
 
        if (rpa_stat_matchrng(stat, RVM_CPUREG_GETL(cpu, R_TOP), pr.p1, pr.p2) > 0) {
                rpavm_swi_shift(cpu, ins);
                matched = 1;
        }
        cpu->status = matched ? 0 : RVM_STATUS_N;
-       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (rword)-1);
+       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (ruword)-1);
 }
 
 
@@ -232,7 +232,7 @@ static void rpavm_swi_matchrng_opt(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rpair_t pr = RVM_CPUREG_GETPAIR(cpu, ins->op1);
-       rword matched = 0;
+       ruword matched = 0;
 
        if (rpa_stat_matchrng(stat, RVM_CPUREG_GETL(cpu, R_TOP), pr.p1, pr.p2) > 0) {
                rpavm_swi_shift(cpu, ins);
@@ -247,14 +247,14 @@ static void rpavm_swi_matchrng_mul(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rpair_t pr = RVM_CPUREG_GETPAIR(cpu, ins->op1);
-       rword matched = 0;
+       ruword matched = 0;
 
        while (rpa_stat_matchrng(stat, RVM_CPUREG_GETL(cpu, R_TOP), pr.p1, pr.p2) > 0) {
                rpavm_swi_shift(cpu, ins);
                matched += 1;
        }
        cpu->status = matched ? 0 : RVM_STATUS_N;
-       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (rword)-1);
+       RVM_CPUREG_SETU(cpu, R0, matched ? matched : (ruword)-1);
 }
 
 
@@ -262,7 +262,7 @@ static void rpavm_swi_matchrng_mop(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rpair_t pr = RVM_CPUREG_GETPAIR(cpu, ins->op1);
-       rword matched = 0;
+       ruword matched = 0;
 
        while (rpa_stat_matchrng(stat, RVM_CPUREG_GETL(cpu, R_TOP), pr.p1, pr.p2) > 0) {
                rpavm_swi_shift(cpu, ins);
@@ -276,7 +276,7 @@ static void rpavm_swi_matchrng_mop(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rpavm_swi_emittail(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rsword index = RVM_CPUREG_GETL(cpu, R_REC);
+       rword index = RVM_CPUREG_GETL(cpu, R_REC);
 
        if (stat->records)
                r_array_setlength(stat->records, index + 1);
@@ -288,8 +288,8 @@ static void rpavm_swi_abort(rvmcpu_t *cpu, rvm_asmins_t *ins)
        rpa_ruledata_t *ruledata = RVM_CPUREG_GETP(cpu, ins->op1);
        rstr_t name = {(char*)ruledata + ruledata->name, ruledata->namesize};
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rsword index = RVM_CPUREG_GETL(cpu, R_REC);
-       rword tp = RVM_CPUREG_GETU(cpu, ins->op2);
+       rword index = RVM_CPUREG_GETL(cpu, R_REC);
+       ruword tp = RVM_CPUREG_GETU(cpu, ins->op2);
 
 
        if (stat->records)
@@ -311,8 +311,8 @@ static void rpavm_swi_emitstart(rvmcpu_t *cpu, rvm_asmins_t *ins)
        rpa_ruledata_t *ruledata = RVM_CPUREG_GETP(cpu, ins->op1);
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rparecord_t *rec;
-       rsword index = RVM_CPUREG_GETL(cpu, R_REC);
-       rword tp = RVM_CPUREG_GETU(cpu, ins->op2);
+       rword index = RVM_CPUREG_GETL(cpu, R_REC);
+       ruword tp = RVM_CPUREG_GETU(cpu, ins->op2);
        rstr_t name = {(char*)ruledata + ruledata->name, ruledata->namesize};
 
        if (stat->debug)
@@ -344,10 +344,10 @@ static void rpavm_swi_emitend(rvmcpu_t *cpu, rvm_asmins_t *ins)
        rpa_ruledata_t *ruledata = RVM_CPUREG_GETP(cpu, ins->op1);
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rparecord_t *rec, *startrec;
-       rsword startindex = RVM_CPUREG_GETL(cpu, R1) + 1;
-       rsword index = RVM_CPUREG_GETL(cpu, R_REC);
-       rword tp = RVM_CPUREG_GETU(cpu, ins->op2);
-       rword tplen = RVM_CPUREG_GETU(cpu, ins->op3);
+       rword startindex = RVM_CPUREG_GETL(cpu, R1) + 1;
+       rword index = RVM_CPUREG_GETL(cpu, R_REC);
+       ruword tp = RVM_CPUREG_GETU(cpu, ins->op2);
+       ruword tplen = RVM_CPUREG_GETU(cpu, ins->op3);
        rstr_t name = {(char*)ruledata + ruledata->name, ruledata->namesize};
 
        if (stat->debug)
@@ -395,12 +395,12 @@ static void rpavm_swi_prninfo(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rpavm_swi_setcache(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
-       rsword r0 = RVM_CPUREG_GETL(cpu, R0);
-       rsword ruleid = RVM_CPUREG_GETL(cpu, ins->op1);
-       rsword prevrec = RVM_CPUREG_GETL(cpu, ins->op2);
-       rsword endrec = RVM_CPUREG_GETL(cpu, ins->op3);
-       rsword top = RVM_CPUREG_GETL(cpu, R_OTP);
-       rsword startrec = 0;
+       rword r0 = RVM_CPUREG_GETL(cpu, R0);
+       rword ruleid = RVM_CPUREG_GETL(cpu, ins->op1);
+       rword prevrec = RVM_CPUREG_GETL(cpu, ins->op2);
+       rword endrec = RVM_CPUREG_GETL(cpu, ins->op3);
+       rword top = RVM_CPUREG_GETL(cpu, R_OTP);
+       rword startrec = 0;
 
        if (r0 > 0 && prevrec != endrec) {
                startrec = prevrec + 1;
@@ -415,9 +415,9 @@ static void rpavm_swi_checkcache(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rpastat_t *stat = (rpastat_t *)cpu->userdata1;
        rpacachedentry_t *entry;
-       rsword ruleid = RVM_CPUREG_GETL(cpu, ins->op1);
-       rsword top = RVM_CPUREG_GETL(cpu, ins->op2);
-       rsword r0 = 0;
+       rword ruleid = RVM_CPUREG_GETL(cpu, ins->op1);
+       rword top = RVM_CPUREG_GETL(cpu, ins->op2);
+       rword r0 = 0;
        entry = rpa_cache_lookup(stat->cache, top, ruleid);
        if (entry) {
                r0 = entry->ret;
index 609c6ae..0107e86 100644 (file)
@@ -272,11 +272,11 @@ void rvm_codegen_funcend(rvm_codegen_t *cg)
 long rvm_codegen_adddata(rvm_codegen_t *cg, const char *name, unsigned int namesize, rconstpointer data, rsize_t size)
 {
        rpointer buffer;
-       unsigned long cursize = R_SIZE_ALIGN(r_array_length(cg->data), sizeof(rword));
+       unsigned long cursize = R_SIZE_ALIGN(r_array_length(cg->data), sizeof(ruword));
 
-       r_array_setlength(cg->data, cursize + size + sizeof(rword) + 1);
+       r_array_setlength(cg->data, cursize + size + sizeof(ruword) + 1);
        buffer = r_array_slot(cg->data, cursize);
-       r_memset(buffer, 0, size + sizeof(rword));
+       r_memset(buffer, 0, size + sizeof(ruword));
        r_memmove(buffer, data, size);
        return rvm_codemap_addoffset(cg->codemap, name, namesize, rvm_codemap_lookupadd_s(cg->codemap, ".data"), cursize);
 }
index b133efa..e0cb5b8 100644 (file)
@@ -111,7 +111,7 @@ void rvm_codelabel_setoffset(rvm_codelabel_t *label, unsigned long base, unsigne
 void rvm_codelabel_setpointer(rvm_codelabel_t *label, rpointer ptr)
 {
        label->base = 0;
-       label->value = (rword)ptr;
+       label->value = (ruword)ptr;
        label->type = RVM_CODELABEL_POINTER;
 }
 
@@ -224,10 +224,10 @@ long rvm_codemap_lookup_s(rvm_codemap_t *codemap, const char *name)
 }
 
 
-rword rvm_codemap_resolve(rvm_codemap_t *codemap, long index, rvm_codelabel_t **err)
+ruword rvm_codemap_resolve(rvm_codemap_t *codemap, long index, rvm_codelabel_t **err)
 {
        rvm_codelabel_t *label = rvm_codemap_label(codemap, index);
-       rword value;
+       ruword value;
 
        if (!label)
                return 0;
@@ -235,13 +235,13 @@ rword rvm_codemap_resolve(rvm_codemap_t *codemap, long index, rvm_codelabel_t **
                return label->value;
        } else if (label->type == RVM_CODELABEL_OFFSET) {
                value = rvm_codemap_resolve(codemap, label->base, err);
-               if (value == (rword)-1)
-                       return (rword)-1;
+               if (value == (ruword)-1)
+                       return (ruword)-1;
                return value + label->value;
        }
        if (err)
                *err = label;
-       return (rword)-1;
+       return (ruword)-1;
 }
 
 
index fcb8907..0cc3517 100644 (file)
@@ -39,7 +39,7 @@ typedef struct rvm_codelabel_s {
                RVM_CODELABEL_INVALID,
        } type;
        unsigned long base;
-       rword value;
+       ruword value;
        rstr_t *name;
        unsigned long size; // Optional, used for function declarations
 } rvm_codelabel_t;
@@ -67,7 +67,7 @@ long rvm_codemap_lookup_s(rvm_codemap_t *codemap, const char *name);
 long rvm_codemap_lastlabel(rvm_codemap_t *codemap);
 rvm_codelabel_t *rvm_codemap_label(rvm_codemap_t *codemap, long index);
 long rvm_codemap_validindex(rvm_codemap_t *codemap, long labelidx);
-rword rvm_codemap_resolve(rvm_codemap_t *codemap, long index, rvm_codelabel_t **err);
+ruword rvm_codemap_resolve(rvm_codemap_t *codemap, long index, rvm_codelabel_t **err);
 void rvm_codemap_dump(rvm_codemap_t *codemap);
 void rvm_codelabel_setoffset(rvm_codelabel_t *label, unsigned long base, unsigned long offset);
 void rvm_codelabel_setpointer(rvm_codelabel_t *label, rpointer ptr);
index a5a99cd..f589a1d 100644 (file)
@@ -174,7 +174,7 @@ static const char *stropcalls[] = {
 
 static void rvm_op_b(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword pc = 0;
+       ruword pc = 0;
 
 //     if (ins->op1 != XX)
 //             pc += RVM_CPUREG_GETU(cpu, ins->op1);
@@ -189,7 +189,7 @@ static void rvm_op_b(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_beq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword pc = 0;
+       ruword pc = 0;
 
        if ((cpu->status & RVM_STATUS_Z)) {
 //             if (ins->op1 != XX)
@@ -206,7 +206,7 @@ static void rvm_op_beq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_bneq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword pc = 0;
+       ruword pc = 0;
 
        if ((cpu->status & RVM_STATUS_Z) == 0) {
 //             if (ins->op1 != XX)
@@ -223,7 +223,7 @@ static void rvm_op_bneq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_bleq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword pc = 0;
+       ruword pc = 0;
 
        if ((cpu->status & RVM_STATUS_N) || (cpu->status & RVM_STATUS_Z)) {
 //             if (ins->op1 != XX)
@@ -239,7 +239,7 @@ static void rvm_op_bleq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_bgeq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword pc = 0;
+       ruword pc = 0;
 
        if ((cpu->status & RVM_STATUS_N) == 0 || (cpu->status & RVM_STATUS_Z) == 1) {
 //             if (ins->op1 != XX)
@@ -256,7 +256,7 @@ static void rvm_op_bgeq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_bles(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword pc = 0;
+       ruword pc = 0;
 
 
        if ((cpu->status & RVM_STATUS_N)) {
@@ -274,7 +274,7 @@ static void rvm_op_bles(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_bgre(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword pc = 0;
+       ruword pc = 0;
 
        if ((cpu->status & RVM_STATUS_N) == 0 && (cpu->status & RVM_STATUS_Z) == 0) {
 //             if (ins->op1 != XX)
@@ -352,7 +352,7 @@ static void rvm_op_bxl(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_bl(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword pc = 0;
+       ruword pc = 0;
 
 //     if (ins->op1 != XX)
 //             pc += RVM_CPUREG_GETU(cpu, ins->op1);
@@ -380,7 +380,7 @@ static void rvm_op_mov(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_movs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword op2 = RVM_CPUREG_GETU(cpu, ins->op2);;
+       ruword op2 = RVM_CPUREG_GETU(cpu, ins->op2);;
 
        RVM_CPUREG_SETU(cpu, ins->op1, op2);
        RVM_STATUS_CLRALL(cpu);
@@ -399,7 +399,7 @@ static void rvm_op_swp(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_ldr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       RVM_CPUREG_SETU(cpu, ins->op1, *((rword*)RVM_CPUREG_GETU(cpu, ins->op2)));
+       RVM_CPUREG_SETU(cpu, ins->op1, *((ruword*)RVM_CPUREG_GETU(cpu, ins->op2)));
        
 }
 
@@ -443,7 +443,7 @@ static void rvm_op_clr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_cflag(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword op1 = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword op1 = RVM_CPUREG_GETU(cpu, ins->op1);
        RVM_STATUS_CLRBIT(cpu, op1);
 }
 
@@ -457,7 +457,7 @@ static void rvm_op_clrr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_str(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       *((rword*)RVM_CPUREG_GETP(cpu, ins->op2)) = RVM_CPUREG_GETU(cpu, ins->op1);
+       *((ruword*)RVM_CPUREG_GETP(cpu, ins->op2)) = RVM_CPUREG_GETU(cpu, ins->op1);
 }
 
 
@@ -499,7 +499,7 @@ static void rvm_op_strr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_adds(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
 
        res = op2 + op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -513,7 +513,7 @@ static void rvm_op_adds(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_adc(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 + op3 + (RVM_STATUS_GETBIT(cpu, RVM_STATUS_C) ? 1 : 0);
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -527,7 +527,7 @@ static void rvm_op_adc(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_and(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 & op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -539,7 +539,7 @@ static void rvm_op_and(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_orr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 | op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -551,7 +551,7 @@ static void rvm_op_orr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_lsl(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 << op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -563,7 +563,7 @@ static void rvm_op_lsl(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_lsr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 >> op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -574,9 +574,9 @@ static void rvm_op_lsr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_lsrs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rsword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
 
-       res = ((rsword)op2) >> op3;
+       res = ((rword)op2) >> op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
        RVM_STATUS_CLRALL(cpu);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !res);
@@ -585,7 +585,7 @@ static void rvm_op_lsrs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_asr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 >> op3;
        res |= op2 & RVM_SIGN_BIT;
@@ -599,7 +599,7 @@ static void rvm_op_asr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rvm_op_ror(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        unsigned int i;
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2;
        for (i = 0; i < op3; i++) {
@@ -620,7 +620,7 @@ static void rvm_op_ror(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_tst(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op1 = RVM_CPUREG_GETU(cpu, ins->op1), op2 = RVM_CPUREG_GETU(cpu, ins->op2);
+       ruword res, op1 = RVM_CPUREG_GETU(cpu, ins->op1), op2 = RVM_CPUREG_GETU(cpu, ins->op2);
        
        res = op1 & op2;
        RVM_STATUS_CLRALL(cpu);
@@ -631,7 +631,7 @@ static void rvm_op_tst(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_xor(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 ^ op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -643,7 +643,7 @@ static void rvm_op_xor(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_not(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2);
        
        res = ~op2;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -655,7 +655,7 @@ static void rvm_op_not(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_teq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 ^ op3;
        RVM_STATUS_CLRALL(cpu);
@@ -666,7 +666,7 @@ static void rvm_op_teq(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_bic(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 & ~op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -678,7 +678,7 @@ static void rvm_op_bic(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_clz(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2);
        
        for (res = RVM_REGISTER_BITS; op2; ) {
                op2 >>= 1;
@@ -759,7 +759,7 @@ static void rvm_op_sub(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_subs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 - op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -773,7 +773,7 @@ static void rvm_op_subs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_sbc(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
 
        res = op2 - op3 + (RVM_STATUS_GETBIT(cpu, RVM_STATUS_C) ? 0 : -1);
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -793,10 +793,10 @@ static void rvm_op_mul(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_mls(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rsword res;
-       rsword op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       rword res;
+       rword op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
 
-       res = (rsword)(op2 * op3);
+       res = (rword)(op2 * op3);
        RVM_CPUREG_SETU(cpu, ins->op1, res);
        /* TBD: Not sure how to update the RVM_STATUS_C */
        RVM_STATUS_CLRALL(cpu);
@@ -807,7 +807,7 @@ static void rvm_op_mls(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_muls(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
        
        res = op2 * op3;
        RVM_CPUREG_SETU(cpu, ins->op1, res);
@@ -829,7 +829,7 @@ static void rvm_op_div(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_divs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
 
        if (!op3)
                RVM_ABORT(cpu, RVM_E_DIVZERO);
@@ -852,7 +852,7 @@ static void rvm_op_mod(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_mods(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rsword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       rword res, op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
 
        if (!op3)
                RVM_ABORT(cpu, RVM_E_DIVZERO);
@@ -867,12 +867,12 @@ static void rvm_op_mods(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_dvs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rsword res;
-       rsword op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
+       rword res;
+       rword op2 = RVM_CPUREG_GETU(cpu, ins->op2), op3 = RVM_CPUREG_GETU(cpu, ins->op3);
 
        if (!op3)
                RVM_ABORT(cpu, RVM_E_DIVZERO);
-       res = (rsword)(op2 / op3);
+       res = (rword)(op2 / op3);
        RVM_CPUREG_SETU(cpu, ins->op1, res);
        RVM_STATUS_CLRALL(cpu);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !res);
@@ -882,7 +882,7 @@ static void rvm_op_dvs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_push(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword sp = RVM_CPUREG_GETU(cpu, SP) + 1;
+       ruword sp = RVM_CPUREG_GETU(cpu, SP) + 1;
 
        if (!RVM_STACK_CHECKSIZE(cpu, cpu->stack, sp))
                RVM_ABORT(cpu, RVM_E_NOMEM);
@@ -893,7 +893,7 @@ static void rvm_op_push(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_lds(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword sp = ((ins->op2 != XX) ? RVM_CPUREG_GETU(cpu, ins->op2) : 0) + ((ins->op3 != XX) ? RVM_CPUREG_GETU(cpu, ins->op3) : 0);
+       ruword sp = ((ins->op2 != XX) ? RVM_CPUREG_GETU(cpu, ins->op2) : 0) + ((ins->op3 != XX) ? RVM_CPUREG_GETU(cpu, ins->op3) : 0);
 
        RVM_CPUREG_SET(cpu, ins->op1, RVM_STACK_READ(cpu->stack, sp));
 }
@@ -901,7 +901,7 @@ static void rvm_op_lds(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_sts(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword sp = ((ins->op2 != XX) ? RVM_CPUREG_GETU(cpu, ins->op2) : 0) + ((ins->op3 != XX) ? RVM_CPUREG_GETU(cpu, ins->op3) : 0);
+       ruword sp = ((ins->op2 != XX) ? RVM_CPUREG_GETU(cpu, ins->op2) : 0) + ((ins->op3 != XX) ? RVM_CPUREG_GETU(cpu, ins->op3) : 0);
 
        if (!RVM_STACK_CHECKSIZE(cpu, cpu->stack, sp))
                RVM_ABORT(cpu, RVM_E_NOMEM);
@@ -911,9 +911,9 @@ static void rvm_op_sts(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_pushm(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword n, i = 0;
-       rword bits = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword sp = RVM_CPUREG_GETU(cpu, SP);
+       ruword n, i = 0;
+       ruword bits = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword sp = RVM_CPUREG_GETU(cpu, SP);
 
        if (!RVM_STACK_CHECKSIZE(cpu, cpu->stack, sp + RVM_REGS_NUM))
                RVM_ABORT(cpu, RVM_E_NOMEM);
@@ -935,9 +935,9 @@ static void rvm_op_pushm(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rvm_op_popm(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        int n, i = RLST - 1;
-       rword bits = RVM_CPUREG_GETU(cpu, ins->op1);
-       rword savedbits = bits;
-       rword sp = RVM_CPUREG_GETU(cpu, SP);
+       ruword bits = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword savedbits = bits;
+       ruword sp = RVM_CPUREG_GETU(cpu, SP);
 
        if (!(bits & ~((1 << (RVM_REGS_NUM / 2)) - 1)))
                i = RVM_REGS_NUM / 2 - 1;
@@ -949,14 +949,14 @@ static void rvm_op_popm(rvmcpu_t *cpu, rvm_asmins_t *ins)
                        bits &= ~n;
                }
        }
-       if (!(((rword)(1 << SP)) & savedbits))
+       if (!(((ruword)(1 << SP)) & savedbits))
                RVM_CPUREG_SETU(cpu, SP, sp);
 }
 
 
 static void rvm_op_pop(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword sp = RVM_CPUREG_GETU(cpu, SP);
+       ruword sp = RVM_CPUREG_GETU(cpu, SP);
 
        RVM_CPUREG_SET(cpu, ins->op1, RVM_STACK_READ(cpu->stack, sp));
        if (ins->op1 != SP)
@@ -966,7 +966,7 @@ static void rvm_op_pop(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_addrs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword sp = ((ins->op2 != XX) ? RVM_CPUREG_GETU(cpu, ins->op2) : 0) + ((ins->op3 != XX) ? RVM_CPUREG_GETU(cpu, ins->op3) : 0);
+       ruword sp = ((ins->op2 != XX) ? RVM_CPUREG_GETU(cpu, ins->op2) : 0) + ((ins->op3 != XX) ? RVM_CPUREG_GETU(cpu, ins->op3) : 0);
 
        if (!RVM_STACK_CHECKSIZE(cpu, cpu->stack, sp))
                RVM_ABORT(cpu, RVM_E_NOMEM);
@@ -980,11 +980,11 @@ static void rvm_op_addrs(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rvm_op_stm(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        int n;
-       rword *dst = (rword*)   RVM_CPUREG_GETU(cpu, ins->op1);
-       rword bits = RVM_CPUREG_GETU(cpu, ins->op2);
+       ruword *dst = (ruword*) RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword bits = RVM_CPUREG_GETU(cpu, ins->op2);
        
        for (n = 0; bits && n < RLST; n++) {
-               if (((rword)(1 << n)) & bits) {
+               if (((ruword)(1 << n)) & bits) {
                        *dst = RVM_CPUREG_GETU(cpu, n);
                        dst += 1;
                        bits &= ~(1<<n);
@@ -996,11 +996,11 @@ static void rvm_op_stm(rvmcpu_t *cpu, rvm_asmins_t *ins)
 static void rvm_op_ldm(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        int n;
-       rword *src = (rword*)RVM_CPUREG_GETU(cpu, ins->op1);
-       rword bits = RVM_CPUREG_GETU(cpu, ins->op2);
+       ruword *src = (ruword*)RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword bits = RVM_CPUREG_GETU(cpu, ins->op2);
 
        for (n = 0; bits && n < RLST; n++) {
-               if (((rword)(1 << n)) & bits) {
+               if (((ruword)(1 << n)) & bits) {
                        RVM_CPUREG_CLEAR(cpu, n);
                        RVM_CPUREG_SETU(cpu, n, *src);
                        src += 1;
@@ -1012,8 +1012,8 @@ static void rvm_op_ldm(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_cmp(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword op1 = RVM_CPUREG_GETU(cpu, ins->op1), op2 = RVM_CPUREG_GETU(cpu, ins->op2);
-       rword res = (rword)(op1 - op2);
+       ruword op1 = RVM_CPUREG_GETU(cpu, ins->op1), op2 = RVM_CPUREG_GETU(cpu, ins->op2);
+       ruword res = (ruword)(op1 - op2);
        
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_C, op1 < op2);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !res);
@@ -1025,8 +1025,8 @@ static void rvm_op_cmp(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void rvm_op_cmn(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword op1 = RVM_CPUREG_GETU(cpu, ins->op1), op2 = RVM_CPUREG_GETU(cpu, ins->op2);
-       rword res = (rword)(op1 + op2);
+       ruword op1 = RVM_CPUREG_GETU(cpu, ins->op1), op2 = RVM_CPUREG_GETU(cpu, ins->op2);
+       ruword res = (ruword)(op1 + op2);
        
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_C, res < op1 || res < op2);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !res);
@@ -1116,7 +1116,7 @@ static void rvm_op_prn(rvmcpu_t *cpu, rvm_asmins_t *ins)
                rvm_printf("(UNSIGNED) R%d = %lu(0x%lx)\n", ins->op1, RVM_REG_GETU(r), RVM_REG_GETU(r));
        else if (rvm_reg_gettype(r) == RVM_DTYPE_POINTER)
                rvm_printf("(POINTER) R%d = %p\n", ins->op1, RVM_REG_GETP(r));
-       else if (rvm_reg_gettype(r) == RVM_DTYPE_LONG)
+       else if (rvm_reg_gettype(r) == RVM_DTYPE_SINGED)
                rvm_printf("(LONG) R%d = %ld\n", ins->op1, RVM_REG_GETL(r));
        else if (rvm_reg_gettype(r) == RVM_DTYPE_DOUBLE)
                rvm_printf("(DOUBLE) R%d = %0.2f\n", ins->op1, RVM_REG_GETD(r));
@@ -1197,7 +1197,7 @@ int rvm_asm_dump_pi_to_str(rvmcpu_t *vm, rvm_asmins_t *pi, char *str, unsigned i
        if (RVM_REG_GETTYPE(&pi->data) == RVM_DTYPE_DOUBLE) {
                if ((ret = rvm_snprintf(str, sz, "%f  ", RVM_REG_GETD(&pi->data))) < 0)
                        return ret;
-       } else if (RVM_REG_GETTYPE(&pi->data) == RVM_DTYPE_LONG) {
+       } else if (RVM_REG_GETTYPE(&pi->data) == RVM_DTYPE_SINGED) {
                if ((ret = rvm_snprintf(str, sz, "%ld  ", RVM_REG_GETL(&pi->data))) < 0)
                        return ret;
        } else {
@@ -1549,7 +1549,7 @@ static void rvm_op_maplookup(rvmcpu_t *cpu, rvm_asmins_t *ins)
        if (rvm_reg_gettype(arg2) != RVM_DTYPE_JSOBJECT) {
                RVM_ABORT(cpu, RVM_E_NOTOBJECT);
        }
-       if (RVM_REG_GETTYPE(arg3) == RVM_DTYPE_LONG || RVM_REG_GETTYPE(arg3) == RVM_DTYPE_UNSIGNED) {
+       if (RVM_REG_GETTYPE(arg3) == RVM_DTYPE_SINGED || RVM_REG_GETTYPE(arg3) == RVM_DTYPE_UNSIGNED) {
                index = r_map_lookup_l(a, -1, RVM_REG_GETL(arg3));
        } else if (RVM_REG_GETTYPE(arg3) == RVM_DTYPE_DOUBLE) {
                index = r_map_lookup_d(a, -1, RVM_REG_GETD(arg3));
@@ -1562,7 +1562,7 @@ static void rvm_op_maplookup(rvmcpu_t *cpu, rvm_asmins_t *ins)
        }
 
        RVM_REG_CLEAR(arg1);
-       RVM_REG_SETTYPE(arg1, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(arg1, RVM_DTYPE_SINGED);
        RVM_REG_SETL(arg1, index);
 }
 
@@ -1578,7 +1578,7 @@ static void rvm_op_mapadd(rvmcpu_t *cpu, rvm_asmins_t *ins)
        if (rvm_reg_gettype(arg2) != RVM_DTYPE_JSOBJECT) {
                RVM_ABORT(cpu, RVM_E_NOTOBJECT);
        }
-       if (RVM_REG_GETTYPE(arg3) == RVM_DTYPE_LONG || RVM_REG_GETTYPE(arg3) == RVM_DTYPE_UNSIGNED) {
+       if (RVM_REG_GETTYPE(arg3) == RVM_DTYPE_SINGED || RVM_REG_GETTYPE(arg3) == RVM_DTYPE_UNSIGNED) {
                index = r_map_gckey_add_l(a, cpu->gc, RVM_REG_GETL(arg3), NULL);
        } else if (RVM_REG_GETTYPE(arg3) == RVM_DTYPE_DOUBLE) {
                index = r_map_gckey_add_d(a, cpu->gc, RVM_REG_GETD(arg3), NULL);
@@ -1591,7 +1591,7 @@ static void rvm_op_mapadd(rvmcpu_t *cpu, rvm_asmins_t *ins)
        }
 
        RVM_REG_CLEAR(arg1);
-       RVM_REG_SETTYPE(arg1, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(arg1, RVM_DTYPE_SINGED);
        RVM_REG_SETL(arg1, index);
 }
 
@@ -1607,7 +1607,7 @@ static void rvm_op_maplookupadd(rvmcpu_t *cpu, rvm_asmins_t *ins)
        if (rvm_reg_gettype(arg2) != RVM_DTYPE_JSOBJECT) {
                RVM_ABORT(cpu, RVM_E_NOTOBJECT);
        }
-       if (RVM_REG_GETTYPE(arg3) == RVM_DTYPE_LONG || RVM_REG_GETTYPE(arg3) == RVM_DTYPE_UNSIGNED) {
+       if (RVM_REG_GETTYPE(arg3) == RVM_DTYPE_SINGED || RVM_REG_GETTYPE(arg3) == RVM_DTYPE_UNSIGNED) {
                index = r_map_lookup_l(a, -1, RVM_REG_GETL(arg3));
                if (index < 0)
                        index = r_map_gckey_add_l(a, cpu->gc, RVM_REG_GETL(arg3), NULL);
@@ -1627,7 +1627,7 @@ static void rvm_op_maplookupadd(rvmcpu_t *cpu, rvm_asmins_t *ins)
                RVM_ABORT(cpu, RVM_E_ILLEGAL);
        }
        RVM_REG_CLEAR(arg1);
-       RVM_REG_SETTYPE(arg1, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(arg1, RVM_DTYPE_SINGED);
        RVM_REG_SETL(arg1, index);
 }
 
@@ -1636,7 +1636,7 @@ static void rvm_op_mapaddr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rvmreg_t *arg1 = RVM_CPUREG_PTR(cpu, ins->op1);
        rvmreg_t *arg2 = RVM_CPUREG_PTR(cpu, ins->op2);
-       rvmreg_t tmp = rvm_reg_create_long(0);
+       rvmreg_t tmp = rvm_reg_create_signed(0);
        rmap_t *a;
        rpointer value;
        long index;
@@ -1659,7 +1659,7 @@ static void rvm_op_mapldr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rvmreg_t *arg1 = RVM_CPUREG_PTR(cpu, ins->op1);
        rvmreg_t *arg2 = RVM_CPUREG_PTR(cpu, ins->op2);
-       rvmreg_t tmp = rvm_reg_create_long(0);
+       rvmreg_t tmp = rvm_reg_create_signed(0);
        rmap_t *a = NULL;
        rpointer value;
        long index;
@@ -1683,7 +1683,7 @@ static void rvm_op_mapstr(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rvmreg_t *arg1 = RVM_CPUREG_PTR(cpu, ins->op1);
        rvmreg_t *arg2 = RVM_CPUREG_PTR(cpu, ins->op2);
-       rvmreg_t tmp = rvm_reg_create_long(0);
+       rvmreg_t tmp = rvm_reg_create_signed(0);
        rmap_t *a = NULL;
        rpointer value;
        long index;
@@ -1704,7 +1704,7 @@ static void rvm_op_addra(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rvmreg_t *arg1 = RVM_CPUREG_PTR(cpu, ins->op1);
        rvmreg_t *arg2 = RVM_CPUREG_PTR(cpu, ins->op2);
-       rvmreg_t tmp = rvm_reg_create_long(0);
+       rvmreg_t tmp = rvm_reg_create_signed(0);
        rcarray_t *a = RVM_REG_GETP(arg2);
        long index;
 
@@ -1933,7 +1933,7 @@ void rvm_cpu_destroy(rvmcpu_t *cpu)
 }
 
 
-int rvm_cpu_exec(rvmcpu_t *cpu, rvm_asmins_t *prog, rword off)
+int rvm_cpu_exec(rvmcpu_t *cpu, rvm_asmins_t *prog, ruword off)
 {
        rvm_asmins_t *pi;
        rvmreg_t *regda = RVM_CPUREG_PTR(cpu, DA);
@@ -1991,7 +1991,7 @@ skipexec:
 }
 
 
-int rvm_cpu_exec_debug(rvmcpu_t *cpu, rvm_asmins_t *prog, rword off)
+int rvm_cpu_exec_debug(rvmcpu_t *cpu, rvm_asmins_t *prog, ruword off)
 {
        long line = 0;
        rvm_asmins_t *pi;
@@ -2118,7 +2118,7 @@ int rvm_cpu_abort(rvmcpu_t *cpu)
 }
 
 
-rvm_asmins_t rvm_cond_asma(rword cond, rword opcode, rword op1, rword op2, rword op3, char *data, unsigned long size)
+rvm_asmins_t rvm_cond_asma(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, char *data, unsigned long size)
 {
        rvm_asmins_t a;
 
@@ -2136,13 +2136,13 @@ rvm_asmins_t rvm_cond_asma(rword cond, rword opcode, rword op1, rword op2, rword
 }
 
 
-rvm_asmins_t rvm_asma(rword opcode, rword op1, rword op2, rword op3, char *data, unsigned long size)
+rvm_asmins_t rvm_asma(ruword opcode, ruword op1, ruword op2, ruword op3, char *data, unsigned long size)
 {
        return rvm_cond_asma(0, opcode, op1, op2, op3, data, size);
 }
 
 
-rvm_asmins_t rvm_cond_asmp(rword cond, rword opcode, rword op1, rword op2, rword op3, rpointer data)
+rvm_asmins_t rvm_cond_asmp(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, rpointer data)
 {
        rvm_asmins_t a;
 
@@ -2160,13 +2160,13 @@ rvm_asmins_t rvm_cond_asmp(rword cond, rword opcode, rword op1, rword op2, rword
 }
 
 
-rvm_asmins_t rvm_asmp(rword opcode, rword op1, rword op2, rword op3, rpointer data)
+rvm_asmins_t rvm_asmp(ruword opcode, ruword op1, ruword op2, ruword op3, rpointer data)
 {
        return rvm_cond_asmp(0, opcode, op1, op2, op3, data);
 }
 
 
-rvm_asmins_t rvm_cond_asms(rword cond, rword opcode, rword op1, rword op2, rword op3, rword data)
+rvm_asmins_t rvm_cond_asms(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, ruword data)
 {
        rvm_asmins_t a;
 
@@ -2185,13 +2185,13 @@ rvm_asmins_t rvm_cond_asms(rword cond, rword opcode, rword op1, rword op2, rword
 }
 
 
-rvm_asmins_t rvm_asms(rword opcode, rword op1, rword op2, rword op3, rword data)
+rvm_asmins_t rvm_asms(ruword opcode, ruword op1, ruword op2, ruword op3, ruword data)
 {
        return rvm_cond_asms(0, opcode, op1, op2, op3, data);
 }
 
 
-rvm_asmins_t rvm_cond_asmf(rword cond, rword opcode, rword op1, rword op2, rword op3, rword data)
+rvm_asmins_t rvm_cond_asmf(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, ruword data)
 {
        rvm_asmins_t a;
 
@@ -2209,13 +2209,13 @@ rvm_asmins_t rvm_cond_asmf(rword cond, rword opcode, rword op1, rword op2, rword
        return a;
 }
 
-rvm_asmins_t rvm_asmf(rword opcode, rword op1, rword op2, rword op3, rword data)
+rvm_asmins_t rvm_asmf(ruword opcode, ruword op1, ruword op2, ruword op3, ruword data)
 {
        return rvm_cond_asmf(0, opcode, op1, op2, op3, data);
 }
 
 
-rvm_asmins_t rvm_cond_asm(rword cond, rword opcode, rword op1, rword op2, rword op3, rword data)
+rvm_asmins_t rvm_cond_asm(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, ruword data)
 {
        rvm_asmins_t a;
 
@@ -2233,14 +2233,14 @@ rvm_asmins_t rvm_cond_asm(rword cond, rword opcode, rword op1, rword op2, rword
 }
 
 
-rvm_asmins_t rvm_asm(rword opcode, rword op1, rword op2, rword op3, rword data)
+rvm_asmins_t rvm_asm(ruword opcode, ruword op1, ruword op2, ruword op3, ruword data)
 {
        return rvm_cond_asm(0, opcode, op1, op2, op3, data);
 }
 
 
 
-rvm_asmins_t rvm_cond_asml(rword cond, rword opcode, rword op1, rword op2, rword op3, long data)
+rvm_asmins_t rvm_cond_asml(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, long data)
 {
        rvm_asmins_t a;
 
@@ -2251,20 +2251,20 @@ rvm_asmins_t rvm_cond_asml(rword cond, rword opcode, rword op1, rword op2, rword
        a.op2 = (ruint8)op2;
        a.op3 = (ruint8)op3;
        a.cond = (ruint8)cond;
-       rvm_reg_setlong(&a.data, data);
+       rvm_reg_setsigned(&a.data, data);
        if ((ruint8)op1 == DA || (ruint8)op2 == DA || (ruint8)op3 == DA)
                a.da = 1;
        return a;
 }
 
 
-rvm_asmins_t rvm_asml(rword opcode, rword op1, rword op2, rword op3, long data)
+rvm_asmins_t rvm_asml(ruword opcode, ruword op1, ruword op2, ruword op3, long data)
 {
        return rvm_cond_asml(0, opcode, op1, op2, op3, data);
 }
 
 
-rvm_asmins_t rvm_cond_asmb(rword cond, rword opcode, rword op1, rword op2, rword op3, unsigned int data)
+rvm_asmins_t rvm_cond_asmb(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, unsigned int data)
 {
        rvm_asmins_t a;
 
@@ -2282,13 +2282,13 @@ rvm_asmins_t rvm_cond_asmb(rword cond, rword opcode, rword op1, rword op2, rword
 }
 
 
-rvm_asmins_t rvm_asmb(rword opcode, rword op1, rword op2, rword op3, unsigned int data)
+rvm_asmins_t rvm_asmb(ruword opcode, ruword op1, ruword op2, ruword op3, unsigned int data)
 {
        return rvm_cond_asmb(0, opcode, op1, op2, op3, data);
 }
 
 
-rvm_asmins_t rvm_cond_asmd(rword cond, rword opcode, rword op1, rword op2, rword op3, double data)
+rvm_asmins_t rvm_cond_asmd(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, double data)
 {
        rvm_asmins_t a;
 
@@ -2305,13 +2305,13 @@ rvm_asmins_t rvm_cond_asmd(rword cond, rword opcode, rword op1, rword op2, rword
        return a;
 }
 
-rvm_asmins_t rvm_asmd(rword opcode, rword op1, rword op2, rword op3, double data)
+rvm_asmins_t rvm_asmd(ruword opcode, ruword op1, ruword op2, ruword op3, double data)
 {
        return rvm_cond_asmd(0, opcode, op1, op2, op3, data);
 }
 
 
-rvm_asmins_t rvm_cond_asm2(rword cond, rword opcode, rword op1, rword op2, rword op3, ruint32 p1, ruint32 p2)
+rvm_asmins_t rvm_cond_asm2(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, ruint32 p1, ruint32 p2)
 {
        rvm_asmins_t a;
 
@@ -2329,7 +2329,7 @@ rvm_asmins_t rvm_cond_asm2(rword cond, rword opcode, rword op1, rword op2, rword
 }
 
 
-rvm_asmins_t rvm_asm2(rword opcode, rword op1, rword op2, rword op3, ruint32 p1, ruint32 p2)
+rvm_asmins_t rvm_asm2(ruword opcode, ruword op1, ruword op2, ruword op3, ruint32 p1, ruint32 p2)
 {
        return rvm_cond_asm2(0, opcode, op1, op2, op3, p1, p2);
 }
@@ -2346,7 +2346,7 @@ rvmreg_t *rvm_cpu_alloc_global(rvmcpu_t *cpu)
 }
 
 
-int rvm_cpu_setreg(rvmcpu_t *cpu, rword regnum, const rvmreg_t *src)
+int rvm_cpu_setreg(rvmcpu_t *cpu, ruword regnum, const rvmreg_t *src)
 {
        if (regnum >= RLST)
                return -1;
@@ -2355,7 +2355,7 @@ int rvm_cpu_setreg(rvmcpu_t *cpu, rword regnum, const rvmreg_t *src)
 }
 
 
-rvmreg_t *rvm_cpu_getreg(rvmcpu_t *cpu, rword regnum)
+rvmreg_t *rvm_cpu_getreg(rvmcpu_t *cpu, ruword regnum)
 {
        if (regnum >= RLST)
                return NULL;
index 49a4b72..f06eea2 100644 (file)
@@ -165,8 +165,8 @@ enum {
 };
 
 
-#define RVM_REGISTER_BITS (8 * sizeof(rword))
-#define RVM_SIGN_BIT (((rword)1) << (RVM_REGISTER_BITS - 1))
+#define RVM_REGISTER_BITS (8 * sizeof(ruword))
+#define RVM_SIGN_BIT (((ruword)1) << (RVM_REGISTER_BITS - 1))
 #define RVM_STATUS_Z (1 << 0)
 #define RVM_STATUS_N (1 << 1)
 #define RVM_STATUS_C (1 << 2)
@@ -264,8 +264,8 @@ do { \
 #define RVM_STACK_READ(__s__, __sp__) *RVM_STACK_ADDR(__s__, __sp__)
 #define RVM_STACK_ADDR(__s__, __sp__) (((rvmreg_t*)(__s__)) + (__sp__))
 #define RVM_STACK_CHECKSIZE(__cpu__, __s__, __sp__)  ((__sp__) < (__cpu__)->stacksize ? 1 : 0)
-#define RVM_CODE2BYTE_OFFSET(__codeoff__) ((rword)(((rsword)(__codeoff__)) * ((rsword)sizeof(rvm_asmins_t))))
-#define RVM_BYTE2CODE_OFFSET(__byteoff__) ((rword)(((rsword)(__byteoff__)) / ((rsword)sizeof(rvm_asmins_t))))
+#define RVM_CODE2BYTE_OFFSET(__codeoff__) ((ruword)(((rword)(__codeoff__)) * ((rword)sizeof(rvm_asmins_t))))
+#define RVM_BYTE2CODE_OFFSET(__byteoff__) ((ruword)(((rword)(__byteoff__)) / ((rword)sizeof(rvm_asmins_t))))
 
 #define RVM_E_DIVZERO          (1)
 #define RVM_E_ILLEGAL          (2)
@@ -312,9 +312,9 @@ struct rvm_opmap_s;
 
 struct rvmcpu_s {
        rvmreg_t r[RVM_REGS_NUM];
-       rword status;
-       rword error;
-       rword abort;
+       ruword status;
+       ruword error;
+       ruword abort;
        rharray_t *switables;
        unsigned long stacksize;
        void *stack;
@@ -336,34 +336,34 @@ rvmcpu_t *rvm_cpu_create_default();
 rvmcpu_t *rvm_cpu_create(unsigned long stacksize);
 void rvm_cpu_destroy(rvmcpu_t * vm);
 int rvm_cpu_abort(rvmcpu_t *cpu);
-int rvm_cpu_exec(rvmcpu_t *cpu, rvm_asmins_t *prog, rword off);
-int rvm_cpu_exec_debug(rvmcpu_t *cpu, rvm_asmins_t *prog, rword off);
+int rvm_cpu_exec(rvmcpu_t *cpu, rvm_asmins_t *prog, ruword off);
+int rvm_cpu_exec_debug(rvmcpu_t *cpu, rvm_asmins_t *prog, ruword off);
 int rvm_cpu_swilookup(rvmcpu_t *cpu, const char *tabname, const char *swiname, rsize_t size);
 int rvm_cpu_swilookup_s(rvmcpu_t *cpu, const char *tabname, const char *swiname);
 int rvm_cpu_addswitable(rvmcpu_t * cpu, const char *tabname, rvm_switable_t *switalbe);
 rvmreg_t *rvm_cpu_alloc_global(rvmcpu_t *cpu);
-int rvm_cpu_setreg(rvmcpu_t *cpu, rword regnum, const rvmreg_t *src);
-rvmreg_t *rvm_cpu_getreg(rvmcpu_t *cpu, rword regnum);
+int rvm_cpu_setreg(rvmcpu_t *cpu, ruword regnum, const rvmreg_t *src);
+rvmreg_t *rvm_cpu_getreg(rvmcpu_t *cpu, ruword regnum);
 void rvm_cpu_dumpregs( rvmcpu_t *cpu, rvm_asmins_t *pi);
-rvm_asmins_t rvm_asm(rword opcode, rword op1, rword op2, rword op3, rword data);
-rvm_asmins_t rvm_asma(rword opcode, rword op1, rword op2, rword op3, char *data, unsigned long size);
-rvm_asmins_t rvm_asml(rword opcode, rword op1, rword op2, rword op3, long data);
-rvm_asmins_t rvm_asmb(rword opcode, rword op1, rword op2, rword op3, unsigned int data);
-rvm_asmins_t rvm_asmd(rword opcode, rword op1, rword op2, rword op3, double data);
-rvm_asmins_t rvm_asmp(rword opcode, rword op1, rword op2, rword op3, rpointer data);
-rvm_asmins_t rvm_asms(rword opcode, rword op1, rword op2, rword op3, rword data);
-rvm_asmins_t rvm_asmf(rword opcode, rword op1, rword op2, rword op3, rword data);
-rvm_asmins_t rvm_asm2(rword opcode, rword op1, rword op2, rword op3, ruint32 p1, ruint32 p2);
-
-rvm_asmins_t rvm_cond_asm(rword cond, rword opcode, rword op1, rword op2, rword op3, rword data);
-rvm_asmins_t rvm_cond_asma(rword cond, rword opcode, rword op1, rword op2, rword op3, char *data, unsigned long size);
-rvm_asmins_t rvm_cond_asml(rword cond, rword opcode, rword op1, rword op2, rword op3, long data);
-rvm_asmins_t rvm_cond_asmb(rword cond, rword opcode, rword op1, rword op2, rword op3, unsigned int data);
-rvm_asmins_t rvm_cond_asmp(rword cond, rword opcode, rword op1, rword op2, rword op3, rpointer data);
-rvm_asmins_t rvm_cond_asms(rword cond, rword opcode, rword op1, rword op2, rword op3, rword data);
-rvm_asmins_t rvm_cond_asmd(rword cond, rword opcode, rword op1, rword op2, rword op3, double data);
-rvm_asmins_t rvm_cond_asmf(rword cond, rword opcode, rword op1, rword op2, rword op3, rword data);
-rvm_asmins_t rvm_cond_asm2(rword cond, rword opcode, rword op1, rword op2, rword op3, ruint32 p1, ruint32 p2);
+rvm_asmins_t rvm_asm(ruword opcode, ruword op1, ruword op2, ruword op3, ruword data);
+rvm_asmins_t rvm_asma(ruword opcode, ruword op1, ruword op2, ruword op3, char *data, unsigned long size);
+rvm_asmins_t rvm_asml(ruword opcode, ruword op1, ruword op2, ruword op3, long data);
+rvm_asmins_t rvm_asmb(ruword opcode, ruword op1, ruword op2, ruword op3, unsigned int data);
+rvm_asmins_t rvm_asmd(ruword opcode, ruword op1, ruword op2, ruword op3, double data);
+rvm_asmins_t rvm_asmp(ruword opcode, ruword op1, ruword op2, ruword op3, rpointer data);
+rvm_asmins_t rvm_asms(ruword opcode, ruword op1, ruword op2, ruword op3, ruword data);
+rvm_asmins_t rvm_asmf(ruword opcode, ruword op1, ruword op2, ruword op3, ruword data);
+rvm_asmins_t rvm_asm2(ruword opcode, ruword op1, ruword op2, ruword op3, ruint32 p1, ruint32 p2);
+
+rvm_asmins_t rvm_cond_asm(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, ruword data);
+rvm_asmins_t rvm_cond_asma(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, char *data, unsigned long size);
+rvm_asmins_t rvm_cond_asml(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, long data);
+rvm_asmins_t rvm_cond_asmb(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, unsigned int data);
+rvm_asmins_t rvm_cond_asmp(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, rpointer data);
+rvm_asmins_t rvm_cond_asms(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, ruword data);
+rvm_asmins_t rvm_cond_asmd(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, double data);
+rvm_asmins_t rvm_cond_asmf(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, ruword data);
+rvm_asmins_t rvm_cond_asm2(ruword cond, ruword opcode, ruword op1, ruword op2, ruword op3, ruint32 p1, ruint32 p2);
 
 
 void rvm_asm_dump(rvm_asmins_t *pi, unsigned int count);
index 7ac4903..7087d04 100644 (file)
@@ -52,7 +52,7 @@ void rvm_opmap_destroy(rvm_opmap_t *opmap)
 }
 
 
-void rvm_opmap_add_binary_operator(rvm_opmap_t *opmap, unsigned short opid)
+void rvm_opmap_add_binary_operator(rvm_opmap_t *opmap, ruint16 opid)
 {
        rvm_opinfo_t opinfo;
 
@@ -63,7 +63,7 @@ void rvm_opmap_add_binary_operator(rvm_opmap_t *opmap, unsigned short opid)
 }
 
 
-void rvm_opmap_add_unary_operator(rvm_opmap_t *opmap, unsigned short opid)
+void rvm_opmap_add_unary_operator(rvm_opmap_t *opmap, ruint16 opid)
 {
        rvm_opinfo_t opinfo;
 
@@ -75,7 +75,7 @@ void rvm_opmap_add_unary_operator(rvm_opmap_t *opmap, unsigned short opid)
 }
 
 
-int rvm_opmap_set_binary_handler(rvm_opmap_t *opmap, unsigned short opid, rvm_binaryop_handler func, unsigned char firstType, unsigned char secondType)
+int rvm_opmap_set_binary_handler(rvm_opmap_t *opmap, ruint16 opid, rvm_binaryop_handler func, unsigned char firstType, unsigned char secondType)
 {
        rvm_ophandler_t *h;
        unsigned int index = RVM_OP_HANDLER(firstType, secondType);
@@ -88,7 +88,7 @@ int rvm_opmap_set_binary_handler(rvm_opmap_t *opmap, unsigned short opid, rvm_bi
 }
 
 
-int rvm_opmap_set_unary_handler(rvm_opmap_t *opmap, unsigned short opid, rvm_unaryop_handler func, unsigned char type)
+int rvm_opmap_set_unary_handler(rvm_opmap_t *opmap, ruint16 opid, rvm_unaryop_handler func, unsigned char type)
 {
        rvm_ophandler_t *h;
        rvm_opinfo_t *opinfo = ((rvm_opinfo_t*)r_array_slot(opmap->operators, opid));
@@ -100,7 +100,7 @@ int rvm_opmap_set_unary_handler(rvm_opmap_t *opmap, unsigned short opid, rvm_una
 }
 
 
-void rvm_opmap_invoke_binary_handler(rvm_opmap_t *opmap, unsigned short opid, rvmcpu_t *cpu, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_opmap_invoke_binary_handler(rvm_opmap_t *opmap, ruint16 opid, rvmcpu_t *cpu, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvm_ophandler_t *h;
        rvm_opinfo_t *opinfo;
@@ -146,7 +146,7 @@ error:
 }
 
 
-void rvm_opmap_invoke_unary_handler(rvm_opmap_t *opmap, unsigned short opid, rvmcpu_t *cpu, rvmreg_t *res, const rvmreg_t *arg)
+void rvm_opmap_invoke_unary_handler(rvm_opmap_t *opmap, ruint16 opid, rvmcpu_t *cpu, rvmreg_t *res, const rvmreg_t *arg)
 {
        rvm_ophandler_t *h;
        rvm_opinfo_t *opinfo;
index ea213cc..b73bdf5 100644 (file)
@@ -103,8 +103,8 @@ enum {
  * Important: the res pointer might be the same as one of the arguments, the operator must
  * be implemented to take care of such cases.
  */
-typedef void (*rvm_unaryop_handler)(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg);
-typedef void (*rvm_binaryop_handler)(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
+typedef void (*rvm_unaryop_handler)(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg);
+typedef void (*rvm_binaryop_handler)(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
 
 typedef union rvm_ophandler_s {
        rvm_unaryop_handler unary;
@@ -112,7 +112,7 @@ typedef union rvm_ophandler_s {
 } rvm_ophandler_t;
 
 typedef struct rvm_opinfo_s {
-       unsigned short opid;
+       ruint16 opid;
        rboolean unary;
        rvm_ophandler_t *handlers;
 } rvm_opinfo_t;
@@ -124,11 +124,11 @@ typedef struct rvm_opmap_s {
 
 rvm_opmap_t *rvm_opmap_create();
 void rvm_opmap_destroy(rvm_opmap_t *opmap);
-void rvm_opmap_add_binary_operator(rvm_opmap_t *opmap, unsigned short opid);
-void rvm_opmap_add_unary_operator(rvm_opmap_t *opmap, unsigned short opid);
-int rvm_opmap_set_binary_handler(rvm_opmap_t *opmap, unsigned short opid, rvm_binaryop_handler func, unsigned char firstType, unsigned char secondType);
-int rvm_opmap_set_unary_handler(rvm_opmap_t *opmap, unsigned short opid, rvm_unaryop_handler func, unsigned char type);
-void rvm_opmap_invoke_binary_handler(rvm_opmap_t *opmap, unsigned short opid, rvmcpu_t *cpu, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
-void rvm_opmap_invoke_unary_handler(rvm_opmap_t *opmap, unsigned short opid, rvmcpu_t *cpu, rvmreg_t *res, const rvmreg_t *arg);
+void rvm_opmap_add_binary_operator(rvm_opmap_t *opmap, ruint16 opid);
+void rvm_opmap_add_unary_operator(rvm_opmap_t *opmap, ruint16 opid);
+int rvm_opmap_set_binary_handler(rvm_opmap_t *opmap, ruint16 opid, rvm_binaryop_handler func, unsigned char firstType, unsigned char secondType);
+int rvm_opmap_set_unary_handler(rvm_opmap_t *opmap, ruint16 opid, rvm_unaryop_handler func, unsigned char type);
+void rvm_opmap_invoke_binary_handler(rvm_opmap_t *opmap, ruint16 opid, rvmcpu_t *cpu, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
+void rvm_opmap_invoke_unary_handler(rvm_opmap_t *opmap, ruint16 opid, rvmcpu_t *cpu, rvmreg_t *res, const rvmreg_t *arg);
 
 #endif
index 35afd20..6b85cc8 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_add_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_add_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
        r = op1 + op2;
        RVM_REG_SETU(res, r);
        RVM_REG_SETTYPE(res, RVM_DTYPE_UNSIGNED);
@@ -35,17 +35,17 @@ void rvm_op_add_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_add_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_add_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
        r = op1 + op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
-void rvm_op_add_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_add_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        double r;
        r = op1 + op2;
@@ -56,7 +56,7 @@ void rvm_op_add_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double
 }
 
 
-void rvm_op_concat_string_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_concat_string_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rstring_t *s1 = (rstring_t *)RVM_REG_GETP(arg1);
        rstring_t *s2 = (rstring_t *)RVM_REG_GETP(arg2);
@@ -68,9 +68,9 @@ void rvm_op_concat_string_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *r
 }
 
 
-void rvm_op_concat_long_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_concat_signed_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
-       rstring_t *s1 = r_string_create_from_long(RVM_REG_GETL(arg1));
+       rstring_t *s1 = r_string_create_from_signed(RVM_REG_GETL(arg1));
        rstring_t *s2 = (rstring_t *)RVM_REG_GETP(arg2);
        rstring_t *d = r_string_create_from_rstr(&s1->s);
        r_string_cat(d, &s2->s);
@@ -81,10 +81,10 @@ void rvm_op_concat_long_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res
 }
 
 
-void rvm_op_concat_string_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_concat_string_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rstring_t *s1 = (rstring_t *)RVM_REG_GETP(arg1);
-       rstring_t *s2 = r_string_create_from_long(RVM_REG_GETL(arg2));
+       rstring_t *s2 = r_string_create_from_signed(RVM_REG_GETL(arg2));
        rstring_t *d = r_string_create_from_rstr(&s1->s);
        r_string_cat(d, &s2->s);
        r_object_destroy((robject_t*)s2);
@@ -94,7 +94,7 @@ void rvm_op_concat_string_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res
 }
 
 
-void rvm_op_concat_double_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_concat_double_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rstring_t *s1 = r_string_create_from_double(RVM_REG_GETD(arg1));
        rstring_t *s2 = (rstring_t *)RVM_REG_GETP(arg2);
@@ -107,7 +107,7 @@ void rvm_op_concat_double_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *r
 }
 
 
-void rvm_op_concat_string_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_concat_string_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rstring_t *s1 = (rstring_t *)RVM_REG_GETP(arg1);
        rstring_t *s2 = r_string_create_from_double(RVM_REG_GETD(arg2));
index 56b306e..2df0997 100644 (file)
 extern "C" {
 #endif
 
-void rvm_op_add_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_add_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_add_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
-void rvm_op_concat_string_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
-void rvm_op_concat_long_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
-void rvm_op_concat_string_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
-void rvm_op_concat_double_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
-void rvm_op_concat_string_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
+void rvm_op_add_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_add_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_add_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_concat_string_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
+void rvm_op_concat_signed_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
+void rvm_op_concat_string_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
+void rvm_op_concat_double_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
+void rvm_op_concat_string_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2);
 
 
 #ifdef __cplusplus
index 53e8895..b5e61f9 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_and_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_and_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 & op2;
        RVM_REG_SETU(res, r);
@@ -34,19 +34,19 @@ void rvm_op_and_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_and_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_and_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
        r = op1 & op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_and_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_and_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rvm_op_and_long(cpu, opid, res, (long)op1, (long)op2);
+       rvm_op_and_signed(cpu, opid, res, (long)op1, (long)op2);
 }
index 29b67d5..22b00c7 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_and_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_and_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_and_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_and_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_and_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_and_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index b7cfb22..37c5748 100644 (file)
 
 static rvm_binopmap_t binary_operations[RVM_OPID_LAST+1];
 
-static void rvm_op_abort_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+static void rvm_op_abort_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
        RVM_ABORT(cpu, RVM_E_ILLEGAL);
 }
 
 
-static void rvm_op_abort_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+static void rvm_op_abort_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        RVM_ABORT(cpu, RVM_E_ILLEGAL);
 }
 
 
-static void rvm_op_abort_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+static void rvm_op_abort_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        RVM_ABORT(cpu, RVM_E_ILLEGAL);
 }
 
 
-static void rvm_op_binary_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+static void rvm_op_binary_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
        binary_operations[opid].unsigned_binop_fun(cpu, opid, res, op1, op2);
 }
 
 
-static void rvm_op_binary_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+static void rvm_op_binary_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        binary_operations[opid].long_binop_fun(cpu, opid, res, op1, op2);
 }
 
 
-static void rvm_op_binary_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+static void rvm_op_binary_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        binary_operations[opid].double_binop_fun(cpu, opid, res, op1, op2);
 }
 
 
-static void rvm_op_binary_unsigned_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_unsigned_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvm_op_binary_unsigned(cpu, opid, res, RVM_REG_GETU(arg1), RVM_REG_GETU(arg2));
 }
 
 
-static void rvm_op_binary_long_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_signed_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
-       rvm_op_binary_long(cpu, opid, res, RVM_REG_GETL(arg1), RVM_REG_GETL(arg2));
+       rvm_op_binary_signed(cpu, opid, res, RVM_REG_GETL(arg1), RVM_REG_GETL(arg2));
 }
 
 
-static void rvm_op_binary_double_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_double_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvm_op_binary_double(cpu, opid, res, RVM_REG_GETD(arg1), RVM_REG_GETL(arg2));
 }
 
 
-void rvm_op_binary_long_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_binary_signed_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvm_op_binary_double(cpu, opid, res, RVM_REG_GETL(arg1), RVM_REG_GETD(arg2));
 }
 
 
-static void rvm_op_binary_double_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_double_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvm_op_binary_double(cpu, opid, res, RVM_REG_GETD(arg1), RVM_REG_GETD(arg2));
 }
 
 
-static void rvm_op_binary_string_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_string_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvmreg_t s;
 
@@ -124,7 +124,7 @@ static void rvm_op_binary_string_double(rvmcpu_t *cpu, unsigned short opid, rvmr
 }
 
 
-static void rvm_op_binary_string_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_string_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvmreg_t s;
 
@@ -134,12 +134,12 @@ static void rvm_op_binary_string_long(rvmcpu_t *cpu, unsigned short opid, rvmreg
        if (rvm_reg_gettype(&s) == RVM_DTYPE_DOUBLE) {
                rvm_op_binary_double(cpu, opid, res, RVM_REG_GETD(&s), RVM_REG_GETL(arg2));
        } else {
-               rvm_op_binary_long(cpu, opid, res, RVM_REG_GETL(&s), RVM_REG_GETL(arg2));
+               rvm_op_binary_signed(cpu, opid, res, RVM_REG_GETL(&s), RVM_REG_GETL(arg2));
        }
 }
 
 
-static void rvm_op_binary_double_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_double_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvmreg_t s;
 
@@ -149,7 +149,7 @@ static void rvm_op_binary_double_string(rvmcpu_t *cpu, unsigned short opid, rvmr
 }
 
 
-static void rvm_op_binary_long_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_signed_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvmreg_t s;
 
@@ -158,19 +158,19 @@ static void rvm_op_binary_long_string(rvmcpu_t *cpu, unsigned short opid, rvmreg
        if (rvm_reg_gettype(&s) == RVM_DTYPE_DOUBLE) {
                rvm_op_binary_double(cpu, opid, res, RVM_REG_GETL(arg1), RVM_REG_GETD(&s));
        } else {
-               rvm_op_binary_long(cpu, opid, res, RVM_REG_GETL(arg1), RVM_REG_GETL(&s));
+               rvm_op_binary_signed(cpu, opid, res, RVM_REG_GETL(arg1), RVM_REG_GETL(&s));
        }
 }
 
 
-static void rvm_op_binary_nan(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+static void rvm_op_binary_nan(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvm_reg_cleanup(res);
        RVM_REG_SETTYPE(res, RVM_DTYPE_NAN);
 }
 
 
-void rvm_op_binary_insert(rvm_opmap_t *opmap, unsigned short opid, rvm_binop_unsigned u, rvm_binop_long l, rvm_binop_double d)
+void rvm_op_binary_insert(rvm_opmap_t *opmap, ruint16 opid, rvm_binop_unsigned u, rvm_binop_signed l, rvm_binop_double d)
 {
        int i;
 
@@ -189,27 +189,27 @@ void rvm_op_binary_insert(rvm_opmap_t *opmap, unsigned short opid, rvm_binop_uns
 
        rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_unsigned_unsigned, RVM_DTYPE_BOOLEAN, RVM_DTYPE_BOOLEAN);
        rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_unsigned_unsigned, RVM_DTYPE_BOOLEAN, RVM_DTYPE_UNSIGNED);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_long, RVM_DTYPE_BOOLEAN, RVM_DTYPE_LONG);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_double, RVM_DTYPE_BOOLEAN, RVM_DTYPE_DOUBLE);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_string, RVM_DTYPE_BOOLEAN, RVM_DTYPE_STRING);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_signed, RVM_DTYPE_BOOLEAN, RVM_DTYPE_SINGED);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_double, RVM_DTYPE_BOOLEAN, RVM_DTYPE_DOUBLE);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_string, RVM_DTYPE_BOOLEAN, RVM_DTYPE_STRING);
        rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_unsigned_unsigned, RVM_DTYPE_UNSIGNED, RVM_DTYPE_BOOLEAN);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_unsigned_unsigned, RVM_DTYPE_LONG, RVM_DTYPE_BOOLEAN);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_double_long, RVM_DTYPE_DOUBLE, RVM_DTYPE_BOOLEAN);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_string_long, RVM_DTYPE_STRING, RVM_DTYPE_BOOLEAN);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_unsigned_unsigned, RVM_DTYPE_SINGED, RVM_DTYPE_BOOLEAN);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_double_signed, RVM_DTYPE_DOUBLE, RVM_DTYPE_BOOLEAN);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_string_signed, RVM_DTYPE_STRING, RVM_DTYPE_BOOLEAN);
        rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_unsigned_unsigned, RVM_DTYPE_UNSIGNED, RVM_DTYPE_UNSIGNED);
        rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_double_double, RVM_DTYPE_DOUBLE, RVM_DTYPE_DOUBLE);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_long, RVM_DTYPE_LONG, RVM_DTYPE_LONG);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_long, RVM_DTYPE_UNSIGNED, RVM_DTYPE_LONG);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_long, RVM_DTYPE_LONG, RVM_DTYPE_UNSIGNED);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_double, RVM_DTYPE_LONG, RVM_DTYPE_DOUBLE);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_double, RVM_DTYPE_UNSIGNED, RVM_DTYPE_DOUBLE);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_double_long, RVM_DTYPE_DOUBLE, RVM_DTYPE_LONG);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_double_long, RVM_DTYPE_DOUBLE, RVM_DTYPE_UNSIGNED);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_string_long, RVM_DTYPE_STRING, RVM_DTYPE_UNSIGNED);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_string_long, RVM_DTYPE_STRING, RVM_DTYPE_LONG);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_signed, RVM_DTYPE_SINGED, RVM_DTYPE_SINGED);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_signed, RVM_DTYPE_UNSIGNED, RVM_DTYPE_SINGED);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_signed, RVM_DTYPE_SINGED, RVM_DTYPE_UNSIGNED);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_double, RVM_DTYPE_SINGED, RVM_DTYPE_DOUBLE);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_double, RVM_DTYPE_UNSIGNED, RVM_DTYPE_DOUBLE);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_double_signed, RVM_DTYPE_DOUBLE, RVM_DTYPE_SINGED);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_double_signed, RVM_DTYPE_DOUBLE, RVM_DTYPE_UNSIGNED);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_string_signed, RVM_DTYPE_STRING, RVM_DTYPE_UNSIGNED);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_string_signed, RVM_DTYPE_STRING, RVM_DTYPE_SINGED);
        rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_string_double, RVM_DTYPE_STRING, RVM_DTYPE_DOUBLE);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_string, RVM_DTYPE_UNSIGNED, RVM_DTYPE_STRING);
-       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_long_string, RVM_DTYPE_LONG, RVM_DTYPE_STRING);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_string, RVM_DTYPE_UNSIGNED, RVM_DTYPE_STRING);
+       rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_signed_string, RVM_DTYPE_SINGED, RVM_DTYPE_STRING);
        rvm_opmap_set_binary_handler(opmap, opid, rvm_op_binary_double_string, RVM_DTYPE_DOUBLE, RVM_DTYPE_STRING);
 }
 
@@ -221,42 +221,42 @@ void rvm_op_binary_init(rvm_opmap_t *opmap)
        for (i = 0; i < sizeof(binary_operations)/sizeof(binary_operations[0]); i++) {
                binary_operations[i].opid = RVM_OPID_NONE;
                binary_operations[i].unsigned_binop_fun = rvm_op_abort_unsigned;
-               binary_operations[i].long_binop_fun = rvm_op_abort_long;
+               binary_operations[i].long_binop_fun = rvm_op_abort_signed;
                binary_operations[i].double_binop_fun = rvm_op_abort_double;
        }
 
-       rvm_op_binary_insert(opmap, RVM_OPID_ADD, rvm_op_add_unsigned, rvm_op_add_long, rvm_op_add_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_ADD, rvm_op_add_unsigned, rvm_op_add_signed, rvm_op_add_double);
        /*
         * Overwrite RVM_OPID_ADD for string concatenation
         */
 
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_string_string, RVM_DTYPE_STRING, RVM_DTYPE_STRING);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_string_long, RVM_DTYPE_STRING, RVM_DTYPE_LONG);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_string_long, RVM_DTYPE_STRING, RVM_DTYPE_UNSIGNED);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_long_string, RVM_DTYPE_LONG, RVM_DTYPE_STRING);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_long_string, RVM_DTYPE_UNSIGNED, RVM_DTYPE_STRING);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_string_signed, RVM_DTYPE_STRING, RVM_DTYPE_SINGED);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_string_signed, RVM_DTYPE_STRING, RVM_DTYPE_UNSIGNED);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_signed_string, RVM_DTYPE_SINGED, RVM_DTYPE_STRING);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_signed_string, RVM_DTYPE_UNSIGNED, RVM_DTYPE_STRING);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_string_double, RVM_DTYPE_STRING, RVM_DTYPE_DOUBLE);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_ADD, rvm_op_concat_double_string, RVM_DTYPE_DOUBLE, RVM_DTYPE_STRING);
 
 
-       rvm_op_binary_insert(opmap, RVM_OPID_SUB, rvm_op_sub_unsigned, rvm_op_sub_long, rvm_op_sub_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_MUL, rvm_op_mul_unsigned, rvm_op_mul_long, rvm_op_mul_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_DIV, rvm_op_div_unsigned, rvm_op_div_long, rvm_op_div_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_LSL, rvm_op_lsl_unsigned, rvm_op_lsl_long, rvm_op_lsl_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_LSR, rvm_op_lsr_unsigned, rvm_op_lsr_long, rvm_op_lsr_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_LSRU, rvm_op_lsru_unsigned, rvm_op_lsru_long, rvm_op_lsru_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_AND, rvm_op_and_unsigned, rvm_op_and_long, rvm_op_and_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_XOR, rvm_op_xor_unsigned, rvm_op_xor_long, rvm_op_xor_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_OR, rvm_op_or_unsigned, rvm_op_or_long, rvm_op_or_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_CMP, rvm_op_cmp_unsigned, rvm_op_cmp_long, rvm_op_cmp_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_CMN, rvm_op_cmn_unsigned, rvm_op_cmn_long, rvm_op_cmn_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_MOD, rvm_op_mod_unsigned, rvm_op_mod_long, rvm_op_mod_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_LOGICOR, rvm_op_logicor_unsigned, rvm_op_logicor_long, rvm_op_logicor_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_LOGICAND, rvm_op_logicand_unsigned, rvm_op_logicand_long, rvm_op_logicand_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_EQ, rvm_op_eq_unsigned, rvm_op_eq_long, rvm_op_eq_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_NOTEQ, rvm_op_noteq_unsigned, rvm_op_noteq_long, rvm_op_noteq_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_LESS, rvm_op_less_unsigned, rvm_op_less_long, rvm_op_less_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_LESSEQ, rvm_op_lesseq_unsigned, rvm_op_lesseq_long, rvm_op_lesseq_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_GREATER, rvm_op_greater_unsigned, rvm_op_greater_long, rvm_op_greater_double);
-       rvm_op_binary_insert(opmap, RVM_OPID_GREATEREQ, rvm_op_greatereq_unsigned, rvm_op_greatereq_long, rvm_op_greatereq_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_SUB, rvm_op_sub_unsigned, rvm_op_sub_signed, rvm_op_sub_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_MUL, rvm_op_mul_unsigned, rvm_op_mul_signed, rvm_op_mul_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_DIV, rvm_op_div_unsigned, rvm_op_div_signed, rvm_op_div_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_LSL, rvm_op_lsl_unsigned, rvm_op_lsl_signed, rvm_op_lsl_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_LSR, rvm_op_lsr_unsigned, rvm_op_lsr_signed, rvm_op_lsr_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_LSRU, rvm_op_lsru_unsigned, rvm_op_lsru_signed, rvm_op_lsru_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_AND, rvm_op_and_unsigned, rvm_op_and_signed, rvm_op_and_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_XOR, rvm_op_xor_unsigned, rvm_op_xor_signed, rvm_op_xor_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_OR, rvm_op_or_unsigned, rvm_op_or_signed, rvm_op_or_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_CMP, rvm_op_cmp_unsigned, rvm_op_cmp_signed, rvm_op_cmp_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_CMN, rvm_op_cmn_unsigned, rvm_op_cmn_signed, rvm_op_cmn_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_MOD, rvm_op_mod_unsigned, rvm_op_mod_signed, rvm_op_mod_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_LOGICOR, rvm_op_logicor_unsigned, rvm_op_logicor_signed, rvm_op_logicor_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_LOGICAND, rvm_op_logicand_unsigned, rvm_op_logicand_signed, rvm_op_logicand_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_EQ, rvm_op_eq_unsigned, rvm_op_eq_signed, rvm_op_eq_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_NOTEQ, rvm_op_noteq_unsigned, rvm_op_noteq_signed, rvm_op_noteq_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_LESS, rvm_op_less_unsigned, rvm_op_less_signed, rvm_op_less_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_LESSEQ, rvm_op_lesseq_unsigned, rvm_op_lesseq_signed, rvm_op_lesseq_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_GREATER, rvm_op_greater_unsigned, rvm_op_greater_signed, rvm_op_greater_double);
+       rvm_op_binary_insert(opmap, RVM_OPID_GREATEREQ, rvm_op_greatereq_unsigned, rvm_op_greatereq_signed, rvm_op_greatereq_double);
 }
index a626130..febb429 100644 (file)
 extern "C" {
 #endif
 
-typedef void (*rvm_binop_unsigned)(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-typedef void (*rvm_binop_long)(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-typedef void (*rvm_binop_double)(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+typedef void (*rvm_binop_unsigned)(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+typedef void (*rvm_binop_signed)(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+typedef void (*rvm_binop_double)(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 
 typedef struct rvm_binopmap_s {
-       unsigned short opid;
+       ruint16 opid;
        rvm_binop_unsigned unsigned_binop_fun;
-       rvm_binop_long long_binop_fun;
+       rvm_binop_signed long_binop_fun;
        rvm_binop_double double_binop_fun;
 } rvm_binopmap_t;
 
-void rvm_op_binary_insert(rvm_opmap_t *opmap, unsigned short opid, rvm_binop_unsigned u, rvm_binop_long l, rvm_binop_double d);
+void rvm_op_binary_insert(rvm_opmap_t *opmap, ruint16 opid, rvm_binop_unsigned u, rvm_binop_signed l, rvm_binop_double d);
 void rvm_op_binary_init(rvm_opmap_t *opmap);
 
 #ifdef __cplusplus
index 8bc45b5..3c72a81 100644 (file)
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_cast_static_static(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_static_static(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        *res = *arg1;
 }
 
 
-void rvm_op_cast_double_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_double_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
-       rword r = (rword)RVM_REG_GETD(arg1);
+       ruword r = (ruword)RVM_REG_GETD(arg1);
 
        RVM_REG_CLEAR(res);
        RVM_REG_SETTYPE(res, RVM_DTYPE_UNSIGNED);
        RVM_REG_SETL(res, r);
 }
 
-void rvm_op_cast_double_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_double_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        long r = (long)RVM_REG_GETD(arg1);
 
        RVM_REG_CLEAR(res);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_REG_SETL(res, r);
 }
 
 
-void rvm_op_cast_long_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_signed_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
-       rword r = (rword)RVM_REG_GETL(arg1);
+       ruword r = (ruword)RVM_REG_GETL(arg1);
 
        RVM_REG_CLEAR(res);
        RVM_REG_SETTYPE(res, RVM_DTYPE_UNSIGNED);
@@ -57,7 +57,7 @@ void rvm_op_cast_long_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res
 }
 
 
-void rvm_op_cast_long_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_signed_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        double r = (double)RVM_REG_GETL(arg1);
 
@@ -67,9 +67,9 @@ void rvm_op_cast_long_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res,
 }
 
 
-void rvm_op_cast_long_boolean(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_signed_boolean(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
-       rword r = (rword)RVM_REG_GETL(arg1);
+       ruword r = (ruword)RVM_REG_GETL(arg1);
 
        RVM_REG_CLEAR(res);
        RVM_REG_SETTYPE(res, RVM_DTYPE_BOOLEAN);
@@ -77,9 +77,9 @@ void rvm_op_cast_long_boolean(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res,
 }
 
 
-void rvm_op_cast_double_boolean(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_double_boolean(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
-       rword r = (rword)RVM_REG_GETD(arg1);
+       ruword r = (ruword)RVM_REG_GETD(arg1);
 
        RVM_REG_CLEAR(res);
        RVM_REG_SETTYPE(res, RVM_DTYPE_BOOLEAN);
@@ -87,7 +87,7 @@ void rvm_op_cast_double_boolean(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *re
 }
 
 
-void rvm_op_cast_pointer_boolean(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_pointer_boolean(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rpointer r = (rpointer)RVM_REG_GETP(arg1);
 
@@ -97,17 +97,17 @@ void rvm_op_cast_pointer_boolean(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *r
 }
 
 
-void rvm_op_cast_unsigned_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_unsigned_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        long r = (long)RVM_REG_GETU(arg1);
 
        RVM_REG_CLEAR(res);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_REG_SETL(res, r);
 }
 
 
-void rvm_op_cast_unsigned_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_unsigned_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        double r = (double)RVM_REG_GETU(arg1);
 
@@ -117,27 +117,27 @@ void rvm_op_cast_unsigned_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *r
 }
 
 
-void rvm_op_cast_string_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_string_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvmreg_t s;
 
-       if (rvm_reg_str2long(&s, arg1) < 0)
+       if (rvm_reg_str2signed(&s, arg1) < 0)
                RVM_ABORT(cpu, RVM_E_ILLEGAL);
        rvm_reg_setunsigned(res, RVM_REG_GETL(&s));
 }
 
 
-void rvm_op_cast_string_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_string_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvmreg_t s;
 
-       if (rvm_reg_str2long(&s, arg1) < 0)
+       if (rvm_reg_str2signed(&s, arg1) < 0)
                RVM_ABORT(cpu, RVM_E_ILLEGAL);
-       rvm_reg_setlong(res, RVM_REG_GETL(&s));
+       rvm_reg_setsigned(res, RVM_REG_GETL(&s));
 }
 
 
-void rvm_op_cast_string_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
+void rvm_op_cast_string_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1, const rvmreg_t *arg2)
 {
        rvmreg_t s;
 
@@ -152,26 +152,26 @@ void rvm_op_cast_init(rvm_opmap_t *opmap)
        rvm_opmap_add_binary_operator(opmap, RVM_OPID_CAST);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_static_static, RVM_DTYPE_UNSIGNED, RVM_DTYPE_UNSIGNED);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_static_static, RVM_DTYPE_DOUBLE, RVM_DTYPE_DOUBLE);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_static_static, RVM_DTYPE_LONG, RVM_DTYPE_LONG);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_static_static, RVM_DTYPE_SINGED, RVM_DTYPE_SINGED);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_static_static, RVM_DTYPE_STRING, RVM_DTYPE_STRING);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_static_static, RVM_DTYPE_BOOLEAN, RVM_DTYPE_BOOLEAN);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_long_boolean, RVM_DTYPE_LONG, RVM_DTYPE_BOOLEAN);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_long_boolean, RVM_DTYPE_UNSIGNED, RVM_DTYPE_BOOLEAN);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_signed_boolean, RVM_DTYPE_SINGED, RVM_DTYPE_BOOLEAN);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_signed_boolean, RVM_DTYPE_UNSIGNED, RVM_DTYPE_BOOLEAN);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_double_boolean, RVM_DTYPE_DOUBLE, RVM_DTYPE_BOOLEAN);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_pointer_boolean, RVM_DTYPE_STRING, RVM_DTYPE_BOOLEAN);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_pointer_boolean, RVM_DTYPE_ARRAY, RVM_DTYPE_BOOLEAN);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_pointer_boolean, RVM_DTYPE_HARRAY, RVM_DTYPE_BOOLEAN);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_unsigned_long, RVM_DTYPE_BOOLEAN, RVM_DTYPE_LONG);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_unsigned_signed, RVM_DTYPE_BOOLEAN, RVM_DTYPE_SINGED);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_unsigned_double, RVM_DTYPE_BOOLEAN, RVM_DTYPE_DOUBLE);
 
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_long_double, RVM_DTYPE_LONG, RVM_DTYPE_DOUBLE);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_long_unsigned, RVM_DTYPE_LONG, RVM_DTYPE_UNSIGNED);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_double_long, RVM_DTYPE_DOUBLE, RVM_DTYPE_LONG);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_signed_double, RVM_DTYPE_SINGED, RVM_DTYPE_DOUBLE);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_signed_unsigned, RVM_DTYPE_SINGED, RVM_DTYPE_UNSIGNED);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_double_signed, RVM_DTYPE_DOUBLE, RVM_DTYPE_SINGED);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_double_unsigned, RVM_DTYPE_DOUBLE, RVM_DTYPE_UNSIGNED);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_unsigned_long, RVM_DTYPE_UNSIGNED, RVM_DTYPE_LONG);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_unsigned_signed, RVM_DTYPE_UNSIGNED, RVM_DTYPE_SINGED);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_unsigned_double, RVM_DTYPE_UNSIGNED, RVM_DTYPE_DOUBLE);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_string_unsigned, RVM_DTYPE_STRING, RVM_DTYPE_UNSIGNED);
-       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_string_long, RVM_DTYPE_STRING, RVM_DTYPE_LONG);
+       rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_string_signed, RVM_DTYPE_STRING, RVM_DTYPE_SINGED);
        rvm_opmap_set_binary_handler(opmap, RVM_OPID_CAST, rvm_op_cast_string_double, RVM_DTYPE_STRING, RVM_DTYPE_DOUBLE);
 
 }
index 06e30e4..1e8bcc2 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_cast_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_cast_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_cast_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_cast_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_cast_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_cast_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 void rvm_op_cast_init(rvm_opmap_t *opmap);
 
index fb577b4..be4aa1b 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_cat_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_cat_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_cat_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_cat_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_cat_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_cat_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 101e461..5ddc272 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_cmn_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_cmn_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 + op2;
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_C, r < op1 || r < op2);
@@ -35,13 +35,13 @@ void rvm_op_cmn_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_cmn_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_cmn_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        rvm_op_cmn_unsigned(cpu, opid, res, op1, op2);
 }
 
 
-void rvm_op_cmn_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_cmn_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        double r;
 
index f5c7eb4..75ee73a 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_cmn_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_cmn_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_cmn_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_cmn_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_cmn_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_cmn_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 9837ce5..858e61b 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_cmp_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_cmp_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 - op2;
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_C, op1 < op2);
@@ -36,13 +36,13 @@ void rvm_op_cmp_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_cmp_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_cmp_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        rvm_op_cmp_unsigned(cpu, opid, res, op1, op2);
 }
 
 
-void rvm_op_cmp_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_cmp_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        double r;
 
index 370656e..1145133 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_cmp_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_cmp_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_cmp_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_cmp_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_cmp_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_cmp_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index b85daa4..15e9774 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_div_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_div_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        if (!op2)
                RVM_ABORT(cpu, RVM_E_DIVZERO);
@@ -36,7 +36,7 @@ void rvm_op_div_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_div_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_div_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
@@ -44,13 +44,13 @@ void rvm_op_div_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1
                RVM_ABORT(cpu, RVM_E_DIVZERO);
        r = op1 / op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_div_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_div_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        double r;
 
index 4607d25..7e70d1d 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_div_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_div_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_div_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_div_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_div_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_div_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 6842dbf..5de3b27 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_eq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_eq_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 == op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -33,9 +33,9 @@ void rvm_op_eq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword
 }
 
 
-void rvm_op_eq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_eq_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 == op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -44,9 +44,9 @@ void rvm_op_eq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1,
 }
 
 
-void rvm_op_eq_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_eq_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 == op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
index 8b58c25..89f613a 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_eq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_eq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_eq_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_eq_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_eq_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_eq_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 154c335..2591b50 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_greater_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_greater_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 > op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -33,9 +33,9 @@ void rvm_op_greater_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res,
 }
 
 
-void rvm_op_greater_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_greater_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 > op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -44,9 +44,9 @@ void rvm_op_greater_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long
 }
 
 
-void rvm_op_greater_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_greater_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 > op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
index 902214d..3e0b4b0 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_greater_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_greater_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_greater_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_greater_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_greater_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_greater_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index b9d68d8..7f9286b 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_greatereq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_greatereq_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 >= op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -33,9 +33,9 @@ void rvm_op_greatereq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res
 }
 
 
-void rvm_op_greatereq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_greatereq_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 >= op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -44,9 +44,9 @@ void rvm_op_greatereq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, lo
 }
 
 
-void rvm_op_greatereq_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_greatereq_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 >= op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
index 98770f1..71bdea5 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_greatereq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_greatereq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_greatereq_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_greatereq_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_greatereq_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_greatereq_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index b5b994d..1cdec41 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_less_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_less_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 < op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -33,9 +33,9 @@ void rvm_op_less_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwo
 }
 
 
-void rvm_op_less_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_less_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 < op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -44,9 +44,9 @@ void rvm_op_less_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op
 }
 
 
-void rvm_op_less_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_less_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 < op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
index 278b470..47ef51b 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_less_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_less_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_less_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_less_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_less_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_less_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index df6683c..25a9380 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_lesseq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_lesseq_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 <= op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -33,9 +33,9 @@ void rvm_op_lesseq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, r
 }
 
 
-void rvm_op_lesseq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_lesseq_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 <= op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -44,9 +44,9 @@ void rvm_op_lesseq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long
 }
 
 
-void rvm_op_lesseq_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_lesseq_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 <= op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
index 514786f..c9c1e38 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_lesseq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_lesseq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_lesseq_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_lesseq_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_lesseq_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_lesseq_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 890404d..09bc2de 100644 (file)
@@ -23,9 +23,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_logicand_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_logicand_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 && op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -34,9 +34,9 @@ void rvm_op_logicand_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res,
 }
 
 
-void rvm_op_logicand_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_logicand_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 && op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -45,9 +45,9 @@ void rvm_op_logicand_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, lon
 }
 
 
-void rvm_op_logicand_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_logicand_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 && op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
index def283e..6cd925c 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_logicand_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_logicand_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_logicand_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_logicand_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_logicand_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_logicand_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 6f73603..08aba50 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-static void rvm_op_logicnot_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1)
+static void rvm_op_logicnot_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1)
 {
-       rword r;
+       ruword r;
 
        r = (RVM_REG_GETU(arg1)) ? 0 : 1;
        RVM_REG_SETU(res, r);
@@ -33,9 +33,9 @@ static void rvm_op_logicnot_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_
 }
 
 
-static void rvm_op_logicnot_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1)
+static void rvm_op_logicnot_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1)
 {
-       rword r;
+       ruword r;
 
        r = (RVM_REG_GETL(arg1)) ? 0 : 1;
        RVM_REG_SETU(res, r);
@@ -44,9 +44,9 @@ static void rvm_op_logicnot_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *r
 }
 
 
-static void rvm_op_logicnot_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1)
+static void rvm_op_logicnot_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1)
 {
-       rword r;
+       ruword r;
 
        r = (RVM_REG_GETD(arg1)) ? 0 : 1;
        RVM_REG_SETU(res, r);
@@ -55,9 +55,9 @@ static void rvm_op_logicnot_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t
 }
 
 
-static void rvm_op_logicnot_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1)
+static void rvm_op_logicnot_string(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1)
 {
-       rword r;
+       ruword r;
 
        r = (r_string_empty(RVM_REG_GETP(arg1))) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -66,7 +66,7 @@ static void rvm_op_logicnot_string(rvmcpu_t *cpu, unsigned short opid, rvmreg_t
 }
 
 
-static void rvm_op_logicnot_nan(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1)
+static void rvm_op_logicnot_nan(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1)
 {
        rvm_reg_cleanup(res);
        RVM_REG_SETTYPE(res, RVM_DTYPE_NAN);
@@ -85,7 +85,7 @@ void rvm_op_logicnot_init(rvm_opmap_t *opmap)
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_LOGICNOT, rvm_op_logicnot_unsigned, RVM_DTYPE_BOOLEAN);
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_LOGICNOT, rvm_op_logicnot_unsigned, RVM_DTYPE_ARRAY);
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_LOGICNOT, rvm_op_logicnot_unsigned, RVM_DTYPE_HARRAY);
-       rvm_opmap_set_unary_handler(opmap, RVM_OPID_LOGICNOT, rvm_op_logicnot_long, RVM_DTYPE_LONG);
+       rvm_opmap_set_unary_handler(opmap, RVM_OPID_LOGICNOT, rvm_op_logicnot_signed, RVM_DTYPE_SINGED);
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_LOGICNOT, rvm_op_logicnot_double, RVM_DTYPE_DOUBLE);
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_LOGICNOT, rvm_op_logicnot_string, RVM_DTYPE_STRING);
 }
index e0f1a17..35ad4bc 100644 (file)
@@ -23,9 +23,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_logicor_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_logicor_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 || op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -34,9 +34,9 @@ void rvm_op_logicor_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res,
 }
 
 
-void rvm_op_logicor_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_logicor_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 || op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -45,9 +45,9 @@ void rvm_op_logicor_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long
 }
 
 
-void rvm_op_logicor_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_logicor_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 || op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
index bf6c6d1..309e517 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_logicor_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_logicor_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_logicor_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_logicor_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_logicor_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_logicor_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index f2a54bb..05c2d5c 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_lsl_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_lsl_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 << op2;
        RVM_REG_SETU(res, r);
@@ -34,20 +34,20 @@ void rvm_op_lsl_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_lsl_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_lsl_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
        r = op1 << op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_lsl_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_lsl_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rvm_op_lsl_long(cpu, opid, res, (long)op1, (long)op2);
+       rvm_op_lsl_signed(cpu, opid, res, (long)op1, (long)op2);
 }
 
index d2c0fe7..c995a5b 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_lsl_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_lsl_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_lsl_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_lsl_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_lsl_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_lsl_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index d2f092b..f4c9191 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_lsr_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_lsr_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 >> op2;
        RVM_REG_SETU(res, r);
@@ -34,20 +34,20 @@ void rvm_op_lsr_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_lsr_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_lsr_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
        r = op1 >> op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_lsr_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_lsr_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rvm_op_lsr_long(cpu, opid, res, (long)op1, (long)op2);
+       rvm_op_lsr_signed(cpu, opid, res, (long)op1, (long)op2);
 }
 
index 0cf06b4..badc05c 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_lsr_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_lsr_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_lsr_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_lsr_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_lsr_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_lsr_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 1261fb1..b33a7aa 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_lsru_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_lsru_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 >> op2;
        RVM_REG_SETU(res, r);
@@ -34,14 +34,14 @@ void rvm_op_lsru_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwo
 }
 
 
-void rvm_op_lsru_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_lsru_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        rvm_op_lsru_unsigned(cpu, opid, res, op1, op2);
 }
 
 
-void rvm_op_lsru_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_lsru_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rvm_op_lsru_unsigned(cpu, opid, res, (rword)((long)op1), (rword)((long)op2));
+       rvm_op_lsru_unsigned(cpu, opid, res, (ruword)((long)op1), (ruword)((long)op2));
 }
 
index 5f621c2..f2219e2 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_lsru_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_lsru_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_lsru_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_lsru_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_lsru_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_lsru_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 900f9df..533165f 100644 (file)
@@ -23,9 +23,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_mod_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_mod_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        if (!op2)
                RVM_ABORT(cpu, RVM_E_DIVZERO);
@@ -37,7 +37,7 @@ void rvm_op_mod_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_mod_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_mod_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
@@ -45,13 +45,13 @@ void rvm_op_mod_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1
                RVM_ABORT(cpu, RVM_E_DIVZERO);
        r = op1 % op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_mod_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_mod_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        double r;
 
index 55cdbcf..98d88fa 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_mod_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_mod_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_mod_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_mod_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_mod_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_mod_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 72881a3..ac6e139 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_mul_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_mul_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 * op2;
        RVM_REG_SETU(res, r);
@@ -35,19 +35,19 @@ void rvm_op_mul_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_mul_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_mul_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
        r = op1 * op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_mul_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_mul_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        double r;
 
index 37736dd..06a293e 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_mul_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_mul_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_mul_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_mul_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_mul_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_mul_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index a2e1fad..04d0fc6 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-static void rvm_op_not_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1)
+static void rvm_op_not_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1)
 {
-       rword r;
+       ruword r;
 
        r = ~(RVM_REG_GETU(arg1));
        RVM_REG_SETU(res, r);
@@ -34,7 +34,7 @@ static void rvm_op_not_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *re
 }
 
 
-static void rvm_op_not_castunsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1)
+static void rvm_op_not_castunsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1)
 {
        rvmreg_t uarg;
 
@@ -46,7 +46,7 @@ static void rvm_op_not_castunsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t
 }
 
 
-static void rvm_op_not_nan(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, const rvmreg_t *arg1)
+static void rvm_op_not_nan(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, const rvmreg_t *arg1)
 {
        rvm_reg_cleanup(res);
        RVM_REG_SETTYPE(res, RVM_DTYPE_NAN);
@@ -65,7 +65,7 @@ void rvm_op_not_init(rvm_opmap_t *opmap)
 
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_NOT, rvm_op_not_unsigned, RVM_DTYPE_UNSIGNED);
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_NOT, rvm_op_not_unsigned, RVM_DTYPE_BOOLEAN);
-       rvm_opmap_set_unary_handler(opmap, RVM_OPID_NOT, rvm_op_not_castunsigned, RVM_DTYPE_LONG);
+       rvm_opmap_set_unary_handler(opmap, RVM_OPID_NOT, rvm_op_not_castunsigned, RVM_DTYPE_SINGED);
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_NOT, rvm_op_not_castunsigned, RVM_DTYPE_DOUBLE);
        rvm_opmap_set_unary_handler(opmap, RVM_OPID_NOT, rvm_op_not_castunsigned, RVM_DTYPE_STRING);
 }
index 90699cc..30854c8 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_noteq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_noteq_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 != op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -33,9 +33,9 @@ void rvm_op_noteq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rw
 }
 
 
-void rvm_op_noteq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_noteq_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 != op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
@@ -44,9 +44,9 @@ void rvm_op_noteq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long o
 }
 
 
-void rvm_op_noteq_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_noteq_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rword r;
+       ruword r;
 
        r = (op1 != op2) ? 1 : 0;
        RVM_REG_SETU(res, r);
index f4ebd6c..d75dfb6 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_noteq_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_noteq_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_noteq_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_noteq_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_noteq_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_noteq_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 10eeba6..56d7a16 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_or_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_or_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 | op2;
        RVM_REG_SETU(res, r);
@@ -34,19 +34,19 @@ void rvm_op_or_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword
 }
 
 
-void rvm_op_or_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_or_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
        r = op1 | op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_or_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_or_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rvm_op_or_long(cpu, opid, res, (long)op1, (long)op2);
+       rvm_op_or_signed(cpu, opid, res, (long)op1, (long)op2);
 }
index 173ce6a..76c0ef9 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_or_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_or_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_or_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_or_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_or_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_or_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index ad7bf33..8c72aaa 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_sub_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_sub_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 - op2;
        RVM_REG_SETU(res, r);
@@ -37,19 +37,19 @@ void rvm_op_sub_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_sub_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_sub_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
        r = op1 - op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_sub_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_sub_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
        double r;
 
index 2551089..74c3885 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_sub_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_sub_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_sub_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_sub_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_sub_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_sub_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index 07f3805..962a676 100644 (file)
@@ -22,9 +22,9 @@
 #include "rvm/rvmreg.h"
 
 
-void rvm_op_xor_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2)
+void rvm_op_xor_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2)
 {
-       rword r;
+       ruword r;
 
        r = op1 ^ op2;
        RVM_REG_SETU(res, r);
@@ -34,19 +34,19 @@ void rvm_op_xor_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rwor
 }
 
 
-void rvm_op_xor_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2)
+void rvm_op_xor_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2)
 {
        long r;
 
        r = op1 ^ op2;
        RVM_REG_SETL(res, r);
-       RVM_REG_SETTYPE(res, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(res, RVM_DTYPE_SINGED);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_Z, !r);
        RVM_STATUS_UPDATE(cpu, RVM_STATUS_N, r & RVM_SIGN_BIT);
 }
 
 
-void rvm_op_xor_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2)
+void rvm_op_xor_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2)
 {
-       rvm_op_xor_long(cpu, opid, res, (long)op1, (long)op2);
+       rvm_op_xor_signed(cpu, opid, res, (long)op1, (long)op2);
 }
index d3c9350..2c67771 100644 (file)
@@ -28,9 +28,9 @@
 extern "C" {
 #endif
 
-void rvm_op_xor_unsigned(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, rword op1, rword op2);
-void rvm_op_xor_long(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, long op1, long op2);
-void rvm_op_xor_double(rvmcpu_t *cpu, unsigned short opid, rvmreg_t *res, double op1, double op2);
+void rvm_op_xor_unsigned(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, ruword op1, ruword op2);
+void rvm_op_xor_signed(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, rword op1, rword op2);
+void rvm_op_xor_double(rvmcpu_t *cpu, ruint16 opid, rvmreg_t *res, double op1, double op2);
 
 #ifdef __cplusplus
 }
index fe24ffc..b2f0555 100644 (file)
@@ -233,7 +233,7 @@ void rvm_reg_setstring(rvmreg_t *r, rstring_t *ptr)
 }
 
 
-void rvm_reg_setpair(rvmreg_t *r, unsigned int p1, unsigned int p2)
+void rvm_reg_setpair(rvmreg_t *r, ruint32 p1, ruint32 p2)
 {
 
        RVM_REG_SETPAIR(r, p1, p2);
@@ -273,7 +273,7 @@ void rvm_reg_setharray(rvmreg_t *r, robject_t *ptr)
        RVM_REG_SETFLAG(r, RVM_INFOBIT_ROBJECT);
 }
 
-rvmreg_t rvm_reg_create_pair(unsigned int p1, unsigned int p2)
+rvmreg_t rvm_reg_create_pair(ruint32 p1, ruint32 p2)
 {
        rvmreg_t r;
        r_memset(&r, 0, sizeof(r));
@@ -301,11 +301,11 @@ rvmreg_t rvm_reg_create_double(double d)
 }
 
 
-rvmreg_t rvm_reg_create_long(long l)
+rvmreg_t rvm_reg_create_signed(rword l)
 {
        rvmreg_t r;
        r_memset(&r, 0, sizeof(r));
-       rvm_reg_setlong(&r, l);
+       rvm_reg_setsigned(&r, l);
        return r;
 }
 
@@ -341,9 +341,9 @@ void rvm_reg_settype(rvmreg_t *r, unsigned int type)
 }
 
 
-unsigned int rvm_reg_gettype(const rvmreg_t *r)
+rvmreg_type_t rvm_reg_gettype(const rvmreg_t *r)
 {
-       unsigned long type = RVM_REG_GETTYPE(r);
+       rvmreg_type_t type = RVM_REG_GETTYPE(r);
        return type;
 }
 
@@ -373,7 +373,7 @@ void rvm_reg_setundef(rvmreg_t *r)
 }
 
 
-void rvm_reg_setunsigned(rvmreg_t *r, rword u)
+void rvm_reg_setunsigned(rvmreg_t *r, ruword u)
 {
        RVM_REG_SETU(r, u);
        RVM_REG_SETTYPE(r, RVM_DTYPE_UNSIGNED);
@@ -381,15 +381,15 @@ void rvm_reg_setunsigned(rvmreg_t *r, rword u)
 }
 
 
-void rvm_reg_setlong(rvmreg_t *r, long l)
+void rvm_reg_setsigned(rvmreg_t *r, rword l)
 {
        RVM_REG_SETL(r, l);
-       RVM_REG_SETTYPE(r, RVM_DTYPE_LONG);
+       RVM_REG_SETTYPE(r, RVM_DTYPE_SINGED);
        RVM_REG_CLRFLAG(r, RVM_INFOBIT_ROBJECT);
 }
 
 
-void rvm_reg_setboolean(rvmreg_t *r, unsigned int b)
+void rvm_reg_setboolean(rvmreg_t *r, rboolean b)
 {
        RVM_REG_SETU(r, b ? 1 : 0);
        RVM_REG_SETTYPE(r, RVM_DTYPE_BOOLEAN);
@@ -423,7 +423,7 @@ int rvm_reg_str2num(rvmreg_t *dst, const rvmreg_t *src)
        if (!lptr)
                return -1;
        if (*lptr != '.') {
-               rvm_reg_setlong(dst, l);
+               rvm_reg_setsigned(dst, l);
                return 0;
        }
        d = r_strtod(R_STRING2ANSI(RVM_REG_GETP(src)), &dptr);
@@ -434,7 +434,7 @@ int rvm_reg_str2num(rvmreg_t *dst, const rvmreg_t *src)
 }
 
 
-int rvm_reg_str2long(rvmreg_t *dst, const rvmreg_t *src)
+int rvm_reg_str2signed(rvmreg_t *dst, const rvmreg_t *src)
 {
        char *dptr;
        double d;
@@ -442,7 +442,7 @@ int rvm_reg_str2long(rvmreg_t *dst, const rvmreg_t *src)
        d = r_strtod(R_STRING2ANSI(RVM_REG_GETP(src)), &dptr);
        if (!dptr)
                return -1;
-       rvm_reg_setlong(dst, (long)d);
+       rvm_reg_setsigned(dst, (rword)d);
        return 0;
 }
 
@@ -467,17 +467,17 @@ int rvm_reg_int(const rvmreg_t *src)
 }
 
 
-long rvm_reg_long(const rvmreg_t *src)
+rword rvm_reg_signed(const rvmreg_t *src)
 {
        R_ASSERT(src);
        return (long)RVM_REG_GETL(src);
 }
 
 
-unsigned char rvm_reg_boolean(const rvmreg_t *src)
+rboolean rvm_reg_boolean(const rvmreg_t *src)
 {
        R_ASSERT(src);
-       return (unsigned char)(RVM_REG_GETL(src) ? 1 : 0);
+       return (rboolean)(RVM_REG_GETL(src) ? 1 : 0);
 }
 
 
index fe29e8c..d580f59 100644 (file)
@@ -35,9 +35,9 @@ extern "C" {
 #endif
 
 #define RVM_DTYPE_NONE 0
-#define RVM_DTYPE_WORD RVM_DTYPE_NONE
+#define RVM_DTYPE_UWORD RVM_DTYPE_NONE
 #define RVM_DTYPE_UNSIGNED RVM_DTYPE_NONE
-#define RVM_DTYPE_LONG 1
+#define RVM_DTYPE_SINGED 1
 #define RVM_DTYPE_POINTER 2                    /* Generic pointer, it can point to any memory object */
 #define RVM_DTYPE_BOOLEAN 3
 #define RVM_DTYPE_DOUBLE 4
@@ -85,12 +85,12 @@ extern "C" {
 
 
 #define RVM_REG_GETU(__r__) (__r__)->v.w
-#define RVM_REG_SETU(__r__, __val__) do { (__r__)->v.w = (rword)(__val__); } while (0)
+#define RVM_REG_SETU(__r__, __val__) do { (__r__)->v.w = (ruword)(__val__); } while (0)
 #define RVM_CPUREG_GETU(__cpu__, __r__) RVM_CPUREG_PTR(__cpu__, __r__)->v.w
 #define RVM_CPUREG_SETU(__cpu__, __r__, __val__) RVM_REG_SETU(RVM_CPUREG_PTR(__cpu__, __r__), __val__)
 
 #define RVM_REG_GETL(__r__) (__r__)->v.l
-#define RVM_REG_SETL(__r__, __val__) do { (__r__)->v.l = (rsword)(__val__); } while (0)
+#define RVM_REG_SETL(__r__, __val__) do { (__r__)->v.l = (rword)(__val__); } while (0)
 #define RVM_CPUREG_GETL(__cpu__, __r__) RVM_CPUREG_PTR(__cpu__, __r__)->v.l
 #define RVM_CPUREG_SETL(__cpu__, __r__, __val__) RVM_REG_SETL(RVM_CPUREG_PTR(__cpu__, __r__), __val__)
 
@@ -135,7 +135,7 @@ extern "C" {
 
 
 
-#define RVM_MIN_REGSIZE (sizeof(rword))
+#define RVM_MIN_REGSIZE (sizeof(ruword))
 
 typedef ruint16 rvmreg_type_t;
 typedef ruint16 rvmreg_flags_t;
@@ -143,8 +143,8 @@ typedef ruint16 rvmreg_flags_t;
 typedef struct rvmreg_s {
        union {
                ruint64 u64;
-               rword w;
-               rsword l;
+               ruword w;
+               rword l;
                rpointer p;
                double d;
                char *s;
@@ -168,37 +168,37 @@ rvmreg_t rvm_reg_create_string(const rstr_t *s);
 rvmreg_t rvm_reg_create_array();
 rvmreg_t rvm_reg_create_harray();
 rvmreg_t rvm_reg_create_double(double d);
-rvmreg_t rvm_reg_create_long(long l);
-rvmreg_t rvm_reg_create_pair(unsigned int p1, unsigned int p2);
+rvmreg_t rvm_reg_create_signed(rword l);
+rvmreg_t rvm_reg_create_pair(ruint32 p1, ruint32 p2);
 rvmreg_t rvm_reg_create_strptr(char *s, unsigned int size);
+rvmreg_t *rvm_reg_copy(rvmreg_t *dst, const rvmreg_t *src);
+rvmreg_type_t rvm_reg_gettype(const rvmreg_t *r);
+rboolean rvm_reg_tstflag(const rvmreg_t *r, ruint16 flag);
 void rvm_reg_init(rvmreg_t *reg);
 void rvm_reg_cleanup(rvmreg_t *reg);
-rvmreg_t *rvm_reg_copy(rvmreg_t *dst, const rvmreg_t *src);
 void rvm_reg_array_unref_gcdata(robject_t *obj);
 void rvm_reg_settype(rvmreg_t *r, unsigned int type);
-unsigned int rvm_reg_gettype(const rvmreg_t *r);
-rboolean rvm_reg_tstflag(const rvmreg_t *r, ruint16 flag);
 void rvm_reg_setflag(rvmreg_t *r, ruint16 flag);
 void rvm_reg_clrflag(rvmreg_t *r, ruint16 flag);
 void rvm_reg_setundef(rvmreg_t *r);
-void rvm_reg_setunsigned(rvmreg_t *r, rword u);
-void rvm_reg_setboolean(rvmreg_t *r, unsigned int b);
-void rvm_reg_setlong(rvmreg_t *r, long l);
+void rvm_reg_setunsigned(rvmreg_t *r, ruword u);
+void rvm_reg_setboolean(rvmreg_t *r, rboolean b);
+void rvm_reg_setsigned(rvmreg_t *r, rword l);
 void rvm_reg_setdouble(rvmreg_t *r, double d);
 void rvm_reg_setpointer(rvmreg_t *r, rpointer p);
-void rvm_reg_setpair(rvmreg_t *r, unsigned int p1, unsigned int p2);
+void rvm_reg_setpair(rvmreg_t *r, ruint32 p1, ruint32 p2);
 void rvm_reg_setstrptr(rvmreg_t *r, char *s, unsigned int size);
 void rvm_reg_setstring(rvmreg_t *r, rstring_t *ptr);
 void rvm_reg_setarray(rvmreg_t *r, robject_t *ptr);
 void rvm_reg_setharray(rvmreg_t *r, robject_t *ptr);
 void rvm_reg_setjsobject(rvmreg_t *r, robject_t *ptr);
 int rvm_reg_str2num(rvmreg_t *dst, const rvmreg_t *src);
-int rvm_reg_str2long(rvmreg_t *dst, const rvmreg_t *ssrc);
+int rvm_reg_str2signed(rvmreg_t *dst, const rvmreg_t *ssrc);
 int rvm_reg_str2double(rvmreg_t *dst, const rvmreg_t *ssrc);
 
 int rvm_reg_int(const rvmreg_t *src);
-long rvm_reg_long(const rvmreg_t *src);
-unsigned char rvm_reg_boolean(const rvmreg_t *src);
+rword rvm_reg_signed(const rvmreg_t *src);
+rboolean rvm_reg_boolean(const rvmreg_t *src);
 double rvm_reg_double(const rvmreg_t *src);
 rpointer rvm_reg_pointer(const rvmreg_t *src);
 rstring_t *rvm_reg_string(const rvmreg_t *src);
index 1e0859d..454724d 100644 (file)
@@ -76,16 +76,16 @@ int rvm_relocmap_relocate(rvm_relocmap_t *relocmap, rvm_codemap_t *codemap, rvm_
 {
        rsize_t index;
        rvm_relocrecord_t *reloc;
-       rword value;
+       ruword value;
 
        for (index = 0; index < r_array_length(relocmap->records); index++) {
                reloc = rvm_relocmap_get(relocmap, index);
                value = rvm_codemap_resolve(codemap, reloc->label, err);
-               if (value == (rword)-1)
+               if (value == (ruword)-1)
                        return -1;
                if (reloc->target == RVM_RELOC_CODE) {
                        if (reloc->type == RVM_RELOC_BRANCH) {
-                               code[reloc->offset].data.v.w = RVM_BYTE2CODE_OFFSET(value - (rword)&code[reloc->offset]);
+                               code[reloc->offset].data.v.w = RVM_BYTE2CODE_OFFSET(value - (ruword)&code[reloc->offset]);
                        } else if (reloc->type == RVM_RELOC_JUMP) {
                                code[reloc->offset].data.v.w = value - RVM_CODE2BYTE_OFFSET(1);
                        } else if (reloc->type == RVM_RELOC_STRING) {
index 4ac309b..acf424d 100644 (file)
@@ -35,7 +35,7 @@ int main(int argc, char *argv[])
        vmcode[off++] = rvm_asm(RVM_MOV, R1, DA, XX, -2);
        vmcode[off++] = rvm_asm(RVM_MOV, R2, DA, XX, -3);
        vmcode[off++] = rvm_asm(RVM_MOV, R3, DA, XX, 1);
-       vmcode[off++] = rvm_asm(RVM_MOV, R4, DA, XX, (rword)0x7FFFEEDD00FFEEDD);
+       vmcode[off++] = rvm_asm(RVM_MOV, R4, DA, XX, (ruword)0x7FFFEEDD00FFEEDD);
        vmcode[off++] = rvm_asm(RVM_MOV, R5, DA, XX, 3);
 
        vmcode[off++] = rvm_asm(RVM_ADDS, R0, R0, R1, 0);       /* N */
index 6e7918b..722f3e2 100644 (file)
@@ -29,9 +29,9 @@ static void test_swi_print_r(rvmcpu_t *cpu, rvm_asmins_t *ins)
        ruint8 R = ins->op1;
        rvmreg_t *r = RVM_CPUREG_PTR(cpu, R);
 
-       if (rvm_reg_gettype(r) == RVM_DTYPE_WORD)
+       if (rvm_reg_gettype(r) == RVM_DTYPE_UWORD)
                fprintf(stdout, "R%d = %ld\n", R, RVM_REG_GETL(r));
-       else if (rvm_reg_gettype(r) == RVM_DTYPE_LONG)
+       else if (rvm_reg_gettype(r) == RVM_DTYPE_SINGED)
                fprintf(stdout, "R%d = %ld\n", R, RVM_REG_GETL(r));
        else if (rvm_reg_gettype(r) == RVM_DTYPE_DOUBLE)
                fprintf(stdout, "R%d = %5.2f\n", R, RVM_REG_GETD(r));
@@ -73,7 +73,7 @@ int main(int argc, char *argv[])
        vmcode[off++] = rvm_asmp(RVM_LDRR, R0, DA, XX, &d2);
        vmcode[off++] = rvm_asm(RVM_TYPE, R1, R0, XX, 0);
        vmcode[off++] = rvm_asm(RVM_OPSWI(rvm_cpu_swilookup_s(vm, "switable", "print")), R1, XX, XX, 0);
-       vmcode[off++] = rvm_asm(RVM_CAST, R0, R0, DA, RVM_DTYPE_LONG);
+       vmcode[off++] = rvm_asm(RVM_CAST, R0, R0, DA, RVM_DTYPE_SINGED);
        vmcode[off++] = rvm_asm(RVM_OPSWI(rvm_cpu_swilookup_s(vm, "switable", "print")), R0, XX, XX, 0);
        vmcode[off++] = rvm_asm(RVM_MOV, R1, DA, XX, 2);
        vmcode[off++] = rvm_asm(RVM_ADD, R0, R1, R0, 0);
@@ -85,7 +85,7 @@ int main(int argc, char *argv[])
        vmcode[off++] = rvm_asmp(RVM_PRN, R1, XX, XX, 0);
        vmcode[off++] = rvm_asm(RVM_CAST, R0, R1, DA, RVM_DTYPE_UNSIGNED);
        vmcode[off++] = rvm_asmp(RVM_PRN, R0, XX, XX, 0);
-       vmcode[off++] = rvm_asm(RVM_CAST, R0, R1, DA, RVM_DTYPE_LONG);
+       vmcode[off++] = rvm_asm(RVM_CAST, R0, R1, DA, RVM_DTYPE_SINGED);
        vmcode[off++] = rvm_asmp(RVM_PRN, R0, XX, XX, 0);
        vmcode[off++] = rvm_asm(RVM_CAST, R0, R1, DA, RVM_DTYPE_DOUBLE);
        vmcode[off++] = rvm_asmp(RVM_PRN, R0, XX, XX, 0);
index 2e30e88..779a364 100644 (file)
@@ -34,23 +34,23 @@ int main(int argc, char *argv[])
        vmcode[off++] = rvm_asm(RVM_MOV, R0, DA, XX, 0);
        vmcode[off++] = rvm_asm(RVM_MOV, R0, DA, XX, 0);
        vmcode[off++] = rvm_asm(RVM_CLZ, R0, R0, XX, 0);
-       VMTEST_REG(vmcode, off, 0, sizeof(rword) * 8, "CLZ 0");
+       VMTEST_REG(vmcode, off, 0, sizeof(ruword) * 8, "CLZ 0");
 
        vmcode[off++] = rvm_asm(RVM_MOV, R0, DA, XX, 0);
        vmcode[off++] = rvm_asm(RVM_MOV, R1, DA, XX, 1 << 0);
        vmcode[off++] = rvm_asm(RVM_CLZ, R0, R1, XX, 0);
-       VMTEST_REG(vmcode, off, 0, sizeof(rword) * 8 - 1, "CLZ 1");
+       VMTEST_REG(vmcode, off, 0, sizeof(ruword) * 8 - 1, "CLZ 1");
 
        vmcode[off++] = rvm_asm(RVM_MOV, R0, DA, XX, 0);
        vmcode[off++] = rvm_asm(RVM_MOV, R1, DA, XX, 1 << 1);
        vmcode[off++] = rvm_asm(RVM_CLZ, R0, R1, XX, 0);
-       VMTEST_REG(vmcode, off, 0, sizeof(rword) * 8 - 2, "CLZ 2");
+       VMTEST_REG(vmcode, off, 0, sizeof(ruword) * 8 - 2, "CLZ 2");
 
 
        vmcode[off++] = rvm_asm(RVM_MOV, R0, DA, XX, 0);
        vmcode[off++] = rvm_asm(RVM_MOV, R1, DA, XX, 1UL << 31);
        vmcode[off++] = rvm_asm(RVM_CLZ, R0, R1, XX, 0);
-       VMTEST_REG(vmcode, off, 0, sizeof(rword) * 8 - 32, "CLZ (1<<31)");
+       VMTEST_REG(vmcode, off, 0, sizeof(ruword) * 8 - 32, "CLZ (1<<31)");
 
        vmcode[off++] = rvm_asm(RVM_EXT, R0, XX, XX, 0);
 #ifdef EXECDEBUG
index d35892e..3ef4e94 100644 (file)
@@ -25,8 +25,8 @@
 int main(int argc, char *argv[])
 {
        unsigned int ret = 0;
-       rword s =  -2;
-       rword d =  0;
+       ruword s =  -2;
+       ruword d =  0;
        unsigned int off = 0;
        rvm_asmins_t vmcode[256];
        rvmcpu_t *vm = rvm_cpu_create_default();
index 4dcc9d5..bf4524e 100644 (file)
@@ -35,7 +35,7 @@ int main(int argc, char *argv[])
        vmcode[off++] = rvm_asm(RVM_LSL, R0, R1, DA, 3);
        vmcode[off++] = rvm_asm(RVM_LSR, R0, R0, DA, 3);
        vmcode[off++] = rvm_asm(RVM_ROR, R0, R0, DA, 1);
-       vmcode[off++] = rvm_asm(RVM_ROR, R0, R0, DA, sizeof(rword) * 8 - 1);
+       vmcode[off++] = rvm_asm(RVM_ROR, R0, R0, DA, sizeof(ruword) * 8 - 1);
        VMTEST_REG(vmcode, off, 0, 1, "SHIFT");
 
        vmcode[off++] = rvm_asm(RVM_EXT, R0, XX, XX, 0);
index 3d6d81d..438e682 100644 (file)
@@ -27,7 +27,7 @@
 
 static void test_swi_print_r(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res = RVM_CPUREG_GETU(cpu, ins->op1);
+       ruword res = RVM_CPUREG_GETU(cpu, ins->op1);
        fprintf(stdout, "R%d = %d\n", ins->op1, (int)res);
 }
 
index 9c35fb1..b31c8b9 100644 (file)
@@ -30,9 +30,9 @@ static void test_swi_print_r(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rvmreg_t *r = RVM_CPUREG_PTR(cpu, ins->op1);
 
-       if (rvm_reg_gettype(r) == RVM_DTYPE_WORD)
+       if (rvm_reg_gettype(r) == RVM_DTYPE_UWORD)
                fprintf(stdout, "R%d = %ld\n", ins->op1, RVM_REG_GETL(r));
-       else if (rvm_reg_gettype(r) == RVM_DTYPE_LONG)
+       else if (rvm_reg_gettype(r) == RVM_DTYPE_SINGED)
                fprintf(stdout, "R%d = %ld\n", ins->op1, RVM_REG_GETL(r));
        else if (rvm_reg_gettype(r) == RVM_DTYPE_DOUBLE)
                fprintf(stdout, "R%d = %5.2f\n", ins->op1, RVM_REG_GETD(r));
index d32ecc7..9480b6f 100644 (file)
@@ -33,7 +33,7 @@ static void test_swi_print_r(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
        rvmreg_t *r = RVM_CPUREG_PTR(cpu, ins->op1);
 
-       if (rvm_reg_gettype(r) == RVM_DTYPE_LONG)
+       if (rvm_reg_gettype(r) == RVM_DTYPE_SINGED)
                fprintf(stdout, "R%d = %ld\n", ins->op1, RVM_REG_GETL(r));
        else if (rvm_reg_gettype(r) == RVM_DTYPE_DOUBLE)
                fprintf(stdout, "R%d = %5.2f\n", ins->op1, RVM_REG_GETD(r));
@@ -72,7 +72,7 @@ int main(int argc, char *argv[])
 
        ag = rvm_reg_create_double(4.55);
        rh = rvm_reg_create_string_ansi("Hello World");
-       rt = rvm_reg_create_long(55);
+       rt = rvm_reg_create_signed(55);
 
        na = r_harray_create_rvmreg();
        rvm_reg_setharray(&nareg, (robject_t*)na);
index 7f786c4..89fca7a 100644 (file)
@@ -52,17 +52,17 @@ typedef struct rvm_vardeclaration_s {
 
 typedef struct rvm_fundecl_s {
        const char *funname;
-       rword funnamesiz;
-       rword params;
-       rword codestart;
-       rword codesize;
+       ruword funnamesiz;
+       ruword params;
+       ruword codestart;
+       ruword codesize;
 } rvm_fundecl_t;
 
 
 typedef struct rvm_funcall_s {
        const char *funname;
-       rword funnamesiz;
-       rword params;
+       ruword funnamesiz;
+       ruword params;
 } rvm_funcall_t;
 
 
@@ -74,12 +74,12 @@ typedef enum {
 
 typedef struct rvm_codespan_s {
        rvm_codespantype_t type;
-       rword codestart;
-       rword codesize;
-       rword l1;
-       rword l2;
-       rword l3;
-       rword l4;
+       ruword codestart;
+       ruword codesize;
+       ruword l1;
+       ruword l2;
+       ruword l3;
+       ruword l4;
 } rvm_codespan_t;
 
 
@@ -208,14 +208,14 @@ rvm_compiler_t *rvm_compiler_create(rpa_dbex_handle dbex)
        co->cg = rvm_codegen_create();
        co->scope = rvm_scope_create();
        co->opcodes = r_array_create(sizeof(unsigned int));
-       co->fp = r_array_create(sizeof(rword));
+       co->fp = r_array_create(sizeof(ruword));
        co->funcall = r_array_create(sizeof(rvm_funcall_t));
        co->stat = r_array_create(sizeof(rvm_costat_t));
        co->fundecl = r_array_create(sizeof(rvm_fundecl_t));
        co->codespan = r_array_create(sizeof(rvm_codespan_t));
        co->loops = r_array_create(sizeof(rvm_codespan_t*));
        co->varmap = r_array_create(sizeof(rvm_varmap_t*));
-       r_array_push(co->fp, 0, rword);
+       r_array_push(co->fp, 0, ruword);
        co->dbex = dbex;
        return co;
 }
@@ -296,7 +296,7 @@ static void rvm_js_print(rvmcpu_t *cpu, rvm_asmins_t *ins)
                r_printf("%s\n", RVM_REG_GETU(r) ? "true" : "false");
        else if (rvm_reg_gettype(r) == RVM_DTYPE_POINTER)
                r_printf("%p\n", RVM_REG_GETP(r));
-       else if (rvm_reg_gettype(r) == RVM_DTYPE_LONG)
+       else if (rvm_reg_gettype(r) == RVM_DTYPE_SINGED)
                r_printf("%ld\n", RVM_REG_GETL(r));
        else if (rvm_reg_gettype(r) == RVM_DTYPE_DOUBLE)
                r_printf("%f\n", RVM_REG_GETD(r));
@@ -671,7 +671,7 @@ int codegen_program_callback(rpa_stat_handle stat, const char *name, void *userd
 //             rvm_codegen_addins(co->cg, rvm_asm(RVM_MOV, TP, R8, XX, 0));
        } else {
                rvm_codegen_replaceins(co->cg, 0, rvm_asm(RVM_MOV, FP, SP, XX, 0));
-               rvm_codegen_replaceins(co->cg, 1, rvm_asm(RVM_ADD, SP, SP, DA, r_array_pop(co->fp, rword)));
+               rvm_codegen_replaceins(co->cg, 1, rvm_asm(RVM_ADD, SP, SP, DA, r_array_pop(co->fp, ruword)));
                off = rvm_codegen_getcodesize(co->cg);
                if (debuginfo)
                        rvm_codegen_addins(co->cg, rvm_asm(RVM_PRN, R0, XX, XX, 0));
@@ -929,8 +929,8 @@ int codegen_varalloc_to_ptr_callback(rpa_stat_handle stat, const char *name, voi
        }
 
        if (rvm_scope_count(co->scope)) {
-               r_array_inclast(co->fp, rword);
-               rvm_scope_addoffset(co->scope, input, size, r_array_last(co->fp, rword));
+               r_array_inclast(co->fp, ruword);
+               rvm_scope_addoffset(co->scope, input, size, r_array_last(co->fp, ruword));
        } else {
                rvm_scope_addpointer(co->scope, input, size, r_carray_slot_expand(co->cpu->data, r_carray_length(co->cpu->data)));
                r_carray_inclength(co->cpu->data);
@@ -965,8 +965,8 @@ int codegen_varalloc_callback(rpa_stat_handle stat, const char *name, void *user
        }
 
        if (rvm_scope_count(co->scope)) {
-               r_array_inclast(co->fp, rword);
-               rvm_scope_addoffset(co->scope, input, size, r_array_last(co->fp, rword));
+               r_array_inclast(co->fp, ruword);
+               rvm_scope_addoffset(co->scope, input, size, r_array_last(co->fp, ruword));
        } else {
                rvm_scope_addpointer(co->scope, input, size, r_carray_slot_expand(co->cpu->data, r_carray_length(co->cpu->data)));
                r_carray_inclength(co->cpu->data);
@@ -1167,8 +1167,8 @@ int codegen_fundeclparameter_callback(rpa_stat_handle stat, const char *name, vo
        }
 
        fundecl->params += 1;
-       r_array_inclast(co->fp, rword);
-       rvm_scope_addoffset(co->scope, input, size, r_array_last(co->fp, rword));
+       r_array_inclast(co->fp, ruword);
+       rvm_scope_addoffset(co->scope, input, size, r_array_last(co->fp, ruword));
        codegen_print_callback(stat, name, userdata, input, size, reason);
        codegen_dump_code(rvm_codegen_getcode(co->cg, off), rvm_codegen_getcodesize(co->cg) - off);
        return size;
@@ -1209,7 +1209,7 @@ int codegen_fundeclname_callback(rpa_stat_handle stat, const char *name, void *u
        rvm_codegen_addins(co->cg, rvm_asm(RVM_ADD, SP, FP, DA, 0));    /* Will be re-written later */
        rvm_codegen_addins(co->cg, rvm_asm(RVM_NOP, XX, XX, XX, 0xffffffff));
 
-       r_array_push(co->fp, 0, rword);
+       r_array_push(co->fp, 0, ruword);
        r_array_add(co->fundecl, &fundecl);
        rvm_scope_push(co->scope);
        rvm_costat_pushroot(co);
@@ -1225,7 +1225,7 @@ int codegen_fundecl_callback(rpa_stat_handle stat, const char *name, void *userd
        unsigned long off = rvm_codegen_getcodesize(co->cg);
        rvm_fundecl_t *fundecl = (rvm_fundecl_t *)r_array_lastslot(co->fundecl);
        rvm_varmap_t *fname;
-       rword fp = r_array_pop(co->fp, rword);
+       ruword fp = r_array_pop(co->fp, ruword);
        rvm_scope_pop(co->scope);
        fname = rvm_scope_tiplookup(co->scope, fundecl->funname, fundecl->funnamesiz);
 
@@ -1254,7 +1254,7 @@ int codegen_fundecl_callback(rpa_stat_handle stat, const char *name, void *userd
                rvm_codegen_replaceins(co->cg, fundecl->codestart + 6, rvm_asm(RVM_PUSHM, DA, XX, XX, BITS(RVM_SAVEDREGS_FIRST, RVM_SAVEDREGS_FIRST + rvm_costat_getdirty(co) - 1)));
 
        fundecl->codesize = rvm_codegen_getcodesize(co->cg) - fundecl->codestart;
-       fundecl->params = r_array_last(co->fp, rword);
+       fundecl->params = r_array_last(co->fp, ruword);
 
        r_array_removelast(co->fundecl);
        rvm_costat_pop(co);
index 66ab672..7ff5dc9 100644 (file)
@@ -25,7 +25,7 @@
 
 static void test_swi_sub(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, R0), op3 = RVM_CPUREG_GETU(cpu, R1);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, R0), op3 = RVM_CPUREG_GETU(cpu, R1);
 
        res = op2 - op3;
        RVM_CPUREG_SETU(cpu, R0, res);
@@ -34,7 +34,7 @@ static void test_swi_sub(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void test_swi_mul(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       rword res, op2 = RVM_CPUREG_GETU(cpu, R0), op3 = RVM_CPUREG_GETU(cpu, R1);
+       ruword res, op2 = RVM_CPUREG_GETU(cpu, R0), op3 = RVM_CPUREG_GETU(cpu, R1);
 
        res = op2 * op3;
        RVM_CPUREG_SETU(cpu, R0, res);
index 72059a7..3b5902e 100644 (file)
@@ -42,7 +42,7 @@ static void test_swi_cat(rvmcpu_t *cpu, rvm_asmins_t *ins)
 
 static void test_swi_print_r(rvmcpu_t *cpu, rvm_asmins_t *ins)
 {
-       if (rvm_reg_gettype(RVM_CPUREG_PTR(cpu, ins->op1)) == RVM_DTYPE_LONG)
+       if (rvm_reg_gettype(RVM_CPUREG_PTR(cpu, ins->op1)) == RVM_DTYPE_SINGED)
                fprintf(stdout, "R%d = %ld\n", ins->op1, RVM_CPUREG_GETL(cpu, ins->op1));
        else if (rvm_reg_gettype(RVM_CPUREG_PTR(cpu, ins->op1)) == RVM_DTYPE_DOUBLE)
                fprintf(stdout, "R%d = %5.2f\n", ins->op1, RVM_CPUREG_GETD(cpu, ins->op1));
index 11b4d12..d6a22b4 100644 (file)
@@ -17,7 +17,7 @@ int main(int argc, char *argv[])
        char test_script1[] = "print('ARGS[0]: ' + ARGS[0]); print('ARGS[1]: ' + ARGS[1]);print('ARGS.count: ' + ARGS.count);(ARGS[0]+ARGS[1])*3;";
 
 //     jse->debugexec = 1;
-       r_printf("result: %ld\n", rvm_reg_long(rjs_engine_args_exec_s(jse, test_script1, 2, rvm_reg_create_long(2), rvm_reg_create_long(3))));
+       r_printf("result: %ld\n", rvm_reg_signed(rjs_engine_args_exec_s(jse, test_script1, 2, rvm_reg_create_signed(2), rvm_reg_create_signed(3))));
        rjs_engine_destroy(jse);
        return 0;
 }
index 93ed78e..cbd0535 100644 (file)
@@ -18,7 +18,7 @@ int main(int argc, char *argv[])
        char test_script2[] = "function person(name, age, job) {this.name = name; this.age = age; this.job = job;} var me = new person('Martin', 25, 'Slacker');";
 
 //     jse->debugexec = 1;
-       r_printf("script: %s result: %ld\n", test_script1, rvm_reg_long(rjs_engine_exec_s(jse, test_script1)));
+       r_printf("script: %s result: %ld\n", test_script1, rvm_reg_signed(rjs_engine_exec_s(jse, test_script1)));
        rjs_engine_exec_s(jse, test_script2);
        r_printf("Name: %s\n", r_string_ansi(rvm_reg_string(rjs_engine_exec_s(jse, "me.name;"))));
        r_printf("Job: %s\n", r_string_ansi(rvm_reg_string(rjs_engine_exec_s(jse, "me.job;"))));