我希望MachineInstr
在MCInst
.MachineFunctionPass
我知道X86MCInstLower
将转换MachineInstr
为MCInst
. 但是,初始化X86MCInstLower
需要一个X86AsmPrinter
. X86AsmPrinter
本身MachineFunctionPass
就是需要TargetMachine &
和std::unique_ptr<MCStreamer>
被启动的。我不能TargetMachine
从 a中得到,MachineFunction
因为MachineFunction
只有返回const TargetMachine &
。构造TargetMachine
函数也没有任何来自const TargetMachine
.
因此,我被困在这个转换点上。有什么方法可以运行注册通行证并从 a 中获取其输出MachineFunctionPass
?X86AsmPrinter
注册TargetRegistry
于RegisterAsmPrinter
。我想知道我们是否可以利用它。
有一个关于此的邮件列表线程。然而,这并没有最终解决问题。