2011-12-11 9 views
14

Tôi đã tìm kiếm một lúc, nhưng tôi không thể tìm thấy bất kỳ công cụ nào phát ra mã byte bytecode LLVM. Nhưng bằng cách nào đó tôi không thể tin rằng không có động cơ như vậy :)Có công cụ Javascript nào phát ra bytecode LLVM không?

+0

IIRC mozilla điều tra khả năng sử dụng LLVM như một hậu phương cho JIT của họ, nhưng cai trị nó ra, nói rằng nó sẽ quá chậm hoặc giống như vậy – CAFxX

+0

@CAFxX: Bạn có bất kỳ tham chiếu nào về điều đó không? – Albert

+2

@Albert chắc chắn: https://hacks.mozilla.org/2009/07/tracemonkey-overview/comment-page-2/#comment-67629 – CAFxX

Trả lời

1

JXCore (một ngã ba của Nodejs) khẳng định đã thực hiện mà here. Kể từ Feb 2015, nó là mã nguồn mở, mã là here on GitHub.

+0

Ở đâu nó nói, rằng JXcore là một ngã ba thương mại? Ngược lại - đó là một dự án mã nguồn mở https://github.com/jxcore/jxcore (bắt đầu từ giữa tháng 2 năm 2015, nhưng chưa bao giờ là thương mại) – infografnet

+0

Nhưng họ đã chuyển sang "một nơi nào đó trên đường" và sử dụng V8 và SpiderMonkey bây giờ – Josef

4

JXcore sẽ là đặt cược tốt nhất của bạn về sau IMHO - khi họ chuyển đổi từ V8 sang LLVM, mục tiêu của họ khi họ tiếp cận phiên bản 2 (theo số roadmap), sau đó sẽ biên dịch các nguồn javascript của bạn thành mã gốc .

Bạn có thể tìm thêm thông tin về JXcore here.

Phần này của câu trả lời là trong một phản ứng với Albert của câu trả lời:

Theo ktrzeciaknubisa của post họ sẽ công bố các nguồn ngay khi họ đang ra khỏi giai đoạn beta và có mã sạch ... này có thể mất thỉnh thoảng.

+0

Nubisa ngừng phát triển tích cực trên nền tảng JXcore. –

1

Có vẻ Webkit hiện nay bao gồm chức năng này tính đến tháng năm 2014:

... dự án WebKit đã thống nhất cơ sở hạ tầng biên soạn JavaScript hiện với nhà nước-of-the-art ưu LLVM.

https://webkit.org/blog/3362/introducing-the-webkit-ftl-jit/

Mã cho điều này dường như có mặt ở đây:

http://www.opensource.apple.com/source/JavaScriptCore/JavaScriptCore-7600.1.4.17.5/ftl/FTLLowerDFGToLLVM.cpp

+1

Họ đã thay thế LLVM bằng Bare Bones Backend. https://webkit.org/blog/5852/introducing-the-b3-jit-compiler/ –