Add changes from D-Programming-Language/dmd#3685
Latest druntime changes
Merge pull request #650 from Trass3r/dmdpr3685

Add changes from D-Programming-Language/dmd#3685
Make function entry basic blocks unnamed.

The performance impact should be completely immeasurable,
but the main benefit is that this makes IR dumps slightly
nicer to look at (as the redundant "empty:" labels are
now omitted entirely).
Merge pull request #653 from klickverbot/unnamed-entry-bb

Make function entry basic blocks unnamed.
Hide some more LLVM-internal command line args.
Add fixes for Win64
Merge pull request #655 from klickverbot/hide-llvm-args

Hide some more LLVM-internal command line args.
Remove -noruntime as adverticed
Add -L=-lcurl to std.net.curl unit test.

There is no pragma to pull in this library. Therefore specify the lib on the command line.
Also remove emptymain.d as we now have the -main switch.
Fold in dmd-testsuite merge conflict fix.
Remove unused 'seenTemplateInstances' mechanism.
Use --gc-sections on Linux.

This was painful.
Disable a few more noisy warnings on recent GCC versions.
Merge pull request #654 from klickverbot/gc-sections

Use --gc-sections on Linux.
Merge pull request #657 from klickverbot/gcc-warnings

Disable a few more noisy warnings on recent GCC versions.
Hide '-disable-debug-info-verifier'.
improve linker setup for Win64 and remove interfering stdint.h
adapt to API change
#658 LOCATION is deprecated