Lines Matching refs:argw
1290 static sljit_s32 getput_arg_fast(struct sljit_compiler *compiler, sljit_s32 flags, sljit_s32 reg_ar, sljit_s32 arg, sljit_sw argw)
1295 && !(arg & OFFS_REG_MASK) && argw <= SIMM_16BIT_MAX && argw >= SIMM_16BIT_MIN) {
1300 FAIL_IF(ADDLI(ADDR_TMP_mapped, reg_map[arg & REG_MASK], argw));
1316 static sljit_s32 can_cache(sljit_s32 arg, sljit_sw argw, sljit_s32 next_arg, sljit_sw next_argw)
1322 argw &= 0x3;
1324 if (argw && argw == next_argw
1331 if (((next_argw - argw) <= SIMM_16BIT_MAX
1332 && (next_argw - argw) >= SIMM_16BIT_MIN))
1342 static sljit_s32 getput_arg(struct sljit_compiler *compiler, sljit_s32 flags, sljit_s32 reg_ar, sljit_s32 arg, sljit_sw argw, sljit_s32 next_arg, sljit_sw next_argw)
1360 argw &= 0x3;
1369 if (argw == compiler->cache_argw) {
1379 if (arg == next_arg && argw == (next_argw & 0x3)) {
1381 compiler->cache_argw = argw;
1406 if (SLJIT_UNLIKELY(argw)) {
1408 compiler->cache_argw = argw;
1409 FAIL_IF(SHLI(TMP_REG3_mapped, reg_map[OFFS_REG(arg)], argw));
1413 if (arg == next_arg && argw == (next_argw & 0x3)) {
1415 compiler->cache_argw = argw;
1416 FAIL_IF(ADD(TMP_REG3_mapped, reg_map[base], reg_map[!argw ? OFFS_REG(arg) : TMP_REG3]));
1419 FAIL_IF(ADD(tmp_ar, reg_map[base], reg_map[!argw ? OFFS_REG(arg) : TMP_REG3]));
1427 FAIL_IF(ADD(reg_map[base], reg_map[base], reg_map[!argw ? OFFS_REG(arg) : TMP_REG3]));
1439 if (argw <= SIMM_16BIT_MAX && argw >= SIMM_16BIT_MIN) {
1440 FAIL_IF(ADDLI(ADDR_TMP_mapped, reg_map[base], argw));
1446 if (argw)
1447 return ADDLI(reg_map[base], reg_map[base], argw);
1456 if (argw <= SIMM_16BIT_MAX && argw >= SIMM_16BIT_MIN) {
1457 if (argw)
1458 FAIL_IF(ADDLI(reg_map[base], reg_map[base], argw));
1461 && argw - compiler->cache_argw <= SIMM_16BIT_MAX
1462 && argw - compiler->cache_argw >= SIMM_16BIT_MIN) {
1463 if (argw != compiler->cache_argw) {
1464 FAIL_IF(ADD(TMP_REG3_mapped, TMP_REG3_mapped, argw - compiler->cache_argw));
1465 compiler->cache_argw = argw;
1471 compiler->cache_argw = argw;
1472 FAIL_IF(load_immediate(compiler, TMP_REG3_mapped, argw));
1484 && argw - compiler->cache_argw <= SIMM_16BIT_MAX
1485 && argw - compiler->cache_argw >= SIMM_16BIT_MIN) {
1486 if (argw != compiler->cache_argw) {
1487 FAIL_IF(ADDLI(TMP_REG3_mapped, TMP_REG3_mapped, argw - compiler->cache_argw));
1488 compiler->cache_argw = argw;
1498 && argw - compiler->cache_argw <= SIMM_16BIT_MAX
1499 && argw - compiler->cache_argw >= SIMM_16BIT_MIN) {
1500 if (argw != compiler->cache_argw)
1501 FAIL_IF(ADDLI(TMP_REG3_mapped, TMP_REG3_mapped, argw - compiler->cache_argw));
1504 FAIL_IF(load_immediate(compiler, TMP_REG3_mapped, argw));
1507 compiler->cache_argw = argw;
1517 && next_argw - argw <= SIMM_16BIT_MAX
1518 && next_argw - argw >= SIMM_16BIT_MIN) {
1535 static SLJIT_INLINE sljit_s32 emit_op_mem(struct sljit_compiler *compiler, sljit_s32 flags, sljit_s32 reg_ar, sljit_s32 arg, sljit_sw argw)
1537 if (getput_arg_fast(compiler, flags, reg_ar, arg, argw))
1542 return getput_arg(compiler, flags, reg_ar, arg, argw, 0, 0);