llvm API changes
Merge pull request #692 from Trass3r/master

fix for llvm trunk
Add missing LLVM 3.5 intrinsic and add support for LLVM 3.6.
Fix LLVM 3.6 build
Fix for issue #695
Fix for issue #648.

Uses the llvmInternal member and the intrinsic name to identify an intrinsic.
Implements llvm.bswap, llvm.ctpop, llvm.ctlz and llvm.cttz intrinsics as builtins and remove the core.bitop counterparts.

The implementation is complicated by the fact that the overloaded intrinsic name is resolved during code generation.
Merge pull request #694 from redstar/issue648

Fix for issue #648.
Fix LLVM 3.6 build
Fix another LLVM 3.6 change
Remove an useless forward declaration
Reallow failures of LLVM 3.5 build and add LLVM 3.6 build.

Same situation as with LLVM 3.4: as soon as the release is branched the llvm-3.x packages fails to install.
Add LLVM 3.5 toolchain.

Using the right name, the LLVM 3.5 toolchain can be installed. :-)
Merge branch 'master' into release-0.14.0