C/C++编译器 AsmJit

fmms 13年前
     <p>[AsmJit] 是個以 C++ 封裝的 JIT (Just-In-Time) Assembler,目前支援的硬體架構有 x86 與 x86_64,以 MIT X License 釋出。或許讀者對這樣的 Assembler 沒有太大的興趣,但專案卻跟 Google Chrome 瀏覽器引擎有些淵源。怎麼說呢?去年九月,Google 發佈了新一代網路瀏覽器 Chrome,當時幾乎佔據了各大資訊新聞的版面。發佈瀏覽器的同時,還伴隨了一本畫冊,以平實且幽默的和漫畫,闡述新推出的 Chrome 瀏覽器的各功能,包含其中嶄新的 JavaScript (ECMAScript) 執行引擎,搶了風采,讓同等級的瀏覽器頓時失色。由 Google 將其代號命名為 [V8],強調有如 V8 賽車的高速 JavaScript 執行效率,可見 Google 的開發決心。</p>    <ul>     <li>Complete x86/x64 instruction set, including X87, MMX, SSE, SSE2, SSE3, SSSE3 and SSE4. </li>     <li>Compile time and run-time safety. C++ compiler is able to catch basic mistakes that can be done by developer. </li>     <li>Low-level and high-level code generation. </li>     <li>Built-in CPU detection. </li>     <li>Virtual memory management (API similar to malloc/free). </li>     <li>Configurable memory management, logging and error handling. </li>     <li>Small and embeddable (size of compiled AsmJit is about 200kB). </li>     <li>No dependencies to STL and other libraries. </li>     <li>No exceptions and RTTI. </li>     <li>Extensible design. The library can be extended by inheriting classes, it's not needed to modify AsmJit sources to fit into your project.<br /> </li>    </ul>    <p><strong>项目主页:</strong><a href="http://www.open-open.com/lib/view/home/1326978630655" target="_blank">http://www.open-open.com/lib/view/home/1326978630655</a></p>    <p><a name="Assembler_example"></a> </p>