The previously existing patch needed some modifications to fit
on top of lld 3.9.
Patch 2 makes sure that one still can use the lld built in this
way for linking in MSVC mode.
Patch 3 fixes linking binaries larger than 4 MB or so (previously
the binaries linked fine but didn't work).
Patch 4 makes sure to error out if the relocations are too far
away (instead of producing a broken binary), which happens after
16 MB.
Patch 5 fixes relocations that have an offset, which probably
happens in hand-written assembly (in libav).