Move SanitizerArgs to the clang Driver

Summary:
This change turns SanitizerArgs into high-level options
stored in the Driver, which are parsed lazily. This fixes an issue of multiple copies of the same diagnostic message produced by sanitizer arguments parser.

Reviewers: rsmith

Reviewed By: rsmith

CC: chandlerc, eugenis, cfe-commits

Differential Revision: http://llvm-reviews.chandlerc.com/D1341

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@188660 91177308-0d34-0410-b5e6-96231b3b80d8
clang/test/CodeGenObjC/2010-02-09-DbgSelf.m: Tweak for -Asserts in r188651.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@188661 91177308-0d34-0410-b5e6-96231b3b80d8
Explicitly specify triple in driver test from r188660

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@188662 91177308-0d34-0410-b5e6-96231b3b80d8
XCore target: correct test layout

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@188663 91177308-0d34-0410-b5e6-96231b3b80d8
XCore target: Add target specific EmitVAArg

This is so aggregates can be passed as var args too.

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