mirror of
https://github.com/simple64/simple64.git
synced 2026-11-12 06:38:43 +01:00
update parallel rsp
This commit is contained in:
1 parent
94abbaa612
commit
e55c90c04d
181 files changed
+1314
-18772
No files matched your search
@@ -123,6 +123,11 @@ typedef jit_int32_t jit_bool_t;
|
||||
typedef jit_int32_t jit_gpr_t;
|
||||
typedef jit_int32_t jit_fpr_t;
|
||||
|
||||
#if !defined(__powerpc__) && \
|
||||
(defined(__POWERPC__) || defined(__ppc__) || defined(__PPC__))
|
||||
#define __powerpc__ 1
|
||||
#endif
|
||||
|
||||
#if defined(__i386__) || defined(__x86_64__)
|
||||
# include <lightning/jit_x86.h>
|
||||
#elif defined(__mips__)
|
||||
@@ -339,6 +344,11 @@ typedef enum {
|
||||
#define jit_movr(u,v) jit_new_node_ww(jit_code_movr,u,v)
|
||||
#define jit_movi(u,v) jit_new_node_ww(jit_code_movi,u,v)
|
||||
jit_code_movr, jit_code_movi,
|
||||
|
||||
#define jit_movnr(u,v,w) jit_new_node_www(jit_code_movnr,u,v,w)
|
||||
#define jit_movzr(u,v,w) jit_new_node_www(jit_code_movzr,u,v,w)
|
||||
jit_code_movnr, jit_code_movzr,
|
||||
|
||||
#define jit_extr_c(u,v) jit_new_node_ww(jit_code_extr_c,u,v)
|
||||
#define jit_extr_uc(u,v) jit_new_node_ww(jit_code_extr_uc,u,v)
|
||||
jit_code_extr_c, jit_code_extr_uc,
|
||||
@@ -891,6 +901,18 @@ typedef enum {
|
||||
#define jit_movr_d_w(u, v) jit_new_node_ww(jit_code_movr_d_w, u, v)
|
||||
#define jit_movi_d_w(u, v) jit_new_node_wd(jit_code_movi_d_w, u, v)
|
||||
|
||||
#define jit_bswapr_us(u,v) jit_new_node_ww(jit_code_bswapr_us,u,v)
|
||||
jit_code_bswapr_us,
|
||||
#define jit_bswapr_ui(u,v) jit_new_node_ww(jit_code_bswapr_ui,u,v)
|
||||
jit_code_bswapr_ui,
|
||||
#define jit_bswapr_ul(u,v) jit_new_node_ww(jit_code_bswapr_ul,u,v)
|
||||
jit_code_bswapr_ul,
|
||||
#if __WORDSIZE == 32
|
||||
#define jit_bswapr(u,v) jit_new_node_ww(jit_code_bswapr_ui,u,v)
|
||||
#else
|
||||
#define jit_bswapr(u,v) jit_new_node_ww(jit_code_bswapr_ul,u,v)
|
||||
#endif
|
||||
|
||||
jit_code_last_code
|
||||
} jit_code_t;
|
||||
|
||||
@@ -1011,6 +1033,12 @@ extern void _jit_retr_d(jit_state_t*, jit_fpr_t);
|
||||
extern void _jit_reti_d(jit_state_t*, jit_float64_t);
|
||||
extern void _jit_retval_d(jit_state_t*, jit_fpr_t);
|
||||
|
||||
#define jit_get_reg(s) _jit_get_reg(_jit,s)
|
||||
extern jit_int32_t _jit_get_reg(jit_state_t*, jit_int32_t);
|
||||
|
||||
#define jit_unget_reg(r) _jit_unget_reg(_jit,r)
|
||||
extern void _jit_unget_reg(jit_state_t*, jit_int32_t);
|
||||
|
||||
#define jit_new_node(c) _jit_new_node(_jit,c)
|
||||
extern jit_node_t *_jit_new_node(jit_state_t*, jit_code_t);
|
||||
#define jit_new_node_w(c,u) _jit_new_node_w(_jit,c,u)
|
||||
|
||||
@@ -123,6 +123,11 @@ typedef jit_int32_t jit_bool_t;
|
||||
typedef jit_int32_t jit_gpr_t;
|
||||
typedef jit_int32_t jit_fpr_t;
|
||||
|
||||
#if !defined(__powerpc__) && \
|
||||
(defined(__POWERPC__) || defined(__ppc__) || defined(__PPC__))
|
||||
#define __powerpc__ 1
|
||||
#endif
|
||||
|
||||
#if defined(__i386__) || defined(__x86_64__)
|
||||
# include <lightning/jit_x86.h>
|
||||
#elif defined(__mips__)
|
||||
@@ -339,6 +344,11 @@ typedef enum {
|
||||
#define jit_movr(u,v) jit_new_node_ww(jit_code_movr,u,v)
|
||||
#define jit_movi(u,v) jit_new_node_ww(jit_code_movi,u,v)
|
||||
jit_code_movr, jit_code_movi,
|
||||
|
||||
#define jit_movnr(u,v,w) jit_new_node_www(jit_code_movnr,u,v,w)
|
||||
#define jit_movzr(u,v,w) jit_new_node_www(jit_code_movzr,u,v,w)
|
||||
jit_code_movnr, jit_code_movzr,
|
||||
|
||||
#define jit_extr_c(u,v) jit_new_node_ww(jit_code_extr_c,u,v)
|
||||
#define jit_extr_uc(u,v) jit_new_node_ww(jit_code_extr_uc,u,v)
|
||||
jit_code_extr_c, jit_code_extr_uc,
|
||||
@@ -891,6 +901,18 @@ typedef enum {
|
||||
#define jit_movr_d_w(u, v) jit_new_node_ww(jit_code_movr_d_w, u, v)
|
||||
#define jit_movi_d_w(u, v) jit_new_node_wd(jit_code_movi_d_w, u, v)
|
||||
|
||||
#define jit_bswapr_us(u,v) jit_new_node_ww(jit_code_bswapr_us,u,v)
|
||||
jit_code_bswapr_us,
|
||||
#define jit_bswapr_ui(u,v) jit_new_node_ww(jit_code_bswapr_ui,u,v)
|
||||
jit_code_bswapr_ui,
|
||||
#define jit_bswapr_ul(u,v) jit_new_node_ww(jit_code_bswapr_ul,u,v)
|
||||
jit_code_bswapr_ul,
|
||||
#if __WORDSIZE == 32
|
||||
#define jit_bswapr(u,v) jit_new_node_ww(jit_code_bswapr_ui,u,v)
|
||||
#else
|
||||
#define jit_bswapr(u,v) jit_new_node_ww(jit_code_bswapr_ul,u,v)
|
||||
#endif
|
||||
|
||||
jit_code_last_code
|
||||
} jit_code_t;
|
||||
|
||||
@@ -1011,6 +1033,12 @@ extern void _jit_retr_d(jit_state_t*, jit_fpr_t);
|
||||
extern void _jit_reti_d(jit_state_t*, jit_float64_t);
|
||||
extern void _jit_retval_d(jit_state_t*, jit_fpr_t);
|
||||
|
||||
#define jit_get_reg(s) _jit_get_reg(_jit,s)
|
||||
extern jit_int32_t _jit_get_reg(jit_state_t*, jit_int32_t);
|
||||
|
||||
#define jit_unget_reg(r) _jit_unget_reg(_jit,r)
|
||||
extern void _jit_unget_reg(jit_state_t*, jit_int32_t);
|
||||
|
||||
#define jit_new_node(c) _jit_new_node(_jit,c)
|
||||
extern jit_node_t *_jit_new_node(jit_state_t*, jit_code_t);
|
||||
#define jit_new_node_w(c,u) _jit_new_node_w(_jit,c,u)
|
||||
|
||||
@@ -34,9 +34,9 @@
|
||||
typedef enum {
|
||||
#define jit_r(i) (_V0 + (i))
|
||||
#if NEW_ABI
|
||||
# define jit_r_num() 7
|
||||
# define jit_r_num() 8
|
||||
#else
|
||||
# define jit_r_num() 11
|
||||
# define jit_r_num() 12
|
||||
#endif
|
||||
#define jit_v(i) (_S0 + (i))
|
||||
#define jit_v_num() 8
|
||||
@@ -55,6 +55,7 @@ typedef enum {
|
||||
# define JIT_R4 _T6
|
||||
# define JIT_R5 _T7
|
||||
# define JIT_R6 _T8
|
||||
# define JIT_R7 _T9
|
||||
#else
|
||||
# define JIT_R2 _T0
|
||||
# define JIT_R3 _T1
|
||||
@@ -65,6 +66,7 @@ typedef enum {
|
||||
# define JIT_R8 _T6
|
||||
# define JIT_R9 _T7
|
||||
# define JIT_R10 _T8
|
||||
# define JIT_R11 _T9
|
||||
#endif
|
||||
_V0, _V1,
|
||||
#if !NEW_ABI
|
||||
|
||||
@@ -264,8 +264,9 @@ extern jit_node_t *_jit_data(jit_state_t*, const void*,
|
||||
#define jit_cc_a0_flt 0x00000020 /* arg0 is immediate float */
|
||||
#define jit_cc_a0_dbl 0x00000040 /* arg0 is immediate double */
|
||||
#define jit_cc_a0_arg 0x00000080 /* arg1 is an argument int id */
|
||||
#define jit_cc_a1_reg 0x00000100 /* arg1 is a register */
|
||||
#define jit_cc_a1_chg 0x00000200 /* arg1 is modified */
|
||||
#define jit_cc_a0_cnd 0x00000100 /* arg1 is a conditinally set register */
|
||||
#define jit_cc_a1_reg 0x00000200 /* arg1 is a register */
|
||||
#define jit_cc_a1_chg 0x00000400 /* arg1 is modified */
|
||||
#define jit_cc_a1_int 0x00001000 /* arg1 is immediate word */
|
||||
#define jit_cc_a1_flt 0x00002000 /* arg1 is immediate float */
|
||||
#define jit_cc_a1_dbl 0x00004000 /* arg1 is immediate double */
|
||||
@@ -672,14 +673,6 @@ _jit_regarg_set(jit_state_t*, jit_node_t*, jit_int32_t);
|
||||
extern void
|
||||
_jit_regarg_clr(jit_state_t*, jit_node_t*, jit_int32_t);
|
||||
|
||||
#define jit_get_reg(s) _jit_get_reg(_jit,s)
|
||||
extern jit_int32_t
|
||||
_jit_get_reg(jit_state_t*, jit_int32_t);
|
||||
|
||||
#define jit_unget_reg(r) _jit_unget_reg(_jit,r)
|
||||
extern void
|
||||
_jit_unget_reg(jit_state_t*, jit_int32_t);
|
||||
|
||||
#define jit_save(reg) _jit_save(_jit, reg)
|
||||
extern void
|
||||
_jit_save(jit_state_t*, jit_int32_t);
|
||||
@@ -726,6 +719,7 @@ _emit_ldxi_d(jit_state_t*, jit_int32_t, jit_int32_t, jit_word_t);
|
||||
extern void
|
||||
_emit_stxi_d(jit_state_t*, jit_word_t, jit_int32_t, jit_int32_t);
|
||||
|
||||
extern void jit_init_print(void);
|
||||
extern void jit_init_debug(const char*);
|
||||
extern void jit_finish_debug(void);
|
||||
|
||||
|
||||
Reference in new issue
Block a user