function luaK.codearith(B,O,D,g,Y)if B:constfolding(D,g,Y)then return else local f=(D~="\079\080\095\085\078\077"and D~="\079\080\095\076\069\078")and B:exp2RK(O,Y)or 0 local x=B:exp2RK(O,g)if x>f then B:freeexp(O,g)B:freeexp(O,Y)else B:freeexp(O,Y)B:freeexp(O,g)end g.info=B:codeABC(O,D,0,x,f)g.k="\086\082\069\076\079\067\065\066\076\069"end end

function luaK:codearith(fs, op, e1, e2)
  if self:constfolding(op, e1, e2) then
    return
  else
    local o2 = (op ~= "OP_UNM" and op ~= "OP_LEN") and self:exp2RK(fs, e2) or 0
    local o1 = self:exp2RK(fs, e1)
    if o1 > o2 then
      self:freeexp(fs, e1)
      self:freeexp(fs, e2)
    else
      self:freeexp(fs, e2)
      self:freeexp(fs, e1)
    end
    e1.info = self:codeABC(fs, op, 0, o1, o2)
    e1.k = "VRELOCABLE"
  end
end
