2012-02-29 32 views

Trả lời

6

Chúng là trình tối ưu hóa chuyển hoạt động trên các cây (SSA) bên trong trình biên dịch, thay vì trên cấp RTL (đăng ký chuyển ngôn ngữ).

Đối với một cái nhìn tổng quan về điều này là về, xem tài liệu internals GCC: http://gcc.gnu.org/onlinedocs/gccint/

Đối với một giới thiệu về SSA, xem http://en.wikipedia.org/wiki/Static_single_assignment_form

+0

Cảm ơn. Tôi có cảm giác rằng tôi đang mở một thùng giun ở đây (tôi không phải là một người biên dịch), nhưng bạn có thể xây dựng một chút về những cây SSA này không? Sự khác nhau giữa "bên trong trình biên dịch" và "ở cấp RTL" là gì? – ysap

+1

@ysap: xem http://www.redhat.com/magazine/002dec04/features/gcc/figs/tree-ssa-phases.png từ http://www.redhat.com/magazine/002dec04/features/gcc/để biết tổng quan về các bước biên dịch gcc – Christoph

+0

@ysap: Đây là một chủ đề lớn. Ngoài các liên kết đẹp được đăng bởi Christoph, hãy xem các liên kết tôi đã thêm vào trong chỉnh sửa của mình. – janneb

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