2009-12-21 13 views

Trả lời

0

Mỗi LLVM's site, tôi sẽ thêm -emit-llvm vào tùy chọn trình biên dịch. Xcode không cung cấp giao diện người dùng để hiển thị biểu diễn (chưa).

+0

Cảm ơn, nhưng -emit-llvm thực sự là tính năng llvm, tính năng này không giúp tôi với Xcode. Vấn đề của tôi là nhìn thấy IR trong Xcode; Tôi cảm thấy khó tin rằng XCode nhận ra định dạng tệp (nó - kiểm tra các menu), nhưng không cho phép bạn thấy nó khi bạn đang bẻ khóa. –

5

Xcode không hỗ trợ cú pháp làm nổi bật biểu diễn trung gian LLVM, nhưng biểu diễn này là bên trong trình biên dịch (và thay đổi thường xuyên) và Xcode không có giao diện người dùng nào để nói chuyện với trình biên dịch. . Đây sẽ là một yêu cầu tính năng thú vị mặc dù, bạn có xem xét nộp nó với Apple?

Nếu bạn chỉ muốn xem nó, bạn có thể làm như vậy bằng tay bằng cách lấy lệnh biên dịch từ nhật ký dựng và thêm '-emit-llvm -S -o /tmp/t.ll' vào cuối. Bây giờ bạn có thể mở /tmp/t.ll trong Xcode và xem LLVM IR cho một tập tin đó.

+0

Như tôi đã nói trong phần bình luận dưới đây, tôi biết cả hai cách xem IR của llvm trong xcode, và cách tạo mã llvm (đó là một tính năng llvm - không phải là xcode). Những gì tôi không biết là làm thế nào để theo dõi mã llvm cùng với bản gốc, đó là một pitty (và nên rất dễ dàng để làm). Kinh nghiệm của tôi với táo là hỗ trợ khách hàng của họ là tốt, nhưng hỗ trợ phát triển thì không. –

+0

Ok. Hiện tại không có cách nào tốt để xem mã LLVM cùng với mã nguồn ban đầu. Về mặt kỹ thuật, điều này có sẵn ở một mức độ nào đó thông qua http://klee.llvm.org thông qua tích hợp KCacheGrind. Tuy nhiên, tôi có lẽ là người duy nhất sử dụng nó; nó là hơi phức tạp để cài đặt và sử dụng (mặc dù nó có thể trên OS X). Tôi đồng ý rằng đây sẽ là một tính năng tuyệt vời có nguồn gốc trong Xcode. Tôi khuyên bạn nên gửi yêu cầu tính năng cho nó, bạn không bao giờ biết! –

Các vấn đề liên quan