LLVM commit D33655 was reverted, because it exposed an assertion failure,
in GenerateVarArgsThunk. That function attempts to clone a function
before clang is entirely done generating the debug info for the current
compliation unit. That is not a valid use of the API, because it expects
that there are no temporary MD nodes in the nodes that it needs to clone.
However, until now, this did not cause any problems (though could have
caused assertions in the backend due to mismatched debug info metadata).
Attempt to rectify this by finalizing the SP before attempting to clone it.
The requisite LLVM API is being introduced in D33704.