Found erroneous behavior in floating point calculations in openmv firmware when doing a performance calculation test.

A very simple procedure for calculating the number pi using the Leibniz formula, 10_000_000 iterations.

```
def calculate_pi(n):
t_sum = 0
for i in range(n):
term = (-1) ** i /(2*i+1)
t_sum = t_sum + term
return t_sum * 4
def performanceTest8():
iterations = 10000000
print("Calculate %i iterations PI Leibniz Formula" % iterations)
timet1 = utime.ticks_ms()
value = calculate_pi(iterations)
timet2 = utime.ticks_ms()
print(value)
print("Calculations time %u ms" %(timet2-timet1))
performanceTest8()
```

Got the following results:

OpenMV Cam H7 Plus (omv):

**0.950764** !? !? !? !!!

Calculations time 48205 ms

Portenta H7 (omv)

**0.950764** !? !? !? !!!

Calculations time 57519 ms

The same test on the version from Micropython.org (1.19.1):

Maix Amigo:

3.141597

Calculations time 121479 ms

PiPico:

3.141597

Calculations time 405259 ms

PyCom LoPy4(esp32):

3.141597

Calculations time 355002 ms

Nucleo-STM32F429ZI

3.141597

Calculations time 210003 ms

Nucleo-STM32H743ZI

3.141592553589793

Calculations time 86835 ms

PC Notebook:

3.1415925535897915

Calculations time 1990.820 ms

(tried different platforms Teensy 4.1, stm32, arduino etc - everything is fine)

All platform versions from OpenMV give an error, except for Arduino BLE33Sense (omv):

3.141597 !!!

Calculations time 517730 ms

Please fix it, otherwise there is an uncertain impression of the calculations.