Ответ: Скорость вызова DLL
jit компилятор jvm как и gcc компилирует в машинный код. Просто jvm это делает во время выполнения программы, а gcc на машине разработчика/на билд сервере. Поэтому gcc может поработать подольше и сразу применить все оптимизации, а JIT (just in time) компилятор jvm не может работать долго (приложение ведь нужно чтобы быстро запустилось), поэтому применяет оптимизации не сразу.
__________________
|