Eliminate a few more temporary std::strings.
Trim unneeded #includes.

This also helps clarify that we're not using the MC framework.
Fix missing LLVMBuild.txt and CMake dependencies.
Teach phi translation to also look through bitcasts.

This fixes a regression introduced in d95cd364f0c049d6c1b8d78746d44c00ed2f69f2;
when regular expression translation looks through bitcasts but phi translation
doesn't, phi translation may fail to properly detect dependencies.
Clean up the handling of inline asm.

Make inline asm a report_fatal_error instead of an assertion failure so
that it's a little friendlier, and add a test to make sure llc -march=js
rejects inline asm.

Also disable the PNaCl inline asm("":::"memory") lowering pass. If people
are using this, it's best that we diagnose it as it likely isn't portable.
There are usually better alternatives.
Don't run a pass to strip dead prototypes; just ignore them.

Also, fix the code for supressing declarations for no-op intrinsics.