1 // an implementation of sqrt for Thumb using hardware double-precision VFP instructions
2 
sqrt(double x)3 double sqrt(double x) {
4     double ret;
5     asm volatile (
6             "vsqrt.f64  %P0, %P1\n"
7             : "=w" (ret)
8             : "w"  (x));
9     return ret;
10 }
11