__has_attribute now understands target-specific attributes. So when you ask whether an ARM target has the "interrupt" attribute, it will return true for ARM and MSP430 targets, and false for others.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@198897 91177308-0d34-0410-b5e6-96231b3b80d8
Updating documentation for the __has_attribute changes landed in r198897.

git-svn-id: http://llvm.org/svn/llvm-project/cfe/trunk@198899 91177308-0d34-0410-b5e6-96231b3b80d8
[ms-abi] Fixing CGRecordLayoutBuilder w.r.t. MS NonVirutalBase Layout


The MS abi lays out *all* non-virtual bases with leading vfptrs before 
laying out non-virutal bases without vfptrs.  This guarantees that the 
primary base is laid out first.  r198818 fixed RecordLayoutBuilder to 
produce compatiable layouts.  This patch fixes CGRecordLayoutBuilder to 
be able to consume those layouts and produce meaningful output without 
tripping any asserts about assumed incoming layout.

A test case is included that shows CGRecordLayoutBuilder in fact 
produces output in the compatiable order.



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