atan and atan2 are now part of libclc
Implement llvm.trunc intrinsic

Sort some functions while we are here
Fix llvm.trunc

Its meaning is different from fptrunc
Handle llvm.uadd.with.overflow
Implement ctlz

Also let CUDA's ffs use this implementation
Merge branch 'master' into llvm-trunk