Lines Matching refs:arg

844 …ast(struct sljit_compiler *compiler, sljit_si inp_flags, sljit_si reg, sljit_si arg, sljit_sw argw)  in getput_arg_fast()  argument
850 SLJIT_ASSERT(arg & SLJIT_MEM); in getput_arg_fast()
852 if (arg & OFFS_REG_MASK) { in getput_arg_fast()
860 …sh_inst(compiler, INST_CODE_AND_DST(inst, inp_flags, reg) | A(arg & REG_MASK) | B(OFFS_REG(arg)))); in getput_arg_fast()
864 if (SLJIT_UNLIKELY(!(arg & REG_MASK))) in getput_arg_fast()
869 SLJIT_ASSERT((arg & REG_MASK) || !(inst & UPDATE_REQ)); in getput_arg_fast()
887 …FAIL_IF(push_inst(compiler, INST_CODE_AND_DST(inst, inp_flags, reg) | A(arg & REG_MASK) | IMM(argw… in getput_arg_fast()
894 static sljit_si can_cache(sljit_si arg, sljit_sw argw, sljit_si next_arg, sljit_sw next_argw) in can_cache() argument
901 SLJIT_ASSERT((arg & SLJIT_MEM) && (next_arg & SLJIT_MEM)); in can_cache()
903 if (arg & OFFS_REG_MASK) in can_cache()
904 return ((arg & OFFS_REG_MASK) == (next_arg & OFFS_REG_MASK) && (argw & 0x3) == (next_argw & 0x3)); in can_cache()
922 if (!(arg & REG_MASK)) in can_cache()
925 if (arg == next_arg && diff <= SIMM_MAX && diff >= SIMM_MIN) in can_cache()
943 …truct sljit_compiler *compiler, sljit_si inp_flags, sljit_si reg, sljit_si arg, sljit_sw argw, slj… in getput_arg() argument
952 SLJIT_ASSERT(arg & SLJIT_MEM); in getput_arg()
956 if ((arg & REG_MASK) == tmp_r) in getput_arg()
959 if (SLJIT_UNLIKELY(arg & OFFS_REG_MASK)) { in getput_arg()
964 if ((SLJIT_MEM | (arg & OFFS_REG_MASK)) == compiler->cache_arg && argw == compiler->cache_argw) in getput_arg()
967 if ((arg & OFFS_REG_MASK) == (next_arg & OFFS_REG_MASK) && argw == (next_argw & 0x3)) { in getput_arg()
968 compiler->cache_arg = SLJIT_MEM | (arg & OFFS_REG_MASK); in getput_arg()
973 …FAIL_IF(push_inst(compiler, RLWINM | S(OFFS_REG(arg)) | A(tmp_r) | (argw << 11) | ((31 - argw) << … in getput_arg()
975 FAIL_IF(push_inst(compiler, RLDI(tmp_r, OFFS_REG(arg), argw, 63 - argw, 1))); in getput_arg()
980 …return push_inst(compiler, INST_CODE_AND_DST(inst, inp_flags, reg) | A(arg & REG_MASK) | B(tmp_r)); in getput_arg()
983 if (SLJIT_UNLIKELY(!(arg & REG_MASK))) in getput_arg()
987 SLJIT_ASSERT((arg & REG_MASK) || !(inst & UPDATE_REQ)); in getput_arg()
994 arg &= REG_MASK; in getput_arg()
1004 if (arg == reg) { in getput_arg()
1008 tmp_r = arg; in getput_arg()
1009 FAIL_IF(push_inst(compiler, ADDIS | D(arg) | A(arg) | IMM(high_short >> 16))); in getput_arg()
1011 else if (compiler->cache_arg != (SLJIT_MEM | arg) || high_short != compiler->cache_argw) { in getput_arg()
1015 compiler->cache_arg = SLJIT_MEM | arg; in getput_arg()
1020 FAIL_IF(push_inst(compiler, ADDIS | D(tmp_r) | A(arg & REG_MASK) | IMM(high_short >> 16))); in getput_arg()
1031 if (SLJIT_UNLIKELY(!(arg & REG_MASK))) { in getput_arg()
1052 if (compiler->cache_arg == arg && diff <= SIMM_MAX && diff >= SIMM_MIN) { in getput_arg()
1065 …return push_inst(compiler, INST_CODE_AND_DST(inst, inp_flags, reg) | A(arg & REG_MASK) | B(TMP_REG… in getput_arg()
1077 …return push_inst(compiler, INST_CODE_AND_DST(inst, inp_flags, reg) | A(arg & REG_MASK) | B(TMP_REG… in getput_arg()
1081 if (arg == next_arg && !(inp_flags & WRITE_BACK) && diff <= SIMM_MAX && diff >= SIMM_MIN) { in getput_arg()
1084 FAIL_IF(push_inst(compiler, ADD | D(TMP_REG3) | A(TMP_REG3) | B(arg & REG_MASK))); in getput_arg()
1086 compiler->cache_arg = arg; in getput_arg()
1106 return push_inst(compiler, INST_CODE_AND_DST(inst, inp_flags, reg) | A(arg & REG_MASK) | B(tmp_r)); in getput_arg()