For C#/.NET, writing an analysis tool (stand-alone .exe) is quite simple: set
FunctionUnit.HighLevelIRFunctionUnitState
for RaisePhase
in the generated code. Remember to skip function units with !functionUnit.AliasInfo.IsComplete
since they are unmanaged code.Missing information in Phoenix IR is still a headache, as well as not-so-canonical IR forms. There's a talk with Open64 guys on Wednesday. I'm wondering if Open64 IR or LLVM IR would be better for program analysis. However, Visual C++ is always the ultimate front-end on Windows: other compilers could even hardly parse Windows.h as Microsoft-specific grammars keep growing.
No comments:
Post a Comment