/* Emit code for comparisons. 'e1' was already put in R/K form by 'luaK_infix'.  */
static void codecomp(FuncState *fs, BinOpr opr, expdesc *e1, expdesc *e2)
/* Emit code for comparisons. 'e1' was already put in R/K form by 'luaK_infix'.  */
static void codecomp(FuncState *fs, BinOpr opr, expdesc *e1, expdesc *e2)
{
    case OPR_NE: {
      e1->u.info = condjump(fs, OP_EQ, 0, rk1, rk2);
      break;
    }
    case OPR_GT: case OPR_GE: {
      OpCode op = cast(OpCode, (opr - OPR_NE) + OP_EQ);
      e1->u.info = condjump(fs, op, 1, rk2, rk1);
      break;
    }
    default: {
      OpCode op = cast(OpCode, (opr - OPR_EQ) + OP_EQ);
      e1->u.info = condjump(fs, op, 1, rk1, rk2);
      break;
    }
  }
  e1->k = VJMP;
}