You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Looks like this is an LLVM IR ABI break: if we merge this, you won't be able to LTO code from clang 4.0.0 with code from clang 4.0.1 if you use -mregparm.
On the other hand, if we don't merge this, then building with -mregparm at all will potentially miscompile. I'm inclined to say that's more important than maintaining LLVM IR compatibility between patch releases here. Mechanically, the patch looks OK to merge, assuming you're OK with its implications.
I believe you also need to merge r298179 for this patch to have any effect.
Regarding LTO'ing code from 4.0.0 with code from 4.0.1: that should still work. Linking a module with a module flag against another module without that module flag will give you a module with the module flag from the first module. That means that the backend will use the -mregparm flag from the 4.0.1 module, which is probably the best that we can do.
Extended Description
Is this patch OK to merge to the 4.0 branch?
The text was updated successfully, but these errors were encountered: