Vi essa discussão há uns 20 anos atrás, e é curioso como esses assuntos acabam voltando. A conclusão da época foi: código manso por código manso, JIT quase sempre se sai melhor. O ponto é que escolhemos C/C++ quando cabe no projeto explorar mais truques do chapeu para otimizacão, ou seja código brabo). Os truques incluem metaprogramação de templates, criação de memory pools, paralelização, incluir códigos em assembly. Ou seja, da muito mais trabalho. Um exemplo clássico é o código das implmentações do memcpy em produção, mega complexos e cheios de assembly.
Dessa forma é um grande error optar por C++ esperando performance e não incluir esse tipo de trabalho no escopo do projeto.