]> granicus.if.org Git - clang/log
clang
10 years agoFix the regression caused by r196378
Alexander Kornienko [Wed, 4 Dec 2013 13:25:26 +0000 (13:25 +0000)]
Fix the regression caused by r196378

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

10 years agoLeave constructor initializer lists on one line in styles with no column limit.
Alexander Kornienko [Wed, 4 Dec 2013 12:21:08 +0000 (12:21 +0000)]
Leave constructor initializer lists on one line in styles with no column limit.

Summary:
Allow tryFitMultipleLinesInOne join unwrapped lines when
ContinuationIndenter::mustBreak doesn't agree. But don't merge any lines, that
are separate in the input.

Reviewers: djasper

Reviewed By: djasper

CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2321

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

10 years agoRevert r196372, "do not warn about unknown pragmas in modes that do not handle them...
NAKAMURA Takumi [Wed, 4 Dec 2013 11:12:26 +0000 (11:12 +0000)]
Revert r196372, "do not warn about unknown pragmas in modes that do not handle them (pr9537)"

It broke clang tests on some hosts with +Asserts. Seems "STDC" clashes.

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

10 years agodo not warn about unknown pragmas in modes that do not handle them (pr9537)
Lubos Lunak [Wed, 4 Dec 2013 10:21:41 +0000 (10:21 +0000)]
do not warn about unknown pragmas in modes that do not handle them (pr9537)

And refactor to have just one place in code that sets up the empty
pragma handlers.

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

10 years ago[SystemZ] Fix handling of pass-by-pointer arguments
Richard Sandiford [Wed, 4 Dec 2013 09:59:57 +0000 (09:59 +0000)]
[SystemZ] Fix handling of pass-by-pointer arguments

I'd misunderstood getIndirect() to mean that the argument should be passed
as a pointer at the ABI level, with the ByVal argument choosing caller-copy
semantics over no-caller-copy (callee-copy-on-write) semantics.  But
getIndirect(x) actually means that x is passed by pointer at the IR
level but (at least on all other targets I looked at) directly at the
ABI level.  getIndirect(x, false) selects a pointer to a caller-made
copy, which is what SystemZ was aiming for.

This fixes a miscompilation of c-index-test.  Structure arguments were being
passed by pointer, but no copy was being made, so a write in the callee
stomped over a caller's local variable.

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

10 years agoSema: Propagate the mangling number into instantiations
David Majnemer [Wed, 4 Dec 2013 09:01:55 +0000 (09:01 +0000)]
Sema: Propagate the mangling number into instantiations

We would lose track of the mangling number assigned to the original
declaration which would cause us to create manglings that didn't match
the Itanium C++ specification.

e.g. Two static fields with the same name inside of a function template
would receive the same mangling with LLVM fixing up the second field so
they wouldn't collide.  This would create an incompatibility with other
compilers following the Itanium ABI.

I've confirmed that the new mangling is identical to the ones generated
by icc and gcc.

N.B. This was uncovered while working on Microsoft mangler.

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

10 years ago[AArch64 NEON] Add ACLE intrinsic vceqz_f64.
Kevin Qin [Wed, 4 Dec 2013 08:02:11 +0000 (08:02 +0000)]
[AArch64 NEON] Add ACLE intrinsic vceqz_f64.

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

10 years ago[AArch64 NEON] Add missing compare intrinsics.
Kevin Qin [Wed, 4 Dec 2013 07:53:09 +0000 (07:53 +0000)]
[AArch64 NEON] Add missing compare intrinsics.

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

10 years agoFix error recovery in return statement.
Serge Pavlov [Wed, 4 Dec 2013 03:51:59 +0000 (03:51 +0000)]
Fix error recovery in return statement.

This patch fixes PR16989.

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

10 years agoFix PR17637: incorrect calculation of template parameter depth
Faisal Vali [Wed, 4 Dec 2013 03:51:14 +0000 (03:51 +0000)]
Fix PR17637: incorrect calculation of template parameter depth

In delayed template parsing mode, adjust the template depth counter for each template parameter list associated with an out of line member template specialization.

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

10 years agoclang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/
NAKAMURA Takumi [Wed, 4 Dec 2013 03:41:33 +0000 (03:41 +0000)]
clang/test: REQUIRES: s/x86-64-registered-target/x86-registered-target/

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

10 years agoclang/test: REQUIRES: s/ppc{32|64}-registered-target/powerpc-registered-target/
NAKAMURA Takumi [Wed, 4 Dec 2013 03:41:15 +0000 (03:41 +0000)]
clang/test: REQUIRES: s/ppc{32|64}-registered-target/powerpc-registered-target/

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

10 years agoclang/test/CodeGen/builtins-nvptx.c: Prune "REQUIRES: nvptx64-registered-target"...
NAKAMURA Takumi [Wed, 4 Dec 2013 03:41:02 +0000 (03:41 +0000)]
clang/test/CodeGen/builtins-nvptx.c: Prune "REQUIRES: nvptx64-registered-target". "nvptx" should imply it.

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

10 years agocheck-clang: Introduce get_llvm_config_props in clang/test/lit.cfg.
NAKAMURA Takumi [Wed, 4 Dec 2013 03:40:56 +0000 (03:40 +0000)]
check-clang: Introduce get_llvm_config_props in clang/test/lit.cfg.

In trunk, we can use features as below:

  aarch64-registered-target
  hexagon-registered-target
  msp430-registered-target
  r600-registered-target
  systemz-registered-target
  xcore-registered-target

Each of them, as below, implies corresponding subtargets:

  arm-registered-target   -- arm, thumb
  mips-registered-target  -- mips, mips64, mips64el, mipsel
  nvptx-registered-target -- nvptx, nvptx64
  sparc-registered-target -- sparc, sparcv9
  x86-registered-target   -- x86, x86-64

They will be renamed:

  cppbackend-registered-target -- was "cpp". Unused in trunk.
  powerpc-registered-target -- was "ppc32", "ppc64" and "ppc64le".

The feature "asserts" is also taken from llvm-config.

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

10 years agoAdd newline at eof.
NAKAMURA Takumi [Wed, 4 Dec 2013 03:40:51 +0000 (03:40 +0000)]
Add newline at eof.

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

10 years agoRemove redundant check.
Richard Smith [Wed, 4 Dec 2013 01:01:51 +0000 (01:01 +0000)]
Remove redundant check.

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

10 years agoFix crash if a dependent template-id was assumed to be a type but instantiates
Richard Smith [Wed, 4 Dec 2013 00:56:29 +0000 (00:56 +0000)]
Fix crash if a dependent template-id was assumed to be a type but instantiates
to a variable template specialization.

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

10 years agoclang-format-diff.py: Fix 'beintroduced' in help output
Alp Toker [Wed, 4 Dec 2013 00:48:22 +0000 (00:48 +0000)]
clang-format-diff.py: Fix 'beintroduced' in help output

Also update docs to reflect recently changed -i inplace edit behaviour.

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

10 years agoFix crash if a variable template specialization is used in a nested-name-specifier.
Richard Smith [Wed, 4 Dec 2013 00:47:45 +0000 (00:47 +0000)]
Fix crash if a variable template specialization is used in a nested-name-specifier.

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

10 years agoFix several crash-on-invalids when using template-ids that aren't
Richard Smith [Wed, 4 Dec 2013 00:28:23 +0000 (00:28 +0000)]
Fix several crash-on-invalids when using template-ids that aren't
simple-template-ids (eg, 'operator+<int>') in weird places.

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

10 years ago[objc] Add a warning when a class that provides a designated initializer, does not
Argyrios Kyrtzidis [Tue, 3 Dec 2013 21:11:54 +0000 (21:11 +0000)]
[objc] Add a warning when a class that provides a designated initializer, does not
override all of the designated initializers of its superclass.

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

10 years ago[objc] Emit warning when the implementation of a secondary initializer calls on
Argyrios Kyrtzidis [Tue, 3 Dec 2013 21:11:49 +0000 (21:11 +0000)]
[objc] Emit warning when the implementation of a secondary initializer calls on
super another initializer and when the implementation does not delegate to
another initializer via a call on 'self'.

A secondary initializer is an initializer method not marked as a designated
initializer within a class that has at least one initializer marked as a
designated initializer.

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

10 years ago[objc] Emit warnings when the implementation of a designated initializer calls on
Argyrios Kyrtzidis [Tue, 3 Dec 2013 21:11:43 +0000 (21:11 +0000)]
[objc] Emit warnings when the implementation of a designated initializer calls on
super an initializer that is not a designated one or any initializer on self.

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

10 years ago[objc] Emit a warning when the implementation of a designated initializer does not...
Argyrios Kyrtzidis [Tue, 3 Dec 2013 21:11:36 +0000 (21:11 +0000)]
[objc] Emit a warning when the implementation of a designated initializer does not chain to
an init method that is a designated initializer for the superclass.

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

10 years ago[objc] Introduce ObjCInterfaceDecl::getDesignatedInitializers() to get the
Argyrios Kyrtzidis [Tue, 3 Dec 2013 21:11:30 +0000 (21:11 +0000)]
[objc] Introduce ObjCInterfaceDecl::getDesignatedInitializers() to get the
designated initializers of an interface.

If the interface declaration does not have methods marked as designated
initializers then the interface inherits the designated initializers of
its super class.

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

10 years ago[objc] Introduce attribute 'objc_designated_initializer'.
Argyrios Kyrtzidis [Tue, 3 Dec 2013 21:11:25 +0000 (21:11 +0000)]
[objc] Introduce attribute 'objc_designated_initializer'.

It only applies to methods of init family in an interface declaration.

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

10 years agoFix corner case in module-based layering warning.
Daniel Jasper [Tue, 3 Dec 2013 20:30:36 +0000 (20:30 +0000)]
Fix corner case in module-based layering warning.

Before, there SourceManager would not return a FileEntry for a
SourceLocation of a macro expansion (if the header name itself is
defined in a macro). We'd then fallback to assume that the module
currently being built is the including module. However, in this case we
are actually interested in the spelling location of the filename loc in
order to derive the including module.

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

10 years agoCMake: enable building the clang-format vs plugin
Hans Wennborg [Tue, 3 Dec 2013 18:02:51 +0000 (18:02 +0000)]
CMake: enable building the clang-format vs plugin

This makes it possible to build the clang-format vs plugin from the cmake build.
It is a hack, as it shells out to "devenv" to actually build it, but it's hidden
away in a corner behind a flag, and it provides a convenient way of building the
plug-in from the command-line together with the rest of clang.

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

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

10 years agoclang-format: Improve clang-format's documentation of ColumnLimit=0.
Daniel Jasper [Tue, 3 Dec 2013 17:21:57 +0000 (17:21 +0000)]
clang-format: Improve clang-format's documentation of ColumnLimit=0.

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

10 years agoIssue diagnostic when constructor or destructor
Fariborz Jahanian [Tue, 3 Dec 2013 17:10:08 +0000 (17:10 +0000)]
Issue diagnostic when constructor or destructor
return void expression. // rdar://15366494
pr17759.

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

10 years agoCheck IR on this test.
Rafael Espindola [Tue, 3 Dec 2013 14:46:31 +0000 (14:46 +0000)]
Check IR on this test.

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

10 years agoCheck IR on this test.
Rafael Espindola [Tue, 3 Dec 2013 14:43:17 +0000 (14:43 +0000)]
Check IR on this test.

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

10 years agoCheck IR on this test.
Rafael Espindola [Tue, 3 Dec 2013 14:37:33 +0000 (14:37 +0000)]
Check IR on this test.

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

10 years agoCheck IR on this test.
Rafael Espindola [Tue, 3 Dec 2013 14:35:42 +0000 (14:35 +0000)]
Check IR on this test.

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

10 years agoCheck IR on this test.
Rafael Espindola [Tue, 3 Dec 2013 14:33:08 +0000 (14:33 +0000)]
Check IR on this test.

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

10 years agocheck IR in this test
Rafael Espindola [Tue, 3 Dec 2013 14:23:52 +0000 (14:23 +0000)]
check IR in this test

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

10 years agocheck IR in this test.
Rafael Espindola [Tue, 3 Dec 2013 14:21:57 +0000 (14:21 +0000)]
check IR in this test.

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

10 years agocheck IR in this test.
Rafael Espindola [Tue, 3 Dec 2013 14:19:02 +0000 (14:19 +0000)]
check IR in this test.

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

10 years agoCheck IR in this test.
Rafael Espindola [Tue, 3 Dec 2013 14:16:22 +0000 (14:16 +0000)]
Check IR in this test.

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

10 years agoCheck IR in this test.
Rafael Espindola [Tue, 3 Dec 2013 14:09:19 +0000 (14:09 +0000)]
Check IR in this test.

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

10 years agoCheck IR in this test.
Rafael Espindola [Tue, 3 Dec 2013 14:06:23 +0000 (14:06 +0000)]
Check IR in this test.

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

10 years agoCheck IR instead of assembly in this test.
Rafael Espindola [Tue, 3 Dec 2013 13:57:25 +0000 (13:57 +0000)]
Check IR instead of assembly in this test.

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

10 years agoTypo caught by Alp Toker: s/appertain/appertains
Aaron Ballman [Tue, 3 Dec 2013 13:45:50 +0000 (13:45 +0000)]
Typo caught by Alp Toker: s/appertain/appertains

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

10 years agoCreate a separate file for JS-specific unit tests.
Alexander Kornienko [Tue, 3 Dec 2013 10:50:16 +0000 (10:50 +0000)]
Create a separate file for JS-specific unit tests.

Reviewers: djasper

Reviewed By: djasper

CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2307

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

10 years agoPreserve carriage return when using clang-format's XML interface.
Manuel Klimek [Tue, 3 Dec 2013 09:46:06 +0000 (09:46 +0000)]
Preserve carriage return when using clang-format's XML interface.

Patch by James Park.

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

10 years agoParse: Fix references to 'if' that meant 'for', 'do', and 'while'
Justin Bogner [Tue, 3 Dec 2013 07:36:55 +0000 (07:36 +0000)]
Parse: Fix references to 'if' that meant 'for', 'do', and 'while'

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

10 years agoRemove HandleTagDeclDefinition class declaration
Alp Toker [Tue, 3 Dec 2013 07:27:53 +0000 (07:27 +0000)]
Remove HandleTagDeclDefinition class declaration

HandleTagDeclDefinition is in fact a function.

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

10 years agoDocumentation typo corrections
Alp Toker [Tue, 3 Dec 2013 06:53:39 +0000 (06:53 +0000)]
Documentation typo corrections

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

10 years agoFix method/variable name typos
Alp Toker [Tue, 3 Dec 2013 06:53:35 +0000 (06:53 +0000)]
Fix method/variable name typos

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

10 years agoclang-format: Explicitly set fallback style that is tested.
Daniel Jasper [Tue, 3 Dec 2013 06:48:41 +0000 (06:48 +0000)]
clang-format: Explicitly set fallback style that is tested.

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

10 years agoEmit an extension warning when changing system header tokens
Alp Toker [Tue, 3 Dec 2013 06:13:01 +0000 (06:13 +0000)]
Emit an extension warning when changing system header tokens

clang converts keywords to identifiers for compatibility with various system
headers such as GNU libc.

Implement a -Wkeyword-compat extension warning to diagnose those cases. The
warning is on by default but will generally be ignored in system headers. It
can however be enabled globally to aid standards conformance testing.

This also changes the __uptr keyword avoidance from r195710 to no longer
special-case system headers, bringing it in line with other similar workarounds
in clang.

Implementation returns bool for symmetry with token annotation functions.

Some examples:

warning: keyword '__is_pod' will be treated as an identifier for the remainder of the translation unit [-Wkeyword-compat]
struct __is_pod

warning: keyword '__uptr' will be treated as an identifier here [-Wkeyword-compat]
union w *__uptr;

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

10 years ago[AArch64]Add missing floating point convert, round and misc intrinsics.
Hao Liu [Tue, 3 Dec 2013 06:07:13 +0000 (06:07 +0000)]
[AArch64]Add missing floating point convert, round and misc intrinsics.
E.g. int64x1_t vcvt_s64_f64(float64x1_t a) -> FCVTZS Dd, Dn

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

10 years agoAArch64: add missing ACLE intrinsics mapping to general arithmetic operation from...
Hao Liu [Tue, 3 Dec 2013 05:58:49 +0000 (05:58 +0000)]
AArch64: add missing ACLE intrinsics mapping to general arithmetic operation from VFP instructions.
E.g. float64x1_t vadd_f64(float64x1_t a, float64x1_t b) -> FADD Dd, Dn, Dm.

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

10 years agoPatch by Ana Pazos.
Jiangning Liu [Tue, 3 Dec 2013 05:36:55 +0000 (05:36 +0000)]
Patch by Ana Pazos.

Fixed vcopy_laneq_f64 intrinsic implementation.

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

10 years agorevert r196152.
Hao Liu [Tue, 3 Dec 2013 05:35:17 +0000 (05:35 +0000)]
revert r196152.
This is a duplicate implementation.
E.g. this patch defines:
     float64_t vabd_f64(float64_t a, float64_t b)
But there is already a similar intrinsic "vabdd_f64" with the same types.
Also, this intrinsic will be conflicted to the vector type intrinsic as following(Which is implemented by me and will be committed to trunk):
     float64x1_t vabd_f64(float64x1_t a, float64x1_t b).
Two functions shouldn't have a same name in arm_neon.h.
According to ARM ACLE document, such vabd_f64 with float64_t is not existing.
So I revert this commit.

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

10 years agoTest to ensure no old-style-cast warning is emitted for objc-arc __bridge casts
Alp Toker [Tue, 3 Dec 2013 05:31:51 +0000 (05:31 +0000)]
Test to ensure no old-style-cast warning is emitted for objc-arc __bridge casts

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

10 years agoAArch64: Add missing scalar pair intrinsics.
Hao Liu [Tue, 3 Dec 2013 03:40:08 +0000 (03:40 +0000)]
AArch64: Add missing scalar pair intrinsics.
E.g. "float32_t vaddv_f32(float32x2_t a)" to be matched into "faddp s0, v1.2s".

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

10 years agoAdd some missing AArch64 Neon intrinsics like vuqadd_s64 and friends.
Jiangning Liu [Tue, 3 Dec 2013 01:33:16 +0000 (01:33 +0000)]
Add some missing AArch64 Neon intrinsics like vuqadd_s64 and friends.

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

10 years agoAdd some missing AArch64 Neon intrinsics like vmull_high_n_s16 and friends.
Jiangning Liu [Tue, 3 Dec 2013 01:28:55 +0000 (01:28 +0000)]
Add some missing AArch64 Neon intrinsics like vmull_high_n_s16 and friends.

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

10 years agoMS inline asm: When LLVM called back to Clang to parse a name and do name
Dmitri Gribenko [Tue, 3 Dec 2013 00:48:09 +0000 (00:48 +0000)]
MS inline asm: When LLVM called back to Clang to parse a name and do name
lookup, if parsing failed, we did not restore the lexer state properly, and
eventually crashed.  This change ensures that we always consume all the tokens
from the new token stream we started to parse the name from inline asm.

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

10 years agoRefactored the work group-related attributes to use a template, which reduces the...
Aaron Ballman [Mon, 2 Dec 2013 22:38:33 +0000 (22:38 +0000)]
Refactored the work group-related attributes to use a template, which reduces the amount of duplicate code in the handler. No functional change intended.

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

10 years agoSimplifying a test for duplicate vec_type_hint attributes. The assert and attribute...
Aaron Ballman [Mon, 2 Dec 2013 22:16:55 +0000 (22:16 +0000)]
Simplifying a test for duplicate vec_type_hint attributes. The assert and attribute kind test were superfluous. No functional change intended.

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

10 years agoThe CUDA device attribute doesn't need custom logic to check the number of attribute...
Aaron Ballman [Mon, 2 Dec 2013 21:09:08 +0000 (21:09 +0000)]
The CUDA device attribute doesn't need custom logic to check the number of attribute arguments (the common attribute handler already does this). Switching to use the simple attribute handler. No functional change intended.

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

10 years ago[AArch64] Implemented vcopy_lane patterns using scalar DUP instruction.
Chad Rosier [Mon, 2 Dec 2013 21:07:27 +0000 (21:07 +0000)]
[AArch64] Implemented vcopy_lane patterns using scalar DUP instruction.
Patch by Ana Pazos!

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

10 years ago[AArch64] Add missing NEON scalar floating-point to integer convert ACLEs.
Chad Rosier [Mon, 2 Dec 2013 21:07:24 +0000 (21:07 +0000)]
[AArch64] Add missing NEON scalar floating-point to integer convert ACLEs.

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

10 years agoDebug Info: Move the constant for Debug Info Version from Dwarf.h to Metadata.h.
Manman Ren [Mon, 2 Dec 2013 20:10:37 +0000 (20:10 +0000)]
Debug Info: Move the constant for Debug Info Version from Dwarf.h to Metadata.h.

Suggested by Eric.
Paired commit with r196144.

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

10 years agoExpand comments for Debug Info Version.
Manman Ren [Mon, 2 Dec 2013 19:37:35 +0000 (19:37 +0000)]
Expand comments for Debug Info Version.

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

10 years agoRectifying style issues with generated code. No functional change intended.
Aaron Ballman [Mon, 2 Dec 2013 19:36:42 +0000 (19:36 +0000)]
Rectifying style issues with generated code. No functional change intended.

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

10 years agoAutomate attribute language option checking by specifying the list of options to...
Aaron Ballman [Mon, 2 Dec 2013 19:30:36 +0000 (19:30 +0000)]
Automate attribute language option checking by specifying the list of options to test in tablegen.

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

10 years agoClangFormatPackage.cs: fix inconsistent line endings
Hans Wennborg [Mon, 2 Dec 2013 18:57:12 +0000 (18:57 +0000)]
ClangFormatPackage.cs: fix inconsistent line endings

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

10 years agoFactored attribute mutual exclusion code into a helper function; split the cf_audited...
Aaron Ballman [Mon, 2 Dec 2013 18:05:46 +0000 (18:05 +0000)]
Factored attribute mutual exclusion code into a helper function; split the cf_audited_transfer and cf_unknown_transfer attributes into separate helper methods for simplicity. No functional changes intended.

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

10 years agoclang-format vs plugin: use Alp's suggestion for getting the path
Hans Wennborg [Mon, 2 Dec 2013 17:40:46 +0000 (17:40 +0000)]
clang-format vs plugin: use Alp's suggestion for getting the path

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

10 years agoFix a typo in a comment: expasion -> expansion
James Dennett [Mon, 2 Dec 2013 17:39:27 +0000 (17:39 +0000)]
Fix a typo in a comment: expasion -> expansion

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

10 years agoclang-format vs plugin: bake clang-format.exe into the vsix
Hans Wennborg [Mon, 2 Dec 2013 17:31:52 +0000 (17:31 +0000)]
clang-format vs plugin: bake clang-format.exe into the vsix

This makes the clang-format plugin self-contained. Instead of
requiring clang-format.exe to be available on the PATH, this
includes it in the plugin's installer (.vsix file) and runs it
from the install directory.

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

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

10 years agoRe-enabled support for the Subjects for the weak attribute. This changes the diagnost...
Aaron Ballman [Mon, 2 Dec 2013 17:07:07 +0000 (17:07 +0000)]
Re-enabled support for the Subjects for the weak attribute. This changes the diagnostic involved to be more accurate -- for C++ code, it will now report that weak applies to variables, functions or classes. Added additional test case for this.

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

10 years agoRewriter: Output RewriteRope contents efficiently
Alp Toker [Mon, 2 Dec 2013 17:02:49 +0000 (17:02 +0000)]
Rewriter: Output RewriteRope contents efficiently

This avoids allocation of temporary std::strings for file contents, instead
writing chunks directly to the output stream.

The old character-based B-tree iterator remains intact for the time being.

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

10 years agoThe __w64 attribute handler was more generically named, but only applied to __w64...
Aaron Ballman [Mon, 2 Dec 2013 16:17:55 +0000 (16:17 +0000)]
The __w64 attribute handler was more generically named, but only applied to __w64 specifically. Renamed and removed some unused code. No functional change intended.

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

10 years agoAssume ARMv6 for NetBSD for now for strex/ldrex.
Joerg Sonnenberger [Mon, 2 Dec 2013 16:12:05 +0000 (16:12 +0000)]
Assume ARMv6 for NetBSD for now for strex/ldrex.

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

10 years agoNetBSD uses long derived size_t / ssize_t in all ARM ABIs.
Joerg Sonnenberger [Mon, 2 Dec 2013 16:09:34 +0000 (16:09 +0000)]
NetBSD uses long derived size_t / ssize_t in all ARM ABIs.

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

10 years agoThe FieldDecl is already covered by the ValueDecl case, so it is being removed.
Aaron Ballman [Mon, 2 Dec 2013 15:31:50 +0000 (15:31 +0000)]
The FieldDecl is already covered by the ValueDecl case, so it is being removed.

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

10 years agoAdded an option to specify fallback style.
Alexander Kornienko [Mon, 2 Dec 2013 15:21:38 +0000 (15:21 +0000)]
Added an option to specify fallback style.

Summary:
Added -fallback-style option. Changed clang-format to stop searching
for .clang-format when an invalid file is found.

Reviewers: djasper, klimek

Reviewed By: djasper

CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2292

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

10 years agoSwitching the ibaction attribute handler to the generalized handler. No functional...
Aaron Ballman [Mon, 2 Dec 2013 15:13:14 +0000 (15:13 +0000)]
Switching the ibaction attribute handler to the generalized handler. No functional change intended.

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

10 years agoReplacing custom subject application logic with table-generated logic. Affects: guard...
Aaron Ballman [Mon, 2 Dec 2013 15:02:49 +0000 (15:02 +0000)]
Replacing custom subject application logic with table-generated logic. Affects: guarded_var, pt_guarded_var, guarded_by, pt_guarded_by, acquired_after and acquired_before. No functional change intended.

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

10 years agoUsing the proper set key when determining whether a SubsetSubject helper method has...
Aaron Ballman [Mon, 2 Dec 2013 14:58:17 +0000 (14:58 +0000)]
Using the proper set key when determining whether a SubsetSubject helper method has been previously generated.

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

10 years agoDriver: Factor gold support out into a function
Alp Toker [Mon, 2 Dec 2013 12:43:03 +0000 (12:43 +0000)]
Driver: Factor gold support out into a function

AddGoldPlugin() is the same on gnutools and freebsd so avoid the
copy-and-paste duplicate code.

No change in functionality.

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

10 years agoclang-format: Fix excessive formatting caused by r195954.
Daniel Jasper [Mon, 2 Dec 2013 09:19:27 +0000 (09:19 +0000)]
clang-format: Fix excessive formatting caused by r195954.

Due to a bug in the patch, clang-format would more or less simply format
all multi-line comments.

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

10 years agoCorrect a user-visible static analyzer message typo
Alp Toker [Mon, 2 Dec 2013 03:50:25 +0000 (03:50 +0000)]
Correct a user-visible static analyzer message typo

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

10 years agoFix inconsistent diag name
Alp Toker [Mon, 2 Dec 2013 03:50:21 +0000 (03:50 +0000)]
Fix inconsistent diag name

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

10 years agoCorrect test to target 'unknown'
Alp Toker [Mon, 2 Dec 2013 03:50:16 +0000 (03:50 +0000)]
Correct test to target 'unknown'

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

10 years agoHandle CC and NoReturn when instantiating members of class templates.
Rafael Espindola [Sun, 1 Dec 2013 16:54:29 +0000 (16:54 +0000)]
Handle CC and NoReturn when instantiating members of class templates.

Before we were considering them only when instantiating templates.

This fixes pr18033.

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

10 years agoCommentLexer: When proceeding with a typo corrected name don't clobber the token.
Benjamin Kramer [Sun, 1 Dec 2013 15:09:32 +0000 (15:09 +0000)]
CommentLexer: When proceeding with a typo corrected name don't clobber the token.

This would crash if the token is used in another diagnostic. PR18051.

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

10 years agoReenable ms inline asm test.
Benjamin Kramer [Sun, 1 Dec 2013 11:48:10 +0000 (11:48 +0000)]
Reenable ms inline asm test.

LLVM r196044 should make it pass.

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

10 years agoFix typo: s/Occurence/Occurrence/
Alp Toker [Sat, 30 Nov 2013 23:33:14 +0000 (23:33 +0000)]
Fix typo: s/Occurence/Occurrence/

This is a private class member so the fix shouldn't impact external projects.

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

10 years agoUpdate the LeakSanitizer documentation with a proper link.
Sergey Matveev [Sat, 30 Nov 2013 21:54:43 +0000 (21:54 +0000)]
Update the LeakSanitizer documentation with a proper link.

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

10 years agoadd an additional test case for generic attributes
Saleem Abdulrasool [Sat, 30 Nov 2013 21:17:12 +0000 (21:17 +0000)]
add an additional test case for generic attributes

gcc treats [[gnu:const]], [[gnu::__const]], and [[gnu:__const__]] as all being
equivalent.  Add an additional test case to ensure that we do not miss the last
case.

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

10 years agoNetBSD uses signed wchar_t on ARM platforms.
Joerg Sonnenberger [Sat, 30 Nov 2013 00:38:16 +0000 (00:38 +0000)]
NetBSD uses signed wchar_t on ARM platforms.

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

10 years agoRefactored the tls_model attribute to use a custom subset subject. No functional...
Aaron Ballman [Fri, 29 Nov 2013 16:20:30 +0000 (16:20 +0000)]
Refactored the tls_model attribute to use a custom subset subject. No functional change intended.

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

10 years agoUsing a custom subject to reenable the Subjects line for the ns_bridged attribute...
Aaron Ballman [Fri, 29 Nov 2013 16:13:12 +0000 (16:13 +0000)]
Using a custom subject to reenable the Subjects line for the ns_bridged attribute. No functional change intended.

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

10 years agoFixes a possible assert in the custom SubsetSubject logic for the attr emitter.
Aaron Ballman [Fri, 29 Nov 2013 16:12:29 +0000 (16:12 +0000)]
Fixes a possible assert in the custom SubsetSubject logic for the attr emitter.

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

10 years agoAdded LanguageStandard::LS_JavaScript to gate all JS-specific parsing.
Alexander Kornienko [Fri, 29 Nov 2013 15:19:43 +0000 (15:19 +0000)]
Added LanguageStandard::LS_JavaScript to gate all JS-specific parsing.

Summary:
Use LS_JavaScript for files ending with ".js". Added support for ">>>="
operator.

Reviewers: djasper, klimek

Reviewed By: djasper

CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2242

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