Add an assert and avoid unneeded nullptr checks of Fn in CodeGenFunction::GenerateCode.
Unless I am missing something, Fn is always non-null here. If Fn could be null then the code in StartFunction seems seriously broken since it is used unchecked there.
Once there is one "if (Fn)" in the code, static analyzers start complaining about any unchecked uses of Fn.
How obnoxious would it be if I asked to make Fn a llvm::Function & instead of a pointer? Then we don't need the assert at all and the interface will enforce the requirement for us.