da37a0ae8f74873fe0b0741173c865c7a31a82a2
This diff adds full support for doing general interpOnes in HHIR. Whenever a bytecode instruction fails (punts) in the HHBC->HHIR translation, the NormalizedInstruction is marked with an 'interp' flag and the HHIR translation for the whole tracelet is retried. This forces an InterpOne of such instruction, preventing HHIR from attempting to translate it again, which then allows the HHBC->HHIR translation to make further progress. If another instruction in the sequence punts again, the process is repeat and so on.
HipHop VM for PHP
HipHop VM (HHVM) is a new open-source virtual machine designed for executing programs written in PHP. HHVM uses a just-in-time compilation approach to achieve superior performance while maintaining the flexibility that PHP developers are accustomed to. HipHop VM (and before it HPHPc) has realized >5x increase in throughput for Facebook compared with Zend PHP 5.2.
Required Packages, and Installing and Running HipHop VM
The latest information is available on the wiki.
Contributing to HipHop VM
HipHop VM is licensed under the PHP and Zend licenses except as otherwise noted.
Before changes can be accepted a Contributors Licensing Agreement must be signed and returned.
Descrição
Linguagens
C++
59.4%
PHP
34.1%
C
4.1%
Hack
1.4%
CMake
0.3%
Outra
0.6%