Rename extended backtrace methods to take out the "ThreadOrigin"
bit from the method names.
<rdar://problem/15314369>
Implement AArch64 Neon instruction set Perm.
Implement AArch64 Neon instruction set Perm.
[ASan] Disable back init-order checker. Make strict_init_order imply check_initialization_order
Fix definition for Mips16 pc relative load word instructions.
[PECOFF] Do not wrap the linker internal file with an archive file.

We wrapped the linker internal file with a virtual archive file, so that the
linker internal file was linked only when it's actually used. This was to avoid
__ImageBase being included to the resulting executable. __ImageBase used to
occupy four bytes when emitted to executable.

And then it turned out that the implementation of __ImageBase was wrong -- it
shouldn't have been a regular atom but an absolute atom. Absolute atoms point
to some memory location, but they don't occupy disk space themselves. So it
wouldn't increase executable size (except the symbol table.) That means that
it's OK to link the linker internal file unconditionally.

So this patch does that, removing the wrapper archive file. Doing this
simplifies the code.
Undef a local macro after use.
[PECOFF] Do not add the same library to the input graph more than once.

/defaultlib options can be specified implicitly via the .drectve section, and
it's pretty common that multiple object files add the same library, such as
user32.lib, to the input. We shouldn't add the same library multiple times.
[PECOFF] Do not expose _noDefaultLibs. No functionality change.
[PECOFF] Make /disallowlib an alias for /nodefaultlib.

I'm not sure if it is really an alias for /nodefaultlib, but I can say that
they are at least similar. Making it an alias would be better than ignoring it.
Fix PR17738 - add support for vtordisp thunks when using -cxx-abi microsoft