Howdy,

Fastest + Pure Code works
Fastest with LTO works
Fastest + Pure Code with LTO does not work

I'm not looking for a fix, teenyduino does warn that those compile options can bring bugs, I'm just posting it here in case it's useful

Code:
PatternFlock.h:69: error: insn does not satisfy its constraints:
     }
     ^
(insn 942 81 303 2 (set (reg:SF 27 s11 [orig:443 D.5363.mass ] [443])
        (mem/c:SF (plus:SI (reg/f:SI 13 sp)
                (const_int 48 [0x30])) [3 D.5363.mass+0 S4 A32])) 621 {*thumb2_movsf_vfp}
     (nil))
/tmp/arduino_build_668641/sketch/PatternFlock.h:69:5: internal compiler error: in extract_constrain_insn, at recog.c:2246
Please submit a full bug report,
with preprocessed source if appropriate.
Same code builds fine on ESP32 and ESP8266. Code looks simple enough:
Code:
    void start() {
      for (int i = 0; i < boidCount; i++) {
        boids[i] = Boid(15, 15);
        boids[i].maxspeed = 0.380;
        boids[i].maxforce = 0.015;
      }

      predatorPresent = random(0, 2) >= 1;
      if (predatorPresent) {
        predator = Boid(31, 31);
        predatorPresent = true;
        predator.maxspeed = 0.385;
        predator.maxforce = 0.020;
        predator.neighbordist = 16.0;
        predator.desiredseparation = 0.0;
      }
    }
Full code:
https://github.com/marcmerlin/SmartM...ernFlock.h#L69

teensyduino has arm-none-eabi-gcc-5.4.1

Other reports:
https://bugs.launchpad.net/gcc-arm-e...d/+bug/1530664 gcc 5.2.1
https://bugs.launchpad.net/gcc-arm-e...d/+bug/1530165 gcc 4.9 alledgedly fixed with 5-2015q4, but my gcc is newer
https://bugs.debian.org/cgi-bin/bugr...cgi?bug=855248 is gcc 5.4.1+svn241155-1 looks like the same