Merge pull request #29 from pcc/roll

Roll LLVM to r209872 and build a few more libs required by Clang
Introduce LoadLibraryPermanently and ParseCommandLineOptions functions
Merge pull request #30 from pcc/support

Introduce LoadLibraryPermanently and ParseCommandLineOptions functions
Introduce (*DIBuilder).CreateLexicalBlockFile function
Merge pull request #31 from pcc/dbg

Introduce (*DIBuilder).CreateLexicalBlockFile function
Introduce TargetMachine.AddAnalysisPasses function
Introduce llvm.WriteBitcodeToMemoryBuffer function
Merge pull request #32 from pcc/tm

Introduce TargetMachine.AddAnalysisPasses function
Merge pull request #33 from pcc/bc

Introduce llvm.WriteBitcodeToMemoryBuffer function
Introduce support for attribute masks above 1 << 31

LLVM does not expose mask constants for these attributes, so we define our own and use
a test to ensure they do not drift.
Add bindings for the sanitizer passes
Merge pull request #34 from pcc/san

Add bindings for the sanitizer passes
Roll LLVM to r214593

Incorporates a couple of sanitizer bug fixes and a fix for an assertion
failure which broke the libgo test suite.

Also build the FileCheck tool required by llgo's test suite when using Ninja.
Expose the LLVM version as a string constant

We retrieve the version from llvm-config and store it in the repository
to support the case where byollvm is defined.