Tôi đang viết một thẻ LLVM. Đối với một hướng dẫn (llvm :: Instruction Class), làm thế nào tôi có thể kiểm tra nếu một lệnh là một chỉ dẫn PHI?Cách kiểm tra xem hướng dẫn có phải là chỉ dẫn PHI trong LLVM IR
Trả lời
Tôi đã tìm thấy giải pháp. Bạn có thể kiểm tra nút PHI như thế này, isa<PHINode>(inst)
.
Vâng, tôi không biết rằng 'isa' tồn tại. Đó là một +1 từ tôi. – Mysticial
@Mystical, http://llvm.org/docs/ProgrammersManual.html là một nguồn thông tin tốt :) –
Instruction* I;
if(I->getOpcode()==Instruction::PHI){
//code
}
giải pháp isa <> là cách thực hiện các kiểm tra này. Nếu tôi có đủ danh tiếng tôi sẽ downvoat này, do đó bạn nên có thể xóa nó. – baibo
Một 'dyn_cast (x) == NULL' có hoạt động không? –
Mysticial
Bí ẩn - yup, một cái gì đó tương tự, đó là, isa (x), đã làm việc cho tôi! –
MetallicPriest