2017-02-16 10 views
3

Getting Started with LLVM Core Libraries에 명시된 바와 같이, LLVM 백엔드에는 세 가지의 다른 명령어 스케줄러가 있습니다. 그 중 하나는 레지스터 할당 전에 실행되며 -pre-RA-sched 옵션을 사용하여 선택할 수 있습니다. 다른 두 개는 레지스터 할당 후 실행됩니다. 이 세 가지 스케줄러 각각을 선택하거나 해제하려면 어떻게합니까? 그들은 서로 간섭을합니까?LLVM 명령어 스케줄링

답변

0

자세한 내용은 llc --help-hidden을 참조하십시오. 다음은 RA 사전 SDNode, RA 전 MI 및 RA 이후 스케줄링에 해당하는 세 가지 옵션입니다.

-pre-RA-sched  - Instruction schedulers available (before register allocation): 
-enable-misched  - Enable the machine instruction scheduling pass. 
-enable-post-misched - Enable the post-ra machine instruction scheduling pass. 

RA 사전 SDNode 스케줄링에 사용할 스케줄러를 정확하게 선택할 수 있지만 다른 스케줄러에는 사용할 수 없습니다.