Reapply address space patch after fixing an issue in MemCopyOptimizer.
Added support for address spaces and added a isVolatile field to memcpy, memmove, and memset,
e.g., llvm.memcpy.i32(i8*, i8*, i32, i32) -> llvm.memcpy.p0i8.p0i8.i32(i8*, i8*, i32, i32, i1)

llvm-svn: 100304
28 files changed
tree: 92ab168aae98130ef0296d849d3c85e1d5fe039b
  1. clang/
  2. compiler-rt/
  3. llvm/