Linker: Add flag to override linkage rules
Add a flag to lib/Linker (and llvm-link) to override linkage rules.
When set, the functions in the source module *always* replace those in
the destination module.
The llvm-link option is -override=abc.ll. All the "regular" modules
are loaded and linked first, followed by the -override modules. This
is useful for debugging workflows where some subset of the module (e.g.,
a single function) is extracted into a separate file where it's
optimized differently, before being merged back in.
Patch by Luqman Aden!