"Ну и по их же заявлениям, генерация байт-кода выходит быстрее, и занимает меньше памяти (что им было важно для устройств с ограниченной памятью - например, телефоны и планшеты на Android)."
Там было сделано так, что если JIT видел, что функцию нужно оптимизировать/деоптимизировать он снова лез за исходным js. Это требовало хранить в памяти куски js и тратить время на их разбор. Когда поставили игнишен то появилась возможность хранить байткод и забирать его в случае необходимости оптимизации функции не тратя время на повторный разбор AST