Merging r195547:
------------------------------------------------------------------------
r195547 | d0k | 2013-11-23 02:57:32 -0800 (Sat, 23 Nov 2013) | 9 lines

Enable non-fragile ABI for the ObjFW runtime

The following patch enables the non-fragile ABI for the ObjFW runtime.

However, I noticed that it is not possible anymore to disable it with
-fno-objc-nonfragile-abi like it was before. I think this functionality should
be restored, but I guess this is not in scope for 3.4 anymore.

Patch by Jonathan Schleifer!
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195548 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195326:
------------------------------------------------------------------------
r195326 | apazos | 2013-11-20 23:36:33 -0800 (Wed, 20 Nov 2013) | 6 lines

Implemented Neon scalar by element intrinsics.

Intrinsics implemented: vqdmull_lane, vqdmulh_lane, vqrdmulh_lane,
vqdmlal_lane, vqdmlsl_lane scalar Neon intrinsics.


------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195613 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195329:
------------------------------------------------------------------------
r195329 | apazos | 2013-11-21 00:15:01 -0800 (Thu, 21 Nov 2013) | 5 lines

Implemented Neon scalar vdup_lane intrinsics.

Fixed scalar dup alias and added test case.


------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195614 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195501:
------------------------------------------------------------------------
r195501 | joerg | 2013-11-22 13:34:35 -0800 (Fri, 22 Nov 2013) | 5 lines

Adjust r194296 to not apply the alias replacement for externally
available always-inline functions. This breaks libc++'s locale
implementation. Code generation for this case should be fixed, but this
is a stop gap fix for clang 3.4.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195615 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195558:
------------------------------------------------------------------------
r195558 | alp | 2013-11-23 14:11:57 -0800 (Sat, 23 Nov 2013) | 8 lines

Fix a SSE2 intrinsics typo

Full discourse at:

  http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20131104/092514.html
  http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-November/068124.html

Patch by Dimitry Andric and Alexey Dokuchaev!
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195617 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195556:
------------------------------------------------------------------------
r195556 | akirtzidis | 2013-11-23 10:41:35 -0800 (Sat, 23 Nov 2013) | 3 lines

[CodeGen] If there is a function definition with duplicate mangled name, emit an error instead of asserting.

rdar://15522601 & http://llvm.org/PR18031
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195623 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195620:
------------------------------------------------------------------------
r195620 | rsmith | 2013-11-24 23:07:05 -0800 (Sun, 24 Nov 2013) | 3 lines

Take cv-qualifiers on fields of class type into account when determining
whether a defaulted special member function should be deleted.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195719 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195687:
------------------------------------------------------------------------
r195687 | rsmith | 2013-11-25 13:30:29 -0800 (Mon, 25 Nov 2013) | 3 lines

PR18044: Reject declarations of enumtype::X early to avoid an assertion in
downstream code.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195720 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195710:
------------------------------------------------------------------------
r195710 | alp | 2013-11-25 17:30:10 -0800 (Mon, 25 Nov 2013) | 10 lines

Unbreak -fms-extensions with GNU libc headers

GNU libc uses '__uptr' as a member name in C mode, conflicting with the
eponymous MSVC pointer modifier keyword.

Detect and mark the token as an identifier when these specific conditions are
met. __uptr will continue to work as a keyword for the remainder of the
translation unit.

Fixes PR17824.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195721 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195587:
------------------------------------------------------------------------
r195587 | alp | 2013-11-24 16:40:53 -0800 (Sun, 24 Nov 2013) | 11 lines

Add heading and remove leftover personal email addresses

clang's attribute support is mature by now so replace Sean's warning and email
address with a standard LLVM copyright heading.

Also remove a personal email address and credit docstring from CGObjCGNU that
shouldn't have been there.

This is in line with the LLVM developer policy introduced in r45410.
Contributors can add themselves to CREDITS.txt while active module owners are
listed in CODE_OWNERS.TXT.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195724 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195420:
------------------------------------------------------------------------
r195420 | alp | 2013-11-22 00:00:20 -0800 (Fri, 22 Nov 2013) | 6 lines

Add txt file extension to VS solution's README

This matches other README.txt files in LLVM and makes things more obvious on
Windows where it's likely to be read. CRLFs are retained for the same reason.

Also fix Visual Studio product name.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195725 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195422:
------------------------------------------------------------------------
r195422 | alp | 2013-11-22 00:27:46 -0800 (Fri, 22 Nov 2013) | 5 lines

Tidy up the no-external-assembler diag

Diags aren't usually in the first person, and 'windows' isn't the correct
product spelling to use in prose. Sidestep issues completely by making this
error message platform-neutral.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195726 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195669:
------------------------------------------------------------------------
r195669 | majnemer | 2013-11-25 09:50:19 -0800 (Mon, 25 Nov 2013) | 13 lines

[-cxx-abi microsoft] Create backrefs for <unnamed-type-`id'>

It wasn't possible for an anonymous type to show up inside of function arguments.
However, decltype (which MSVC added support for in 2010) makes this
possible.  Further, backrefs to these anonymous types can now be formed.

This fixes PR18022.

N.B. We do not, and very likely _will not_, support MSVC's bug where
subsequent typedefs of anonymous types leak into the linkage name; this
is a gross violation of the ABI.  A warning should be introduced to
inform our users of this particular shortcoming.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195729 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195693:
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195732 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195716:
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195734 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195409:
------------------------------------------------------------------------
r195409 | jiangning | 2013-11-21 18:46:20 -0800 (Thu, 21 Nov 2013) | 2 lines

For AArch64, intrinsic vget_low_xxx can be optimized away.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195765 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195760:
------------------------------------------------------------------------
r195760 | ggreif | 2013-11-26 05:28:51 -0800 (Tue, 26 Nov 2013) | 1 line

fix a typo
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195811 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195303:
------------------------------------------------------------------------
r195303 | rsmith | 2013-11-20 17:53:02 -0800 (Wed, 20 Nov 2013) | 4 lines

PR10837: Warn if a null pointer constant is formed by a zero integer constant
expression that is not a zero literal, in C. This is a different, and more
targeted, approach than that in r194540.

------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195815 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195768:
------------------------------------------------------------------------
r195768 | rafael | 2013-11-26 08:09:08 -0800 (Tue, 26 Nov 2013) | 3 lines

Don't call getMostRecentDecl when we know we have it.

On a Release build this takes the testcase in pr18055 from 0m3.892s to 0m1.452s.
------------------------------------------------------------------------


git-svn-id: https://llvm.org/svn/llvm-project/cfe/branches/release_34@195816 91177308-0d34-0410-b5e6-96231b3b80d8
Merging r195888:
------------------------------------------------------------------------
r195888 | rsmith | 2013-11-27 14:58:16 -0800 (Wed, 27 Nov 2013) | 2 lines

Add support for C++'s SD6 feature test macros.

------------------------------------------------------------------------


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