moTuner: a compiler-based auto-tuning approach for mixed-precision operators