NCBI C++ ToolKit
|
#include "sljitNativeMIPS_64.c"
Go to the source code of this file.
Go to the SVN repository for this file.
Macros | |
#define | SLJIT_IS_FPU_AVAILABLE 0 |
#define | TMP_REG1 (SLJIT_NUMBER_OF_REGISTERS + 2) |
#define | TMP_REG2 (SLJIT_NUMBER_OF_REGISTERS + 3) |
#define | TMP_REG3 (SLJIT_NUMBER_OF_REGISTERS + 4) |
#define | PIC_ADDR_REG TMP_REG1 |
#define | FCSR_REG 31 |
#define | RETURN_ADDR_REG 31 |
#define | EQUAL_FLAG 3 |
#define | OTHER_FLAG 1 |
#define | TMP_FREG1 (SLJIT_NUMBER_OF_FLOAT_REGISTERS + 1) |
#define | TMP_FREG2 (SLJIT_NUMBER_OF_FLOAT_REGISTERS + 2) |
#define | TMP_FREG3 (SLJIT_NUMBER_OF_FLOAT_REGISTERS + 3) |
#define | S(s) ((sljit_ins)reg_map[s] << 21) |
#define | T(t) ((sljit_ins)reg_map[t] << 16) |
#define | D(d) ((sljit_ins)reg_map[d] << 11) |
#define | FT(t) ((sljit_ins)freg_map[t] << 16) |
#define | FS(s) ((sljit_ins)freg_map[s] << 11) |
#define | FD(d) ((sljit_ins)freg_map[d] << 6) |
#define | SA(s) ((sljit_ins)(s) << 21) |
#define | TA(t) ((sljit_ins)(t) << 16) |
#define | DA(d) ((sljit_ins)(d) << 11) |
#define | IMM(imm) ((sljit_ins)(imm) & 0xffff) |
#define | SH_IMM(imm) ((sljit_ins)(imm) << 6) |
#define | DR(dr) (reg_map[dr]) |
#define | FR(dr) (freg_map[dr]) |
#define | HI(opcode) ((sljit_ins)(opcode) << 26) |
#define | LO(opcode) ((sljit_ins)(opcode)) |
#define | FMT_S (16 << 21) |
#define | FMT_D (17 << 21) |
#define | ABS_S (HI(17) | FMT_S | LO(5)) |
#define | ADD_S (HI(17) | FMT_S | LO(0)) |
#define | ADDIU (HI(9)) |
#define | ADDU (HI(0) | LO(33)) |
#define | AND (HI(0) | LO(36)) |
#define | ANDI (HI(12)) |
#define | B (HI(4)) |
#define | BAL (HI(1) | (17 << 16)) |
#define | BC1F (HI(17) | (8 << 21)) |
#define | BC1T (HI(17) | (8 << 21) | (1 << 16)) |
#define | BEQ (HI(4)) |
#define | BGEZ (HI(1) | (1 << 16)) |
#define | BGTZ (HI(7)) |
#define | BLEZ (HI(6)) |
#define | BLTZ (HI(1) | (0 << 16)) |
#define | BNE (HI(5)) |
#define | BREAK (HI(0) | LO(13)) |
#define | CFC1 (HI(17) | (2 << 21)) |
#define | C_EQ_S (HI(17) | FMT_S | LO(50)) |
#define | C_OLE_S (HI(17) | FMT_S | LO(54)) |
#define | C_OLT_S (HI(17) | FMT_S | LO(52)) |
#define | C_UEQ_S (HI(17) | FMT_S | LO(51)) |
#define | C_ULE_S (HI(17) | FMT_S | LO(55)) |
#define | C_ULT_S (HI(17) | FMT_S | LO(53)) |
#define | C_UN_S (HI(17) | FMT_S | LO(49)) |
#define | C_FD (0) |
#define | CVT_S_S (HI(17) | FMT_S | LO(32)) |
#define | DADDIU (HI(25)) |
#define | DADDU (HI(0) | LO(45)) |
#define | DDIV (HI(0) | LO(30)) |
#define | DDIVU (HI(0) | LO(31)) |
#define | DIV (HI(0) | LO(26)) |
#define | DIVU (HI(0) | LO(27)) |
#define | DMULT (HI(0) | LO(28)) |
#define | DMULTU (HI(0) | LO(29)) |
#define | DIV_S (HI(17) | FMT_S | LO(3)) |
#define | DMFC1 (HI(17) | (1 << 21)) |
#define | DMTC1 (HI(17) | (5 << 21)) |
#define | DSLL (HI(0) | LO(56)) |
#define | DSLL32 (HI(0) | LO(60)) |
#define | DSLLV (HI(0) | LO(20)) |
#define | DSRA (HI(0) | LO(59)) |
#define | DSRA32 (HI(0) | LO(63)) |
#define | DSRAV (HI(0) | LO(23)) |
#define | DSRL (HI(0) | LO(58)) |
#define | DSRL32 (HI(0) | LO(62)) |
#define | DSRLV (HI(0) | LO(22)) |
#define | DSUBU (HI(0) | LO(47)) |
#define | J (HI(2)) |
#define | JAL (HI(3)) |
#define | JALR (HI(0) | LO(9)) |
#define | JR (HI(0) | LO(8)) |
#define | LD (HI(55)) |
#define | LDL (HI(26)) |
#define | LDR (HI(27)) |
#define | LDC1 (HI(53)) |
#define | LUI (HI(15)) |
#define | LW (HI(35)) |
#define | LWL (HI(34)) |
#define | LWR (HI(38)) |
#define | LWC1 (HI(49)) |
#define | MFC1 (HI(17)) |
#define | MFHI (HI(0) | LO(16)) |
#define | MFLO (HI(0) | LO(18)) |
#define | MTC1 (HI(17) | (4 << 21)) |
#define | MULT (HI(0) | LO(24)) |
#define | MULTU (HI(0) | LO(25)) |
#define | MUL_S (HI(17) | FMT_S | LO(2)) |
#define | NEG_S (HI(17) | FMT_S | LO(7)) |
#define | NOP (HI(0) | LO(0)) |
#define | NOR (HI(0) | LO(39)) |
#define | OR (HI(0) | LO(37)) |
#define | ORI (HI(13)) |
#define | SD (HI(63)) |
#define | SDL (HI(44)) |
#define | SDR (HI(45)) |
#define | SDC1 (HI(61)) |
#define | SLT (HI(0) | LO(42)) |
#define | SLTI (HI(10)) |
#define | SLTIU (HI(11)) |
#define | SLTU (HI(0) | LO(43)) |
#define | SLL (HI(0) | LO(0)) |
#define | SLLV (HI(0) | LO(4)) |
#define | SRL (HI(0) | LO(2)) |
#define | SRLV (HI(0) | LO(6)) |
#define | SRA (HI(0) | LO(3)) |
#define | SRAV (HI(0) | LO(7)) |
#define | SUB_S (HI(17) | FMT_S | LO(1)) |
#define | SUBU (HI(0) | LO(35)) |
#define | SW (HI(43)) |
#define | SWL (HI(42)) |
#define | SWR (HI(46)) |
#define | SWC1 (HI(57)) |
#define | TRUNC_W_S (HI(17) | FMT_S | LO(13)) |
#define | XOR (HI(0) | LO(38)) |
#define | XORI (HI(14)) |
#define | ADDU_W DADDU |
#define | ADDIU_W DADDIU |
#define | SLL_W DSLL |
#define | SRA_W DSRA |
#define | SUBU_W DSUBU |
#define | STORE_W SD |
#define | LOAD_W LD |
#define | MOV_fmt(f) (HI(17) | f | LO(6)) |
#define | SIMM_MAX (0x7fff) |
#define | SIMM_MIN (-0x8000) |
#define | UIMM_MAX (0xffff) |
#define | CPU_FEATURE_DETECTED (1 << 0) |
#define | CPU_FEATURE_FPU (1 << 1) |
#define | CPU_FEATURE_FP64 (1 << 2) |
#define | CPU_FEATURE_FR (1 << 3) |
#define | LOAD_DATA 0x01 |
#define | WORD_DATA 0x00 |
#define | BYTE_DATA 0x02 |
#define | HALF_DATA 0x04 |
#define | INT_DATA 0x06 |
#define | SIGNED_DATA 0x08 |
#define | GPR_REG 0x0f |
#define | DOUBLE_DATA 0x10 |
#define | SINGLE_DATA 0x12 |
#define | MEM_MASK 0x1f |
#define | ARG_TEST 0x00020 |
#define | ALT_KEEP_CACHE 0x00040 |
#define | CUMULATIVE_OP 0x00080 |
#define | LOGICAL_OP 0x00100 |
#define | IMM_OP 0x00200 |
#define | MOVE_OP 0x00400 |
#define | SRC2_IMM 0x00800 |
#define | UNUSED_DEST 0x01000 |
#define | REG_DEST 0x02000 |
#define | REG1_SOURCE 0x04000 |
#define | REG2_SOURCE 0x08000 |
#define | SLOW_SRC1 0x10000 |
#define | SLOW_SRC2 0x20000 |
#define | SLOW_DEST 0x40000 |
#define | SELECT_OP(d, w) (!(op & SLJIT_32) ? (d) : (w)) |
#define | ARCH_32_64(a, b) b |
#define | TO_ARGW_HI(argw) (((argw) & ~0xffff) + (((argw) & 0x8000) ? 0x10000 : 0)) |
#define | EMIT_LOGICAL(op_imm, op_reg) |
#define | EMIT_SHIFT(dimm, dimm32, imm, dv, v) |
#define | CHECK_IMM(flags, srcw) |
#define | SELECT_OP3(op, src2w, D, D32, W) ((W) | ((sljit_ins)(src2w) << 6)) |
#define | FLOAT_DATA(op) (DOUBLE_DATA | ((op & SLJIT_32) >> 7)) |
#define | FMT(op) (FMT_S | (~(sljit_ins)op & SLJIT_32) << (21 - (5 + 3))) |
#define | BRANCH_LENGTH 8 |
#define | BR_Z(src) |
#define | BR_NZ(src) |
#define | BR_T() |
#define | BR_F() |
#define | RESOLVE_IMM1() |
#define | RESOLVE_IMM2() |
#define | IMM_LEFT(memw) IMM(memw) |
#define | IMM_RIGHT(memw) IMM((memw) + SSIZE_OF(sw) - 1) |
#define | IMM_32_LEFT(memw) IMM(memw) |
#define | IMM_32_RIGHT(memw) IMM((memw) + SSIZE_OF(s32) - 1) |
#define | IMM_F64_FIRST_LEFT(memw) IMM((memw) + SSIZE_OF(s32)) |
#define | IMM_F64_FIRST_RIGHT(memw) IMM((memw) + SSIZE_OF(f64) - 1) |
#define | IMM_F64_SECOND_LEFT(memw) IMM(memw) |
#define | IMM_F64_SECOND_RIGHT(memw) IMM((memw) + SSIZE_OF(s32) - 1) |
#define | IMM_16_FIRST(memw) IMM(memw) |
#define | IMM_16_SECOND(memw) IMM((memw) + 1) |
#define | MEM_CHECK_UNALIGNED(type) ((type) & (SLJIT_MEM_UNALIGNED | SLJIT_MEM_ALIGNED_16 | SLJIT_MEM_ALIGNED_32)) |
Typedefs | |
typedef sljit_u32 | sljit_ins |
Variables | |
static const sljit_u8 | reg_map [SLJIT_NUMBER_OF_REGISTERS+7] |
static const sljit_u8 | freg_map [SLJIT_NUMBER_OF_FLOAT_REGISTERS+4] |
static sljit_u32 | cpu_feature_list = 0 |
static const sljit_ins | data_transfer_insts [16+4] |
Definition at line 153 of file sljitNativeMIPS_common.c.
Definition at line 154 of file sljitNativeMIPS_common.c.
#define ADDIU (HI(9)) |
Definition at line 155 of file sljitNativeMIPS_common.c.
#define ADDIU_W DADDIU |
Definition at line 352 of file sljitNativeMIPS_common.c.
Definition at line 156 of file sljitNativeMIPS_common.c.
#define ADDU_W DADDU |
Definition at line 351 of file sljitNativeMIPS_common.c.
#define ALT_KEEP_CACHE 0x00040 |
Definition at line 900 of file sljitNativeMIPS_common.c.
Definition at line 157 of file sljitNativeMIPS_common.c.
#define ANDI (HI(12)) |
Definition at line 158 of file sljitNativeMIPS_common.c.
Definition at line 1299 of file sljitNativeMIPS_common.c.
#define ARG_TEST 0x00020 |
Definition at line 899 of file sljitNativeMIPS_common.c.
#define B (HI(4)) |
Definition at line 159 of file sljitNativeMIPS_common.c.
#define BAL (HI(1) | (17 << 16)) |
Definition at line 160 of file sljitNativeMIPS_common.c.
#define BC1F (HI(17) | (8 << 21)) |
Definition at line 165 of file sljitNativeMIPS_common.c.
#define BC1T (HI(17) | (8 << 21) | (1 << 16)) |
Definition at line 166 of file sljitNativeMIPS_common.c.
#define BEQ (HI(4)) |
Definition at line 168 of file sljitNativeMIPS_common.c.
#define BGEZ (HI(1) | (1 << 16)) |
Definition at line 169 of file sljitNativeMIPS_common.c.
#define BGTZ (HI(7)) |
Definition at line 170 of file sljitNativeMIPS_common.c.
#define BLEZ (HI(6)) |
Definition at line 171 of file sljitNativeMIPS_common.c.
#define BLTZ (HI(1) | (0 << 16)) |
Definition at line 172 of file sljitNativeMIPS_common.c.
#define BNE (HI(5)) |
Definition at line 173 of file sljitNativeMIPS_common.c.
#define BR_F | ( | ) |
Definition at line 3280 of file sljitNativeMIPS_common.c.
#define BR_NZ | ( | src | ) |
Definition at line 3258 of file sljitNativeMIPS_common.c.
#define BR_T | ( | ) |
Definition at line 3276 of file sljitNativeMIPS_common.c.
#define BR_Z | ( | src | ) |
Definition at line 3253 of file sljitNativeMIPS_common.c.
#define BRANCH_LENGTH 8 |
Definition at line 3250 of file sljitNativeMIPS_common.c.
Definition at line 174 of file sljitNativeMIPS_common.c.
#define BYTE_DATA 0x02 |
Definition at line 888 of file sljitNativeMIPS_common.c.
Definition at line 186 of file sljitNativeMIPS_common.c.
#define C_FD (0) |
Definition at line 193 of file sljitNativeMIPS_common.c.
Definition at line 187 of file sljitNativeMIPS_common.c.
Definition at line 188 of file sljitNativeMIPS_common.c.
Definition at line 189 of file sljitNativeMIPS_common.c.
Definition at line 190 of file sljitNativeMIPS_common.c.
Definition at line 191 of file sljitNativeMIPS_common.c.
Definition at line 192 of file sljitNativeMIPS_common.c.
#define CFC1 (HI(17) | (2 << 21)) |
Definition at line 175 of file sljitNativeMIPS_common.c.
#define CHECK_IMM | ( | flags, | |
srcw | |||
) |
Definition at line 2255 of file sljitNativeMIPS_common.c.
#define CPU_FEATURE_DETECTED (1 << 0) |
Definition at line 366 of file sljitNativeMIPS_common.c.
#define CPU_FEATURE_FP64 (1 << 2) |
Definition at line 368 of file sljitNativeMIPS_common.c.
#define CPU_FEATURE_FPU (1 << 1) |
Definition at line 367 of file sljitNativeMIPS_common.c.
#define CPU_FEATURE_FR (1 << 3) |
Definition at line 369 of file sljitNativeMIPS_common.c.
#define CUMULATIVE_OP 0x00080 |
Definition at line 901 of file sljitNativeMIPS_common.c.
Definition at line 195 of file sljitNativeMIPS_common.c.
Definition at line 129 of file sljitNativeMIPS_common.c.
#define DA | ( | d | ) | ((sljit_ins)(d) << 11) |
Definition at line 136 of file sljitNativeMIPS_common.c.
#define DADDIU (HI(25)) |
Definition at line 196 of file sljitNativeMIPS_common.c.
Definition at line 197 of file sljitNativeMIPS_common.c.
Definition at line 210 of file sljitNativeMIPS_common.c.
Definition at line 211 of file sljitNativeMIPS_common.c.
Definition at line 212 of file sljitNativeMIPS_common.c.
Definition at line 217 of file sljitNativeMIPS_common.c.
Definition at line 213 of file sljitNativeMIPS_common.c.
#define DMFC1 (HI(17) | (1 << 21)) |
Definition at line 221 of file sljitNativeMIPS_common.c.
#define DMTC1 (HI(17) | (5 << 21)) |
Definition at line 222 of file sljitNativeMIPS_common.c.
Definition at line 214 of file sljitNativeMIPS_common.c.
Definition at line 215 of file sljitNativeMIPS_common.c.
#define DOUBLE_DATA 0x10 |
Definition at line 894 of file sljitNativeMIPS_common.c.
#define DR | ( | dr | ) | (reg_map[dr]) |
Definition at line 140 of file sljitNativeMIPS_common.c.
Definition at line 230 of file sljitNativeMIPS_common.c.
Definition at line 231 of file sljitNativeMIPS_common.c.
Definition at line 232 of file sljitNativeMIPS_common.c.
Definition at line 233 of file sljitNativeMIPS_common.c.
Definition at line 234 of file sljitNativeMIPS_common.c.
Definition at line 235 of file sljitNativeMIPS_common.c.
Definition at line 236 of file sljitNativeMIPS_common.c.
Definition at line 237 of file sljitNativeMIPS_common.c.
Definition at line 238 of file sljitNativeMIPS_common.c.
Definition at line 239 of file sljitNativeMIPS_common.c.
#define EMIT_LOGICAL | ( | op_imm, | |
op_reg | |||
) |
Definition at line 1514 of file sljitNativeMIPS_common.c.
#define EMIT_SHIFT | ( | dimm, | |
dimm32, | |||
imm, | |||
dv, | |||
v | |||
) |
Definition at line 1537 of file sljitNativeMIPS_common.c.
#define EQUAL_FLAG 3 |
Definition at line 94 of file sljitNativeMIPS_common.c.
#define FCSR_REG 31 |
Definition at line 89 of file sljitNativeMIPS_common.c.
Definition at line 132 of file sljitNativeMIPS_common.c.
#define FLOAT_DATA | ( | op | ) | (DOUBLE_DATA | ((op & SLJIT_32) >> 7)) |
Definition at line 2841 of file sljitNativeMIPS_common.c.
Definition at line 2842 of file sljitNativeMIPS_common.c.
#define FMT_D (17 << 21) |
Definition at line 151 of file sljitNativeMIPS_common.c.
#define FMT_S (16 << 21) |
Definition at line 150 of file sljitNativeMIPS_common.c.
#define FR | ( | dr | ) | (freg_map[dr]) |
Definition at line 141 of file sljitNativeMIPS_common.c.
Definition at line 131 of file sljitNativeMIPS_common.c.
Definition at line 130 of file sljitNativeMIPS_common.c.
#define GPR_REG 0x0f |
Definition at line 893 of file sljitNativeMIPS_common.c.
#define HALF_DATA 0x04 |
Definition at line 889 of file sljitNativeMIPS_common.c.
#define HI | ( | opcode | ) | ((sljit_ins)(opcode) << 26) |
Definition at line 142 of file sljitNativeMIPS_common.c.
#define IMM | ( | imm | ) | ((sljit_ins)(imm) & 0xffff) |
Definition at line 137 of file sljitNativeMIPS_common.c.
#define IMM_16_FIRST | ( | memw | ) | IMM(memw) |
Definition at line 3939 of file sljitNativeMIPS_common.c.
#define IMM_16_SECOND | ( | memw | ) | IMM((memw) + 1) |
Definition at line 3940 of file sljitNativeMIPS_common.c.
#define IMM_32_LEFT | ( | memw | ) | IMM(memw) |
Definition at line 3933 of file sljitNativeMIPS_common.c.
#define IMM_32_RIGHT | ( | memw | ) | IMM((memw) + SSIZE_OF(s32) - 1) |
Definition at line 3934 of file sljitNativeMIPS_common.c.
#define IMM_F64_FIRST_LEFT | ( | memw | ) | IMM((memw) + SSIZE_OF(s32)) |
Definition at line 3935 of file sljitNativeMIPS_common.c.
#define IMM_F64_FIRST_RIGHT | ( | memw | ) | IMM((memw) + SSIZE_OF(f64) - 1) |
Definition at line 3936 of file sljitNativeMIPS_common.c.
#define IMM_F64_SECOND_LEFT | ( | memw | ) | IMM(memw) |
Definition at line 3937 of file sljitNativeMIPS_common.c.
#define IMM_F64_SECOND_RIGHT | ( | memw | ) | IMM((memw) + SSIZE_OF(s32) - 1) |
Definition at line 3938 of file sljitNativeMIPS_common.c.
#define IMM_LEFT | ( | memw | ) | IMM(memw) |
Definition at line 3931 of file sljitNativeMIPS_common.c.
#define IMM_OP 0x00200 |
Definition at line 903 of file sljitNativeMIPS_common.c.
Definition at line 3932 of file sljitNativeMIPS_common.c.
#define INT_DATA 0x06 |
Definition at line 890 of file sljitNativeMIPS_common.c.
#define J (HI(2)) |
Definition at line 240 of file sljitNativeMIPS_common.c.
#define JAL (HI(3)) |
Definition at line 241 of file sljitNativeMIPS_common.c.
Definition at line 242 of file sljitNativeMIPS_common.c.
Definition at line 246 of file sljitNativeMIPS_common.c.
#define LD (HI(55)) |
Definition at line 248 of file sljitNativeMIPS_common.c.
#define LDC1 (HI(53)) |
Definition at line 251 of file sljitNativeMIPS_common.c.
#define LDL (HI(26)) |
Definition at line 249 of file sljitNativeMIPS_common.c.
#define LDR (HI(27)) |
Definition at line 250 of file sljitNativeMIPS_common.c.
#define LO | ( | opcode | ) | ((sljit_ins)(opcode)) |
Definition at line 143 of file sljitNativeMIPS_common.c.
#define LOAD_DATA 0x01 |
Definition at line 886 of file sljitNativeMIPS_common.c.
#define LOAD_W LD |
Definition at line 357 of file sljitNativeMIPS_common.c.
#define LOGICAL_OP 0x00100 |
Definition at line 902 of file sljitNativeMIPS_common.c.
#define LUI (HI(15)) |
Definition at line 252 of file sljitNativeMIPS_common.c.
#define LW (HI(35)) |
Definition at line 253 of file sljitNativeMIPS_common.c.
#define LWC1 (HI(49)) |
Definition at line 256 of file sljitNativeMIPS_common.c.
#define LWL (HI(34)) |
Definition at line 254 of file sljitNativeMIPS_common.c.
#define LWR (HI(38)) |
Definition at line 255 of file sljitNativeMIPS_common.c.
#define MEM_CHECK_UNALIGNED | ( | type | ) | ((type) & (SLJIT_MEM_UNALIGNED | SLJIT_MEM_ALIGNED_16 | SLJIT_MEM_ALIGNED_32)) |
Definition at line 3946 of file sljitNativeMIPS_common.c.
#define MEM_MASK 0x1f |
Definition at line 897 of file sljitNativeMIPS_common.c.
#define MFC1 (HI(17)) |
Definition at line 257 of file sljitNativeMIPS_common.c.
Definition at line 265 of file sljitNativeMIPS_common.c.
Definition at line 266 of file sljitNativeMIPS_common.c.
#define MOVE_OP 0x00400 |
Definition at line 904 of file sljitNativeMIPS_common.c.
#define MTC1 (HI(17) | (4 << 21)) |
Definition at line 268 of file sljitNativeMIPS_common.c.
Definition at line 281 of file sljitNativeMIPS_common.c.
Definition at line 278 of file sljitNativeMIPS_common.c.
Definition at line 279 of file sljitNativeMIPS_common.c.
Definition at line 282 of file sljitNativeMIPS_common.c.
Definition at line 283 of file sljitNativeMIPS_common.c.
Definition at line 284 of file sljitNativeMIPS_common.c.
Definition at line 285 of file sljitNativeMIPS_common.c.
#define ORI (HI(13)) |
Definition at line 286 of file sljitNativeMIPS_common.c.
#define OTHER_FLAG 1 |
Definition at line 95 of file sljitNativeMIPS_common.c.
#define PIC_ADDR_REG TMP_REG1 |
Definition at line 86 of file sljitNativeMIPS_common.c.
#define REG1_SOURCE 0x04000 |
Definition at line 909 of file sljitNativeMIPS_common.c.
#define REG2_SOURCE 0x08000 |
Definition at line 910 of file sljitNativeMIPS_common.c.
#define REG_DEST 0x02000 |
Definition at line 908 of file sljitNativeMIPS_common.c.
#define RESOLVE_IMM1 | ( | ) |
Definition at line 3381 of file sljitNativeMIPS_common.c.
#define RESOLVE_IMM2 | ( | ) |
Definition at line 3391 of file sljitNativeMIPS_common.c.
#define RETURN_ADDR_REG 31 |
Definition at line 91 of file sljitNativeMIPS_common.c.
Definition at line 127 of file sljitNativeMIPS_common.c.
#define SA | ( | s | ) | ((sljit_ins)(s) << 21) |
Definition at line 134 of file sljitNativeMIPS_common.c.
#define SD (HI(63)) |
Definition at line 291 of file sljitNativeMIPS_common.c.
#define SDC1 (HI(61)) |
Definition at line 294 of file sljitNativeMIPS_common.c.
#define SDL (HI(44)) |
Definition at line 292 of file sljitNativeMIPS_common.c.
#define SDR (HI(45)) |
Definition at line 293 of file sljitNativeMIPS_common.c.
#define SELECT_OP | ( | d, | |
w | |||
) | (!(op & SLJIT_32) ? (d) : (w)) |
Definition at line 921 of file sljitNativeMIPS_common.c.
Definition at line 2648 of file sljitNativeMIPS_common.c.
#define SH_IMM | ( | imm | ) | ((sljit_ins)(imm) << 6) |
Definition at line 138 of file sljitNativeMIPS_common.c.
#define SIGNED_DATA 0x08 |
Definition at line 891 of file sljitNativeMIPS_common.c.
#define SIMM_MAX (0x7fff) |
Definition at line 362 of file sljitNativeMIPS_common.c.
#define SIMM_MIN (-0x8000) |
Definition at line 363 of file sljitNativeMIPS_common.c.
#define SINGLE_DATA 0x12 |
Definition at line 895 of file sljitNativeMIPS_common.c.
#define SLJIT_IS_FPU_AVAILABLE 0 |
Definition at line 35 of file sljitNativeMIPS_common.c.
Definition at line 299 of file sljitNativeMIPS_common.c.
#define SLL_W DSLL |
Definition at line 353 of file sljitNativeMIPS_common.c.
Definition at line 300 of file sljitNativeMIPS_common.c.
#define SLOW_DEST 0x40000 |
Definition at line 913 of file sljitNativeMIPS_common.c.
#define SLOW_SRC1 0x10000 |
Definition at line 911 of file sljitNativeMIPS_common.c.
#define SLOW_SRC2 0x20000 |
Definition at line 912 of file sljitNativeMIPS_common.c.
Definition at line 295 of file sljitNativeMIPS_common.c.
#define SLTI (HI(10)) |
Definition at line 296 of file sljitNativeMIPS_common.c.
#define SLTIU (HI(11)) |
Definition at line 297 of file sljitNativeMIPS_common.c.
Definition at line 298 of file sljitNativeMIPS_common.c.
Definition at line 303 of file sljitNativeMIPS_common.c.
#define SRA_W DSRA |
Definition at line 354 of file sljitNativeMIPS_common.c.
Definition at line 304 of file sljitNativeMIPS_common.c.
#define SRC2_IMM 0x00800 |
Definition at line 905 of file sljitNativeMIPS_common.c.
Definition at line 301 of file sljitNativeMIPS_common.c.
Definition at line 302 of file sljitNativeMIPS_common.c.
#define STORE_W SD |
Definition at line 356 of file sljitNativeMIPS_common.c.
Definition at line 305 of file sljitNativeMIPS_common.c.
Definition at line 306 of file sljitNativeMIPS_common.c.
#define SUBU_W DSUBU |
Definition at line 355 of file sljitNativeMIPS_common.c.
Definition at line 307 of file sljitNativeMIPS_common.c.
#define SWC1 (HI(57)) |
Definition at line 310 of file sljitNativeMIPS_common.c.
#define SWL (HI(42)) |
Definition at line 308 of file sljitNativeMIPS_common.c.
#define SWR (HI(46)) |
Definition at line 309 of file sljitNativeMIPS_common.c.
Definition at line 128 of file sljitNativeMIPS_common.c.
Definition at line 135 of file sljitNativeMIPS_common.c.
#define TMP_FREG1 (SLJIT_NUMBER_OF_FLOAT_REGISTERS + 1) |
Definition at line 101 of file sljitNativeMIPS_common.c.
#define TMP_FREG2 (SLJIT_NUMBER_OF_FLOAT_REGISTERS + 2) |
Definition at line 102 of file sljitNativeMIPS_common.c.
#define TMP_FREG3 (SLJIT_NUMBER_OF_FLOAT_REGISTERS + 3) |
Definition at line 103 of file sljitNativeMIPS_common.c.
#define TMP_REG1 (SLJIT_NUMBER_OF_REGISTERS + 2) |
Definition at line 81 of file sljitNativeMIPS_common.c.
#define TMP_REG2 (SLJIT_NUMBER_OF_REGISTERS + 3) |
Definition at line 82 of file sljitNativeMIPS_common.c.
#define TMP_REG3 (SLJIT_NUMBER_OF_REGISTERS + 4) |
Definition at line 83 of file sljitNativeMIPS_common.c.
#define TO_ARGW_HI | ( | argw | ) | (((argw) & ~0xffff) + (((argw) & 0x8000) ? 0x10000 : 0)) |
Definition at line 1347 of file sljitNativeMIPS_common.c.
Definition at line 311 of file sljitNativeMIPS_common.c.
#define UIMM_MAX (0xffff) |
Definition at line 364 of file sljitNativeMIPS_common.c.
#define UNUSED_DEST 0x01000 |
Definition at line 907 of file sljitNativeMIPS_common.c.
#define WORD_DATA 0x00 |
Definition at line 887 of file sljitNativeMIPS_common.c.
Definition at line 315 of file sljitNativeMIPS_common.c.
#define XORI (HI(14)) |
Definition at line 316 of file sljitNativeMIPS_common.c.
Definition at line 79 of file sljitNativeMIPS_common.c.
|
static |
Definition at line 1351 of file sljitNativeMIPS_common.c.
References SIMM_MAX, SIMM_MIN, SLJIT_ASSERT, SLJIT_MEM, and TO_ARGW_HI.
Referenced by emit_op(), and sljit_emit_fop2().
|
static |
Definition at line 487 of file sljitNativeMIPS_common.c.
References sljit_jump::addr, B, BAL, exit(), sljit_jump::flags, if(), invert_branch(), J, JAL, sljit_jump::label, NOP, NULL, SIMM_MIN, sljit_label::size, SLJIT_ASSERT, SLJIT_REWRITABLE_JUMP, sljit_jump::target, and sljit_jump::u.
Referenced by sljit_generate_code().
|
static |
Definition at line 1548 of file sljitNativeMIPS_common.c.
References ADDIU, ADDU, ANDI, BEQ, BLTZ, BNE, D, DA, DADDIU, DADDU, DR, DSLLV, DSRL, DSRLV, EQUAL_FLAG, FAIL_IF, IMM, NOP, OR, OTHER_FLAG, push_inst(), S, SA, SELECT_OP, SH_IMM, SLJIT_32, SLJIT_CLZ, SLLV, SRL, SRLV, T, TA, TMP_REG1, and TMP_REG2.
Referenced by emit_single_op().
|
static |
Definition at line 2259 of file sljitNativeMIPS_common.c.
References ALT_KEEP_CACHE, ARG_TEST, can_cache(), CHECK_IMM, CUMULATIVE_OP, DR, emit_single_op(), sljit_compiler::error, FAIL_IF, flags, getput_arg(), getput_arg_fast(), IMM_OP, LOAD_DATA, load_immediate(), MOVE_OP, REG1_SOURCE, REG2_SOURCE, REG_DEST, SLJIT_ASSERT, SLJIT_IMM, SLJIT_MEM, SLJIT_MOV, SLJIT_OP2_BASE, SLJIT_SUCCESS, SLOW_DEST, SLOW_SRC1, SLOW_SRC2, SRC2_IMM, TMP_REG1, TMP_REG2, and UNUSED_DEST.
Referenced by sljit_emit_op1(), sljit_emit_op2(), and sljit_emit_op_flags().
|
static |
Definition at line 1470 of file sljitNativeMIPS_common.c.
References ADDU_W, DA, data_transfer_insts, DR, sljit_compiler::error, FAIL_IF, flags, getput_arg_fast(), GPR_REG, IMM, LOAD_DATA, load_immediate(), MEM_MASK, push_inst(), S, SA, SH_IMM, SLJIT_UNLIKELY, SLL_W, T, TA, TMP_REG1, and TO_ARGW_HI.
Referenced by sljit_emit_const(), sljit_emit_fselect(), sljit_emit_ijump(), sljit_emit_mem(), sljit_emit_mov_addr(), sljit_emit_op_dst(), sljit_emit_op_flags(), sljit_emit_op_src(), sljit_emit_return_to(), sljit_emit_select(), and sljit_emit_shift_into().
|
static |
Definition at line 1507 of file sljitNativeMIPS_common.c.
References sljit_compiler::error, flags, getput_arg(), and getput_arg_fast().
Referenced by sljit_emit_cmp(), sljit_emit_fop1(), sljit_emit_fop1_cmp(), sljit_emit_fop1_conv_f64_from_sw(), sljit_emit_fop1_conv_f64_from_uw(), sljit_emit_fop1_conv_sw_from_f64(), sljit_emit_fop2(), and sljit_emit_op_flags().
|
static |
Definition at line 1597 of file sljitNativeMIPS_common.c.
References AND, D, DA, DR, DSLL, DSLL32, DSRL, DSRL32, EQUAL_FLAG, FAIL_IF, LUI, OR, ORI, OTHER_FLAG, push_inst(), S, SA, SH_IMM, SLJIT_32, SLJIT_REV, SLJIT_REV_U32, SLJIT_SUCCESS, SLL, SRL, T, TA, TMP_REG1, TMP_REG2, TMP_REG3, and XOR.
Referenced by emit_single_op().
|
static |
Definition at line 1695 of file sljitNativeMIPS_common.c.
References ADDIU, ADDU, AND, ANDI, CLZ, D, DA, DADDIU, DADDU, DMULT, DR, DSLL, DSLL32, DSLLV, DSRA, DSRA32, DSRAV, DSRL, DSRL32, DSRLV, DSUBU, emit_clz_ctz(), EMIT_LOGICAL, emit_rev(), emit_rev16(), EMIT_SHIFT, EQUAL_FLAG, FAIL_IF, flags, IMM, LOGICAL_OP, MFHI, MFLO, MUL, MULT, NOR, OR, ORI, OTHER_FLAG, push_inst(), REG2_SOURCE, REG_DEST, S, SA, SELECT_OP, SH_IMM, SIMM_MIN, SLJIT_32, SLJIT_ADD, SLJIT_ADDC, SLJIT_AND, SLJIT_ASHR, SLJIT_ASSERT, SLJIT_CARRY, SLJIT_CLZ, SLJIT_CTZ, SLJIT_GREATER, SLJIT_LESS, SLJIT_LSHR, SLJIT_MASHR, SLJIT_MLSHR, SLJIT_MOV, SLJIT_MOV_S16, SLJIT_MOV_S32, SLJIT_MOV_S8, SLJIT_MOV_U16, SLJIT_MOV_U32, SLJIT_MOV_U8, SLJIT_MSHL, SLJIT_MUL, SLJIT_OR, SLJIT_OVERFLOW, SLJIT_REV, SLJIT_REV_S16, SLJIT_REV_S32, SLJIT_REV_U16, SLJIT_REV_U32, SLJIT_ROTL, SLJIT_ROTR, SLJIT_SET_Z, SLJIT_SHL, SLJIT_SIG_GREATER, SLJIT_SIG_LESS, SLJIT_SIG_LESS_EQUAL, SLJIT_SUB, SLJIT_SUBC, SLJIT_SUCCESS, SLJIT_UNREACHABLE, SLJIT_XOR, SLL, SLLV, SLT, SLTI, SLTIU, SLTU, SRA, SRAV, SRC2_IMM, SRL, SRLV, SUBU, T, TA, TMP_REG1, TMP_REG2, UNUSED_DEST, XOR, and XORI.
Referenced by emit_op().
|
static |
Definition at line 1164 of file sljitNativeMIPS_common.c.
References ADDIU_W, ADDU_W, D, DR, FAIL_IF, sljit_compiler::fsaveds, sljit_compiler::fscratches, FT, i, IMM, LDC1, load_immediate(), LOAD_W, sljit_compiler::local_size, NOP, offset, sljit_compiler::options, push_inst(), RETURN_ADDR_REG, S, sljit_compiler::saveds, sljit_compiler::scratches, SIMM_MAX, SLJIT_ASSERT, SLJIT_FIRST_SAVED_FLOAT_REG, SLJIT_FIRST_SAVED_REG, SLJIT_FS0, SLJIT_S0, SLJIT_SP, SLJIT_SUCCESS, sw, T, TA, tmp, and TMP_REG2.
Referenced by sljit_emit_return_to(), and sljit_emit_return_void().
|
static |
Definition at line 391 of file sljitNativeMIPS_common.c.
References CPU_FEATURE_DETECTED, CPU_FEATURE_FP64, CPU_FEATURE_FPU, CPU_FEATURE_FR, and cpu_feature_list.
Referenced by sljit_has_cpu_feature().
|
static |
Definition at line 1375 of file sljitNativeMIPS_common.c.
References ADDU_W, D, DA, data_transfer_insts, DR, FAIL_IF, flags, GPR_REG, IMM, LOAD_DATA, load_immediate(), MEM_MASK, offset, push_inst(), S, SA, SH_IMM, SIMM_MAX, SIMM_MIN, SLJIT_ASSERT, SLJIT_MEM, SLJIT_UNLIKELY, SLL_W, T, TA, TMP_REG1, TMP_REG3, and TO_ARGW_HI.
Referenced by emit_op(), emit_op_mem2(), and sljit_emit_fop2().
|
static |
Definition at line 1332 of file sljitNativeMIPS_common.c.
References ARG_TEST, data_transfer_insts, FAIL_IF, flags, GPR_REG, IMM, LOAD_DATA, MEM_MASK, push_inst(), S, SIMM_MIN, SLJIT_ASSERT, SLJIT_MEM, SLJIT_UNLIKELY, and TA.
Referenced by emit_op(), emit_op_mem(), emit_op_mem2(), and sljit_emit_fop2().
|
static |
Definition at line 476 of file sljitNativeMIPS_common.c.
References flags.
Referenced by detect_jump_type().
|
static |
Definition at line 663 of file sljitNativeMIPS_common.c.
References sljit_label::addr, sljit_jump::addr, D, DSLL, flags, sljit_jump::flags, IMM, sljit_jump::label, LUI, ORI, PIC_ADDR_REG, S, SH_IMM, SLJIT_ASSERT, T, sljit_jump::target, sljit_label::u, and sljit_jump::u.
Referenced by sljit_generate_code().
|
static |
Definition at line 463 of file sljitNativeMIPS_common.c.
References FAIL_IF, sljit_compiler::size, SLJIT_ASSERT, and SLJIT_SUCCESS.
Referenced by emit_clz_ctz(), emit_op_mem(), emit_rev(), emit_rev16(), emit_single_op(), emit_stack_frame_release(), getput_arg(), getput_arg_fast(), sljit_emit_cmp(), sljit_emit_enter(), sljit_emit_fmem(), sljit_emit_fop1(), sljit_emit_fop1_cmp(), sljit_emit_fop1_conv_f64_from_sw(), sljit_emit_fop1_conv_f64_from_uw(), sljit_emit_fop1_conv_sw_from_f64(), sljit_emit_fop2(), sljit_emit_fselect(), sljit_emit_fset32(), sljit_emit_ijump(), sljit_emit_jump(), sljit_emit_mem(), sljit_emit_mov_addr(), sljit_emit_op0(), sljit_emit_op2r(), sljit_emit_op_custom(), sljit_emit_op_dst(), sljit_emit_op_flags(), sljit_emit_op_src(), sljit_emit_return_to(), sljit_emit_return_void(), sljit_emit_select(), sljit_emit_shift_into(), and update_mem_addr().
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_cmp_info | ( | sljit_s32 | type | ) |
Definition at line 875 of file sljitNativeMIPS_common.c.
References SLJIT_UNUSED_ARG.
SLJIT_API_FUNC_ATTRIBUTE struct sljit_jump* sljit_emit_cmp | ( | struct sljit_compiler * | compiler, |
sljit_s32 | type, | ||
sljit_s32 | src1, | ||
sljit_sw | src1w, | ||
sljit_s32 | src2, | ||
sljit_sw | src2w | ||
) |
Definition at line 3401 of file sljitNativeMIPS_common.c.
References sljit_jump::addr, BEQ, BGEZ, BGTZ, BLEZ, BLTZ, BNE, BRANCH_LENGTH, CHECK_ERROR_PTR, D, DR, emit_op_mem2(), flags, sljit_jump::flags, IMM, INT_DATA, JR, LOAD_DATA, NOP, PIC_ADDR_REG, PTR_FAIL_IF, push_inst(), RESOLVE_IMM1, RESOLVE_IMM2, S, SIMM_MIN, sljit_compiler::size, SLJIT_32, SLJIT_EQUAL, SLJIT_GREATER, SLJIT_GREATER_EQUAL, SLJIT_IMM, SLJIT_LESS, SLJIT_LESS_EQUAL, SLJIT_MEM, SLJIT_NOT_EQUAL, SLJIT_REWRITABLE_JUMP, SLJIT_SIG_GREATER, SLJIT_SIG_GREATER_EQUAL, SLJIT_SIG_LESS, SLJIT_SIG_LESS_EQUAL, SLT, SLTI, SLTIU, SLTU, T, TA, TMP_REG1, TMP_REG2, and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE struct sljit_const* sljit_emit_const | ( | struct sljit_compiler * | compiler, |
sljit_s32 | dst, | ||
sljit_sw | dstw, | ||
sljit_sw | init_value | ||
) |
Definition at line 4212 of file sljitNativeMIPS_common.c.
References CHECK_ERROR_PTR, DR, emit_const(), emit_op_mem(), PTR_FAIL_IF, SLJIT_MEM, TMP_REG2, and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_enter | ( | struct sljit_compiler * | compiler, |
sljit_s32 | options, | ||
sljit_s32 | arg_types, | ||
sljit_s32 | scratches, | ||
sljit_s32 | saveds, | ||
sljit_s32 | fscratches, | ||
sljit_s32 | fsaveds, | ||
sljit_s32 | local_size | ||
) |
Definition at line 930 of file sljitNativeMIPS_common.c.
References ADDIU_W, ADDU_W, CHECK, CHECK_ERROR, CPU_FEATURE_FR, cpu_feature_list, D, DR, FAIL_IF, FD, FMT_D, FMT_S, FS, FT, i, IMM, LDC1, load_immediate(), sljit_compiler::local_size, LW, LWC1, MOV_fmt, MTC1, offset, OTHER_FLAG, push_inst(), RETURN_ADDR_REG, S, SA, SDC1, SIMM_MIN, SLJIT_ARG_SHIFT, SLJIT_ARG_TYPE_F32, SLJIT_ARG_TYPE_F64, SLJIT_ARG_TYPE_SCRATCH_REG, SLJIT_ASSERT, SLJIT_ENTER_REG_ARG, SLJIT_FIRST_SAVED_FLOAT_REG, SLJIT_FIRST_SAVED_REG, SLJIT_FR0, SLJIT_FS0, SLJIT_LOCALS_OFFSET, SLJIT_S0, SLJIT_SP, SLJIT_SUCCESS, STORE_W, SUBU_W, sw, T, TA, tmp, TMP_FREG1, and TMP_REG1.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fmem | ( | struct sljit_compiler * | compiler, |
sljit_s32 | type, | ||
sljit_s32 | freg, | ||
sljit_s32 | mem, | ||
sljit_sw | memw | ||
) |
Definition at line 4104 of file sljitNativeMIPS_common.c.
References CHECK, CHECK_ERROR, CPU_FEATURE_FR, cpu_feature_list, DMFC1, DMTC1, DR, FAIL_IF, FS, IMM_32_LEFT, IMM_32_RIGHT, IMM_F64_FIRST_LEFT, IMM_F64_FIRST_RIGHT, IMM_F64_SECOND_LEFT, IMM_F64_SECOND_RIGHT, IMM_LEFT, IMM_RIGHT, LDL, LDR, LWL, LWR, MFC1, MTC1, NOP, push_inst(), S, SDL, SDR, SIMM_MAX, SLJIT_32, SLJIT_ASSERT, SLJIT_MEM_STORE, SLJIT_SUCCESS, SWL, SWR, T, TMP_REG2, and update_mem_addr().
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fop1 | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | dst, | ||
sljit_sw | dstw, | ||
sljit_s32 | src, | ||
sljit_sw | srcw | ||
) |
Definition at line 3080 of file sljitNativeMIPS_common.c.
References ABS_S, CHECK_ERROR, CVT_S_S, DOUBLE_DATA, emit_op_mem2(), FAIL_IF, FD, FLOAT_DATA, FMT, FR, FS, LOAD_DATA, MOV_fmt, NEG_S, push_inst(), SLJIT_32, SLJIT_ABS_F64, SLJIT_COMPILE_ASSERT, SLJIT_CONV_F64_FROM_F32, SLJIT_MEM, SLJIT_MOV_F64, SLJIT_NEG_F64, SLJIT_SUCCESS, and TMP_FREG1.
|
static |
Definition at line 3031 of file sljitNativeMIPS_common.c.
References C_EQ_S, C_FD, C_OLE_S, C_OLT_S, C_UEQ_S, C_ULE_S, C_ULT_S, C_UN_S, emit_op_mem2(), FAIL_IF, FLOAT_DATA, FMT, FR, FS, FT, LOAD_DATA, push_inst(), SLJIT_ASSERT, SLJIT_F_EQUAL, SLJIT_F_GREATER, SLJIT_F_GREATER_EQUAL, SLJIT_F_LESS, SLJIT_F_LESS_EQUAL, SLJIT_F_NOT_EQUAL, SLJIT_MEM, SLJIT_ORDERED_EQUAL, SLJIT_ORDERED_GREATER, SLJIT_ORDERED_LESS, SLJIT_UNORDERED, SLJIT_UNORDERED_OR_EQUAL, SLJIT_UNORDERED_OR_GREATER, SLJIT_UNORDERED_OR_LESS, TMP_FREG1, and TMP_FREG2.
|
static |
Definition at line 2872 of file sljitNativeMIPS_common.c.
References CVT_S_S, DOUBLE_DATA, DR, emit_op_mem2(), FAIL_IF, FD, flags, FLOAT_DATA, FR, FS, LOAD_DATA, load_immediate(), MTC1, NOP, push_inst(), SINGLE_DATA, SLJIT_32, SLJIT_CONV_F64_FROM_S32, SLJIT_CONV_F64_FROM_SW, SLJIT_IMM, SLJIT_MEM, SLJIT_SUCCESS, T, TMP_FREG1, and TMP_REG1.
|
static |
Definition at line 2908 of file sljitNativeMIPS_common.c.
References ADD_S, ANDI, BEQ, BGEZ, BLTZ, CPU_FEATURE_FR, cpu_feature_list, CVT_S_S, D, DR, DSLL32, DSRL, DSRL32, emit_op_mem2(), FAIL_IF, FD, flags, FLOAT_DATA, FMT, FR, FS, FT, IMM, INT_DATA, LOAD_DATA, load_immediate(), LUI, MTC1, NOP, OR, push_inst(), S, SH_IMM, SLJIT_32, SLJIT_CONV_F64_FROM_U32, SLJIT_CONV_F64_FROM_UW, SLJIT_IMM, SLJIT_MEM, SLJIT_SUCCESS, SLL, SRL, T, TA, TMP_FREG1, TMP_FREG2, TMP_REG1, TMP_REG2, and WORD_DATA.
|
static |
Definition at line 2844 of file sljitNativeMIPS_common.c.
References DOUBLE_DATA, emit_op_mem2(), FAIL_IF, FD, flags, FLOAT_DATA, FMT, FR, FS, LOAD_DATA, MFC1, NOP, push_inst(), SINGLE_DATA, SLJIT_CONV_SW_FROM_F64, SLJIT_MEM, SLJIT_SUCCESS, T, TMP_FREG1, and TRUNC_W_S.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fop2 | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | dst, | ||
sljit_sw | dstw, | ||
sljit_s32 | src1, | ||
sljit_sw | src1w, | ||
sljit_s32 | src2, | ||
sljit_sw | src2w | ||
) |
Definition at line 3130 of file sljitNativeMIPS_common.c.
References ADD_S, can_cache(), CHECK, CHECK_ERROR, DIV_S, emit_copysign(), emit_op_mem2(), sljit_compiler::error, FAIL_IF, FD, flags, FLOAT_DATA, FMT, FR, FS, FT, getput_arg(), getput_arg_fast(), LOAD_DATA, MUL_S, push_inst(), SLJIT_ADD_F64, SLJIT_COPYSIGN_F64, SLJIT_DIV_F64, SLJIT_MEM, SLJIT_MUL_F64, SLJIT_SUB_F64, SLJIT_SUCCESS, SLOW_SRC1, SLOW_SRC2, SUB_S, TMP_FREG1, and TMP_FREG2.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fselect | ( | struct sljit_compiler * | compiler, |
sljit_s32 | type, | ||
sljit_s32 | dst_freg, | ||
sljit_s32 | src1, | ||
sljit_sw | src1w, | ||
sljit_s32 | src2_freg | ||
) |
Definition at line 3824 of file sljitNativeMIPS_common.c.
References CHECK, CHECK_ERROR, emit_op_mem(), FAIL_IF, FD, FLOAT_DATA, FMT, FR, FS, label, LOAD_DATA, MOV_fmt, push_inst(), SLJIT_32, sljit_emit_jump(), sljit_emit_label(), SLJIT_MEM, sljit_set_label(), SLJIT_SUCCESS, and TMP_FREG2.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_fset32 | ( | struct sljit_compiler * | compiler, |
sljit_s32 | freg, | ||
sljit_f32 | value | ||
) |
Definition at line 3206 of file sljitNativeMIPS_common.c.
References CHECK, CHECK_ERROR, DR, FAIL_IF, FS, load_immediate(), MTC1, push_inst(), T, TA, TMP_REG1, and rapidjson::value.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_ijump | ( | struct sljit_compiler * | compiler, |
sljit_s32 | type, | ||
sljit_s32 | src, | ||
sljit_sw | srcw | ||
) |
Definition at line 3540 of file sljitNativeMIPS_common.c.
References sljit_jump::addr, CHECK, CHECK_ERROR, DA, DR, emit_op_mem(), FAIL_IF, sljit_jump::flags, JALR, JR, LOAD_DATA, NOP, NULL, PIC_ADDR_REG, push_inst(), RETURN_ADDR_REG, S, sljit_compiler::size, SLJIT_FAST_CALL, SLJIT_IMM, SLJIT_JUMP, SLJIT_MEM, sljit_jump::target, sljit_jump::u, and WORD_DATA.
Referenced by sljit_emit_return_to().
SLJIT_API_FUNC_ATTRIBUTE struct sljit_jump* sljit_emit_jump | ( | struct sljit_compiler * | compiler, |
sljit_s32 | type | ||
) |
Definition at line 3287 of file sljitNativeMIPS_common.c.
References sljit_jump::addr, BR_F, BR_NZ, BR_T, BR_Z, CHECK_ERROR_PTR, DA, EQUAL_FLAG, flags, sljit_jump::flags, JALR, JR, NOP, OTHER_FLAG, PIC_ADDR_REG, PTR_FAIL_IF, push_inst(), RETURN_ADDR_REG, S, sljit_compiler::size, SLJIT_CARRY, SLJIT_EQUAL, SLJIT_F_EQUAL, SLJIT_F_GREATER, SLJIT_F_GREATER_EQUAL, SLJIT_F_LESS, SLJIT_F_LESS_EQUAL, SLJIT_F_NOT_EQUAL, SLJIT_GREATER, SLJIT_GREATER_EQUAL, SLJIT_JUMP, SLJIT_LESS, SLJIT_LESS_EQUAL, SLJIT_NOT_CARRY, SLJIT_NOT_EQUAL, SLJIT_NOT_OVERFLOW, SLJIT_ORDERED, SLJIT_ORDERED_EQUAL, SLJIT_ORDERED_GREATER, SLJIT_ORDERED_GREATER_EQUAL, SLJIT_ORDERED_LESS, SLJIT_ORDERED_LESS_EQUAL, SLJIT_ORDERED_NOT_EQUAL, SLJIT_OVERFLOW, SLJIT_REWRITABLE_JUMP, SLJIT_SIG_GREATER, SLJIT_SIG_GREATER_EQUAL, SLJIT_SIG_LESS, SLJIT_SIG_LESS_EQUAL, SLJIT_UNORDERED, SLJIT_UNORDERED_OR_EQUAL, SLJIT_UNORDERED_OR_GREATER, SLJIT_UNORDERED_OR_GREATER_EQUAL, SLJIT_UNORDERED_OR_LESS, SLJIT_UNORDERED_OR_LESS_EQUAL, and SLJIT_UNORDERED_OR_NOT_EQUAL.
Referenced by sljit_emit_fselect(), and sljit_emit_select().
SLJIT_API_FUNC_ATTRIBUTE struct sljit_label* sljit_emit_label | ( | struct sljit_compiler * | compiler | ) |
Definition at line 3230 of file sljitNativeMIPS_common.c.
References CHECK_ERROR_PTR, label, sljit_compiler::last_label, PTR_FAIL_IF, sljit_label::size, and sljit_compiler::size.
Referenced by sljit_emit_fselect(), and sljit_emit_select().
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_mem | ( | struct sljit_compiler * | compiler, |
sljit_s32 | type, | ||
sljit_s32 | reg, | ||
sljit_s32 | mem, | ||
sljit_sw | memw | ||
) |
Definition at line 3949 of file sljitNativeMIPS_common.c.
References ADDU_W, BYTE_DATA, CHECK, CHECK_ERROR, D, data_transfer_insts, DR, DSLL32, DSRL32, emit_op_mem(), FAIL_IF, flags, IMM, IMM_16_FIRST, IMM_16_SECOND, IMM_32_LEFT, IMM_32_RIGHT, IMM_LEFT, IMM_RIGHT, LDL, LDR, LOAD_DATA, LOAD_W, LWL, LWR, MEM_CHECK_UNALIGNED, OR, push_inst(), S, SA, SDL, SDR, SH_IMM, SIGNED_DATA, SIMM_MAX, SLJIT_ASSERT, SLJIT_MEM_ALIGNED_32, SLJIT_MEM_STORE, SLJIT_MOV, SLJIT_MOV_P, SLJIT_MOV_S16, SLJIT_MOV_S8, SLJIT_MOV_U16, SLJIT_MOV_U32, SLJIT_MOV_U8, SLJIT_SUCCESS, SLL_W, SRA_W, STORE_W, sw, SWL, SWR, T, TA, TMP_REG1, TMP_REG2, update_mem_addr(), and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE struct sljit_jump* sljit_emit_mov_addr | ( | struct sljit_compiler * | compiler, |
sljit_s32 | dst, | ||
sljit_sw | dstw | ||
) |
Definition at line 4234 of file sljitNativeMIPS_common.c.
References CHECK_ERROR_PTR, DR, emit_op_mem(), PTR_FAIL_IF, push_inst(), sljit_compiler::size, SLJIT_MEM, TMP_REG2, and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op0 | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op | ||
) |
Definition at line 2392 of file sljitNativeMIPS_common.c.
References ADDU_W, BREAK, CHECK, CHECK_ERROR, D, DDIV, DDIVU, DIV, DIVU, DMULT, DMULTU, DR, FAIL_IF, MFHI, MFLO, MOD, MUL, MULT, MULTU, NOP, push_inst(), S, SLJIT_32, SLJIT_BREAKPOINT, SLJIT_COMPILE_ASSERT, SLJIT_DIV_SW, SLJIT_DIV_UW, SLJIT_DIVMOD_SW, SLJIT_DIVMOD_UW, SLJIT_ENDBR, SLJIT_LMUL_SW, SLJIT_LMUL_UW, SLJIT_NOP, SLJIT_R0, SLJIT_R1, SLJIT_SKIP_FRAMES_BEFORE_RETURN, SLJIT_SUCCESS, T, TA, TMP_REG1, and TMP_REG3.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op1 | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | dst, | ||
sljit_sw | dstw, | ||
sljit_s32 | src, | ||
sljit_sw | srcw | ||
) |
Definition at line 2496 of file sljitNativeMIPS_common.c.
References BYTE_DATA, CHECK, CHECK_ERROR, emit_op(), flags, HALF_DATA, INT_DATA, MOVE_OP, SIGNED_DATA, SLJIT_32, SLJIT_CLZ, SLJIT_CTZ, SLJIT_IMM, SLJIT_MOV, SLJIT_MOV32, SLJIT_MOV_P, SLJIT_MOV_S16, SLJIT_MOV_S32, SLJIT_MOV_S8, SLJIT_MOV_U16, SLJIT_MOV_U32, SLJIT_MOV_U8, SLJIT_REV, SLJIT_REV_S16, SLJIT_REV_S32, SLJIT_REV_U16, SLJIT_REV_U32, SLJIT_SUCCESS, SLJIT_UNREACHABLE, TMP_REG1, and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op2 | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | dst, | ||
sljit_sw | dstw, | ||
sljit_s32 | src1, | ||
sljit_sw | src1w, | ||
sljit_s32 | src2, | ||
sljit_sw | src2w | ||
) |
Definition at line 2561 of file sljitNativeMIPS_common.c.
References CHECK, CHECK_ERROR, CUMULATIVE_OP, emit_op(), flags, IMM_OP, INT_DATA, LOGICAL_OP, SIGNED_DATA, SLJIT_32, SLJIT_ADD, SLJIT_ADDC, SLJIT_AND, SLJIT_ASHR, SLJIT_CURRENT_FLAGS_ADD, SLJIT_CURRENT_FLAGS_SUB, SLJIT_IMM, SLJIT_LSHR, SLJIT_MASHR, SLJIT_MLSHR, SLJIT_MSHL, SLJIT_MUL, SLJIT_OR, SLJIT_ROTL, SLJIT_ROTR, SLJIT_SHL, SLJIT_SUB, SLJIT_SUBC, SLJIT_SUCCESS, SLJIT_UNREACHABLE, and SLJIT_XOR.
Referenced by sljit_emit_op2r(), sljit_emit_op2u(), and sljit_emit_shift_into().
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op2r | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | dst_reg, | ||
sljit_s32 | src1, | ||
sljit_sw | src1w, | ||
sljit_s32 | src2, | ||
sljit_sw | src2w | ||
) |
Definition at line 2651 of file sljitNativeMIPS_common.c.
References ADDU, CHECK, CHECK_ERROR, D, DADDU, DR, FAIL_IF, push_inst(), S, SELECT_OP, SLJIT_32, sljit_emit_op2(), SLJIT_MUL, SLJIT_MULADD, SLJIT_SUCCESS, T, and TMP_REG2.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op2u | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | src1, | ||
sljit_sw | src1w, | ||
sljit_s32 | src2, | ||
sljit_sw | src2w | ||
) |
Definition at line 2634 of file sljitNativeMIPS_common.c.
References CHECK, CHECK_ERROR, and sljit_emit_op2().
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_custom | ( | struct sljit_compiler * | compiler, |
void * | instruction, | ||
sljit_u32 | size | ||
) |
Definition at line 2826 of file sljitNativeMIPS_common.c.
References CHECK, CHECK_ERROR, push_inst(), ncbi::grid::netcache::search::fields::size, and SLJIT_UNUSED_ARG.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_dst | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | dst, | ||
sljit_sw | dstw | ||
) |
Definition at line 2783 of file sljitNativeMIPS_common.c.
References ADDU_W, CHECK, CHECK_ERROR, D, DR, emit_op_mem(), FAIL_IF, LOAD_DATA, sljit_compiler::local_size, push_inst(), RETURN_ADDR_REG, SA, SLJIT_FAST_ENTER, SLJIT_GET_RETURN_ADDRESS, SLJIT_MEM, SLJIT_MEM1, SLJIT_SP, SLJIT_SUCCESS, sw, TA, TMP_REG2, and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_flags | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | dst, | ||
sljit_sw | dstw, | ||
sljit_s32 | type | ||
) |
Definition at line 3582 of file sljitNativeMIPS_common.c.
References ADDU_W, ALT_KEEP_CACHE, ANDI, CFC1, CHECK, CHECK_ERROR, CUMULATIVE_OP, D, DA, DR, emit_op(), emit_op_mem(), emit_op_mem2(), EQUAL_FLAG, FAIL_IF, FCSR_REG, FS, IMM, IMM_OP, INT_DATA, invert, LOAD_DATA, LOGICAL_OP, MFC1, OTHER_FLAG, push_inst(), SA, SH_IMM, SIGNED_DATA, SLJIT_32, SLJIT_ADD, SLJIT_CURRENT_FLAGS_ADD, SLJIT_CURRENT_FLAGS_SUB, SLJIT_EQUAL, SLJIT_F_EQUAL, SLJIT_F_GREATER, SLJIT_F_GREATER_EQUAL, SLJIT_F_NOT_EQUAL, SLJIT_MEM, SLJIT_MOV32, SLJIT_NOT_EQUAL, SLJIT_NOT_OVERFLOW, SLJIT_ORDERED, SLJIT_ORDERED_GREATER, SLJIT_ORDERED_GREATER_EQUAL, SLJIT_ORDERED_NOT_EQUAL, SLJIT_OVERFLOW, SLJIT_SUCCESS, SLJIT_UNORDERED_OR_GREATER, SLJIT_UNORDERED_OR_GREATER_EQUAL, SLJIT_UNORDERED_OR_NOT_EQUAL, SLTIU, SRL, TA, TMP_FREG3, TMP_REG1, TMP_REG2, WORD_DATA, and XORI.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_op_src | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | src, | ||
sljit_sw | srcw | ||
) |
Definition at line 2751 of file sljitNativeMIPS_common.c.
References ADDU_W, CHECK, CHECK_ERROR, DA, emit_op_mem(), emit_prefetch(), FAIL_IF, JR, LOAD_DATA, NOP, push_inst(), RETURN_ADDR_REG, S, SA, SLJIT_FAST_RETURN, SLJIT_PREFETCH_L1, SLJIT_PREFETCH_L2, SLJIT_PREFETCH_L3, SLJIT_PREFETCH_ONCE, SLJIT_SKIP_FRAMES_BEFORE_FAST_RETURN, SLJIT_SUCCESS, TA, and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_return_to | ( | struct sljit_compiler * | compiler, |
sljit_s32 | src, | ||
sljit_sw | srcw | ||
) |
Definition at line 1259 of file sljitNativeMIPS_common.c.
References ADDU_W, CHECK, CHECK_ERROR, D, DR, emit_op_mem(), emit_stack_frame_release(), FAIL_IF, JR, LOAD_DATA, NOP, sljit_compiler::options, PIC_ADDR_REG, push_inst(), S, sljit_emit_ijump(), SLJIT_FIRST_SAVED_REG, SLJIT_IMM, SLJIT_JUMP, SLJIT_MEM, SLJIT_S0, TA, and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_return_void | ( | struct sljit_compiler * | compiler | ) |
Definition at line 1246 of file sljitNativeMIPS_common.c.
References CHECK, CHECK_ERROR, emit_stack_frame_release(), FAIL_IF, JR, push_inst(), RETURN_ADDR_REG, and SA.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_select | ( | struct sljit_compiler * | compiler, |
sljit_s32 | type, | ||
sljit_s32 | dst_reg, | ||
sljit_s32 | src1, | ||
sljit_sw | src1w, | ||
sljit_s32 | src2_reg | ||
) |
Definition at line 3734 of file sljitNativeMIPS_common.c.
References ADDU, ADDU_W, CHECK, CHECK_ERROR, D, DADDU, DR, emit_op_mem(), FAIL_IF, INT_DATA, label, LOAD_DATA, load_immediate(), push_inst(), S, SLJIT_32, sljit_emit_jump(), sljit_emit_label(), SLJIT_IMM, SLJIT_MEM, sljit_set_label(), SLJIT_SUCCESS, TA, TMP_REG1, and WORD_DATA.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_emit_shift_into | ( | struct sljit_compiler * | compiler, |
sljit_s32 | op, | ||
sljit_s32 | dst_reg, | ||
sljit_s32 | src1_reg, | ||
sljit_s32 | src2_reg, | ||
sljit_s32 | src3, | ||
sljit_sw | src3w | ||
) |
Definition at line 2669 of file sljitNativeMIPS_common.c.
References ADDU, CHECK, CHECK_ERROR, D, DADDU, DR, DSLL, DSLL32, DSLLV, DSRL, DSRL32, DSRLV, DSUBU, emit_op_mem(), FAIL_IF, INT_DATA, LOAD_DATA, OR, push_inst(), S, SA, SELECT_OP, SELECT_OP3, SLJIT_32, sljit_emit_op2(), SLJIT_IMM, SLJIT_MEM, SLJIT_MSHL, SLJIT_ROTL, SLJIT_ROTR, SLJIT_SHIFT_INTO_NON_ZERO, SLJIT_SHL, SLJIT_SUCCESS, SLL, SLLV, SRL, SRLV, SUBU, T, TA, TMP_REG1, TMP_REG2, WORD_DATA, and XORI.
SLJIT_API_FUNC_ATTRIBUTE void* sljit_generate_code | ( | struct sljit_compiler * | compiler, |
sljit_s32 | options, | ||
void * | exec_allocator_data | ||
) |
Definition at line 697 of file sljitNativeMIPS_common.c.
References sljit_label::addr, sljit_jump::addr, sljit_const::addr, buf, sljit_compiler::buf, CHECK_ERROR_PTR, sljit_compiler::consts, detect_jump_type(), sljit_compiler::error, sljit_compiler::executable_offset, sljit_compiler::executable_size, sljit_jump::flags, sljit_compiler::jumps, label, sljit_jump::label, sljit_compiler::labels, load_addr_to_reg(), mov_addr_get_length(), sljit_jump::next, sljit_const::next, PTR_FAIL_WITH_EXEC_IF, SIMM_MAX, SIMM_MIN, sljit_compiler::size, SLJIT_ASSERT, SLJIT_CACHE_FLUSH, SLJIT_ERR_COMPILED, SLJIT_UPDATE_WX_FLAGS, sljit_jump::target, sljit_label::u, and sljit_jump::u.
SLJIT_API_FUNC_ATTRIBUTE const char* sljit_get_platform_name | ( | void | ) |
Definition at line 38 of file sljitNativeMIPS_common.c.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_get_register_index | ( | sljit_s32 | type, |
sljit_s32 | reg | ||
) |
Definition at line 2813 of file sljitNativeMIPS_common.c.
References FR, reg_map, SLJIT_FLOAT_REGISTER, and SLJIT_GP_REGISTER.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_has_cpu_feature | ( | sljit_s32 | feature_type | ) |
Definition at line 836 of file sljitNativeMIPS_common.c.
References CPU_FEATURE_FPU, CPU_FEATURE_FR, cpu_feature_list, get_cpu_features(), SLJIT_HAS_CLZ, SLJIT_HAS_CMOV, SLJIT_HAS_COPY_F32, SLJIT_HAS_COPY_F64, SLJIT_HAS_CTZ, SLJIT_HAS_F64_AS_F32_PAIR, SLJIT_HAS_FPU, SLJIT_HAS_PREFETCH, SLJIT_HAS_REV, SLJIT_HAS_ROT, and SLJIT_HAS_ZERO_REGISTER.
SLJIT_API_FUNC_ATTRIBUTE sljit_s32 sljit_set_context | ( | struct sljit_compiler * | compiler, |
sljit_s32 | options, | ||
sljit_s32 | arg_types, | ||
sljit_s32 | scratches, | ||
sljit_s32 | saveds, | ||
sljit_s32 | fscratches, | ||
sljit_s32 | fsaveds, | ||
sljit_s32 | local_size | ||
) |
Definition at line 1140 of file sljitNativeMIPS_common.c.
References CHECK, CHECK_ERROR, sljit_compiler::local_size, SLJIT_FIRST_SAVED_FLOAT_REG, SLJIT_LOCALS_OFFSET, SLJIT_SUCCESS, and sw.
|
static |
Definition at line 3878 of file sljitNativeMIPS_common.c.
References ADDU_W, D, DR, FAIL_IF, load_immediate(), push_inst(), S, SH_IMM, SIMM_MIN, SLJIT_SUCCESS, SLJIT_UNLIKELY, SLL_W, T, TMP_REG1, and TO_ARGW_HI.
Referenced by sljit_emit_fmem(), and sljit_emit_mem().
|
static |
Definition at line 371 of file sljitNativeMIPS_common.c.
Referenced by call_with_args(), emit_copysign(), get_cpu_features(), sljit_emit_enter(), sljit_emit_fcopy(), sljit_emit_fmem(), sljit_emit_fop1_conv_f64_from_uw(), sljit_emit_fset64(), and sljit_has_cpu_feature().
Definition at line 1302 of file sljitNativeMIPS_common.c.
Referenced by emit_op_mem(), getput_arg(), getput_arg_fast(), and sljit_emit_mem().
Definition at line 117 of file sljitNativeMIPS_common.c.
Definition at line 97 of file sljitNativeMIPS_common.c.
Referenced by sljit_get_register_index().