Merge from Clang upstream.

Conflicts:
	lib/AST/ASTContext.cpp
	lib/CodeGen/CGCall.cpp
	lib/CodeGen/CodeGenModule.cpp
	lib/CodeGen/TargetInfo.cpp
	lib/CodeGen/TargetInfo.h
	lib/Headers/CMakeLists.txt
	lib/Lex/PPMacroExpansion.cpp
	lib/Sema/SemaExpr.cpp