Update for IR: add a second AtomicOrdering to cmpxchg insts.

rdar://problem/15996804

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@203560 91177308-0d34-0410-b5e6-96231b3b80d8
Sema: produce error when invalid ordering is passed to atomic builtin

This is a conservative check, because it's valid for the expression to be
non-constant, and in cases like that we just don't know whether it's valid.

rdar://problem/16242991

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@203561 91177308-0d34-0410-b5e6-96231b3b80d8