protected Expr HandleBuiltIns(FunctionCall fc, string builtin, List <Expr> newArgs) { // We support very few builtins here. People shouldn't be using them switch (builtin) { case "div": Debug.Assert(newArgs.Count == 2); return(Builder.Div(newArgs[0], newArgs[1])); case "mod": Debug.Assert(newArgs.Count == 2); return(Builder.Mod(newArgs[0], newArgs[1])); case "rem": Debug.Assert(newArgs.Count == 2); return(Builder.Rem(newArgs[0], newArgs[1])); default: throw new NotImplementedException("Builtin \"" + builtin + "\" not supported"); } }
public virtual Expr Rem(Expr lhs, Expr rhs) { return(UB.Rem(lhs, rhs)); }