message: Implement f32_sqrt/f64_sqrt instructions
diff: @@ -1534,13 +1534,16 @@ ExecutionResult execute(Instance& instance, FuncIdx func_idx, span<const Value>
  unary_op(stack, static_cast<float (*)(float)>(std::fabs));
  break;
  }
  -
  case Instr::f32_neg:
  {
  unary_op(stack, std::negate<float>{});
  break;
  }
  -
  + case Instr::f32_sqrt:
  + {
  + unary_op(stack, static_cast<float (*)(float)>(std::sqrt));
  + break;
  + }
  case Instr::f32_add:
  {
  binary_op(stack, std::plus<float>{});
  @@ -1558,13 +1561,16 @@ ExecutionResult execute(Instance& instance, FuncIdx func_idx, span<const Value>
  unary_op(stack, static_cast<double (*)(double)>(std::fabs));
  break;
  }
  -
  case Instr::f64_neg:
  {
  unary_op(stack, std::negate<double>{});
  break;
  }
  -
  + case Instr::f64_sqrt:
  + {
  + unary_op(stack, static_cast<double (*)(double)>(std::sqrt));
  + break;
  + }
  case Instr::f64_add:
  {
  binary_op(stack, std::plus<double>{});
  @@ -1714,7 +1720,6 @@ ExecutionResult execute(Instance& instance, FuncIdx func_idx, span<const Value>
  case Instr::f32_floor:
  case Instr::f32_trunc:
  case Instr::f32_nearest:
  - case Instr::f32_sqrt:
  case Instr::f32_sub:
  case Instr::f32_mul:
  case Instr::f32_min:
  @@ -1724,7 +1729,6 @@ ExecutionResult execute(Instance& instance, FuncIdx func_idx, span<const Value>
  case Instr::f64_floor:
  case Instr::f64_trunc:
  case Instr::f64_nearest:
  - case Instr::f64_sqrt:
  case Instr::f64_sub:
  case Instr::f64_mul:
  case Instr::f64_min:
  