]>
granicus.if.org Git - clang/log
Rafael Espindola [Mon, 6 Jun 2016 18:23:11 +0000 (18:23 +0000)]
Add a release note about the --build-id change.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271918
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devin Coughlin [Mon, 6 Jun 2016 18:08:35 +0000 (18:08 +0000)]
Reapply "[analyzer] Add checker for correct usage of MPI API in C and C++."
Reapply r271907 with a fix for the compiler error with gcc about specializing
clang::ento::ProgramStateTrait in a different namespace.
Differential Revision: http://reviews.llvm.org/D12761
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271914
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Spertus [Mon, 6 Jun 2016 17:23:37 +0000 (17:23 +0000)]
Fix typo in last submission to visualize proper template argument
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271911
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Spertus [Mon, 6 Jun 2016 17:08:32 +0000 (17:08 +0000)]
Better Visual Studio visualization of TemplateArgument and TemplateArgumentList
For pack TemplateArguments, visualize all of the items in the pack
Visualize a TemplateArgumentList as a template argument list. E.g., <int, double>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271910
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devin Coughlin [Mon, 6 Jun 2016 17:01:08 +0000 (17:01 +0000)]
Revert "[analyzer] Add checker for correct usage of MPI API in C and C++."
This reverts commit r271907. It broke a bunch of bots with compile errors
about specializations in different namespaces.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271909
91177308 -0d34-0410-b5e6-
96231b3b80d8
Devin Coughlin [Mon, 6 Jun 2016 16:47:16 +0000 (16:47 +0000)]
[analyzer] Add checker for correct usage of MPI API in C and C++.
This commit adds a static analysis checker to check for the correct usage of the
MPI API in C and C++.
3 path-sensitive checks are included:
- Double nonblocking: Double request usage by nonblocking calls
without intermediate wait.
- Missing wait: Nonblocking call without matching wait.
- Unmatched wait: Waiting for a request that was never used by a
nonblocking call.
Examples of how to use the checker can be found
at https://github.com/0ax1/MPI-Checker
Reviewers: zaks.anna
A patch by Alexander Droste!
Differential Revision: http://reviews.llvm.org/D12761
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271907
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Mon, 6 Jun 2016 15:44:40 +0000 (15:44 +0000)]
[docs] Clarify limitations section of SourceBasedCodeCoverage.rst
Mention that the code coverage tool becomes less precise whenever
unpredictable changes in control flow occur.
Thanks to Sean Silva for pointing this out!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271902
91177308 -0d34-0410-b5e6-
96231b3b80d8
Joerg Sonnenberger [Mon, 6 Jun 2016 13:13:12 +0000 (13:13 +0000)]
Give FileCheck a hint on which ld to match. Under Windows, the preferred
match was the ld.elf_so that should be matched in a second step. Add one
of the ever-present-but-irrelevant-for-this-test arguments to the
pattern to force matching the right argument.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271893
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Sanders [Mon, 6 Jun 2016 12:02:21 +0000 (12:02 +0000)]
[mips] The default ABI depends on the CPU not the Arch on MTI and IMG vendor triples.
Summary:
32-bit CPU's default to O32. 64-bit CPU's default to N64. The default CPU
(mips32r2/mips64r2) still depends on the arch so there's no functional
change when the CPU isn't specified but commands like:
clang -target mips-mti-linux-gnu -mips64r2
will now default to a 64-bit ABI like our gcc toolchains do* instead of
asserting in the backend**.
Other vendors (including Triple::UnknownVendor) still derive the default
ABI from the arch.
* Although not the same one as our gcc toolchains, clang has historically
defaulted to N64 where gcc defaults to N32.
** Mixing O32 and a 64-bit CPU causing assertions is a long-standing bug.
Reviewers: atanasyan
Subscribers: sdardis, cfe-commits
Differential Revision: http://reviews.llvm.org/D21016
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271884
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Liu [Mon, 6 Jun 2016 11:00:13 +0000 (11:00 +0000)]
[clang-format] make header guard identification stricter (with Lexer).
Summary: make header guard identification stricter with Lexer.
Reviewers: djasper
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D20959
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271883
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Sanders [Mon, 6 Jun 2016 09:47:32 +0000 (09:47 +0000)]
[mips] The P5600 does not support N32/N64 since it's a 32-bit CPU.
Summary:
Reviewers: atanasyan
Subscribers: cfe-commits, sdardis
Differential Revision: http://reviews.llvm.org/D20963
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271877
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Sanders [Mon, 6 Jun 2016 09:07:08 +0000 (09:07 +0000)]
[mips] Replace almost all Arch checks in MipsTargetInfo with ABI checks. NFC.
Summary:
setABI() is still tied to the Arch component of the Triple to preserve existing
behaviour.
Reviewers: atanasyan
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D20961
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271875
91177308 -0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Mon, 6 Jun 2016 06:13:01 +0000 (06:13 +0000)]
[AVX512] Convert masked palignr builtins directly to native IR similar to the other palignr builtins, but with a select to handle masking.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271873
91177308 -0d34-0410-b5e6-
96231b3b80d8
Mike Spertus [Mon, 6 Jun 2016 03:37:18 +0000 (03:37 +0000)]
Slightly improve Visual Studio visualization of clang::Expr
Now it gives the StmtClass of the Expr as well as the type. It's still
a long way from full visualization of expressions, but I have found
that having the class really helps when debugging, so definitely
worth submitting.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271866
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Sun, 5 Jun 2016 15:57:49 +0000 (15:57 +0000)]
Fixing problem with rsqrt28_sd
maskz_rsqrt28_sd mapped to mask_rsqrt28_sd and not to the maskz.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271836
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Sun, 5 Jun 2016 15:43:30 +0000 (15:43 +0000)]
[Clang][AVX512]Adding set4 intrinsics
Differential Revision: http://reviews.llvm.org/D20866
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271835
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Sun, 5 Jun 2016 15:12:52 +0000 (15:12 +0000)]
[Clang][AVX512][Intrinsics] Adding two definitions _mm512_setzero and _mm512_setzero_epi32
Differential Revision: http://reviews.llvm.org/D20871
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271832
91177308 -0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Sun, 5 Jun 2016 00:12:59 +0000 (00:12 +0000)]
check-clang: LTO, aka libLTO.so, was redundant here, since llvm-lto depends on it.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271818
91177308 -0d34-0410-b5e6-
96231b3b80d8
Joerg Sonnenberger [Sat, 4 Jun 2016 20:03:26 +0000 (20:03 +0000)]
Add PIE magic for NetBSD. Add tests for the correct flags for
non-shared, PIE and shared output mode.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271801
91177308 -0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Sat, 4 Jun 2016 16:37:38 +0000 (16:37 +0000)]
[AVX512] Remove 512-bit andnot tests from the avx512vl test file.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271795
91177308 -0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Sat, 4 Jun 2016 05:43:41 +0000 (05:43 +0000)]
[X86] Use unsigned types for vector arithmetic in intrinsics to avoid undefined behavior for signed integer overflow.
This is really only needed for addition, subtraction, and multiplication, but I did the bitwise ops too for overall consistency. Clang currently doesn't set NSW for signed vector operations so the undefined behavior shouldn't happen today.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271778
91177308 -0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Sat, 4 Jun 2016 05:43:37 +0000 (05:43 +0000)]
[AVX512] Remove space in -1 constants. NFC
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271777
91177308 -0d34-0410-b5e6-
96231b3b80d8
Saleem Abdulrasool [Sat, 4 Jun 2016 03:16:21 +0000 (03:16 +0000)]
Sema: do not attempt to sizeof a dependent type
We would attempt to evaluate the sizeof a dependent type to check for an
integral overflow. However, because the dependent type is not yet resolved, we
cannot determine if the expression would overflow. Report a failure to perform
a symbolic evaluation of a constant involving the dependent type.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271762
91177308 -0d34-0410-b5e6-
96231b3b80d8
Taewook Oh [Sat, 4 Jun 2016 03:14:43 +0000 (03:14 +0000)]
Revert commit r271708
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271761
91177308 -0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Sat, 4 Jun 2016 01:13:22 +0000 (01:13 +0000)]
[Modules] Improve diagnostics for LockFileManager errors
Uses error message now provided by LockFileManager in LLVM r271755.
rdar://problem/
26529101
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271758
91177308 -0d34-0410-b5e6-
96231b3b80d8
Richard Smith [Sat, 4 Jun 2016 00:22:31 +0000 (00:22 +0000)]
PR27989: only enqueue binary operators into the data recursive int expression
evaluator if they are actually int expressions.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271754
91177308 -0d34-0410-b5e6-
96231b3b80d8
Saleem Abdulrasool [Fri, 3 Jun 2016 23:26:30 +0000 (23:26 +0000)]
CodeGen: correct assertion
The assertion added earlier was overly strict. We need to strip the pointer
casts (as when constructing the GV). Correct the types (Function or Variable).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271750
91177308 -0d34-0410-b5e6-
96231b3b80d8
Manman Ren [Fri, 3 Jun 2016 23:11:41 +0000 (23:11 +0000)]
Bump libclang API minor version after r271351.
Also use the next enum value for CXObjCPropertyAttr_class.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271747
91177308 -0d34-0410-b5e6-
96231b3b80d8
Taewook Oh [Fri, 3 Jun 2016 18:52:51 +0000 (18:52 +0000)]
Use the name of the file on disk to issue a new diagnostic about non-portable #include and #import paths.
Differential Revision: http://reviews.llvm.org/D19843
Corresponding LLVM change: http://reviews.llvm.org/D19842
Patch by Eric Niebler
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271708
91177308 -0d34-0410-b5e6-
96231b3b80d8
Taewook Oh [Fri, 3 Jun 2016 18:30:12 +0000 (18:30 +0000)]
[Title] Revert test commit
Summary: Revert test commit
Trac Bug: #
Blame Rev:
Reviewed By:
Test Plan:
Revert Plan:
Database Impact:
Memcache Impact:
Other Notes:
EImportant:
- begin *PUBLIC* platform impact section -
Bugzilla: #
- end platform impact -
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271702
91177308 -0d34-0410-b5e6-
96231b3b80d8
Taewook Oh [Fri, 3 Jun 2016 18:27:39 +0000 (18:27 +0000)]
Test commit
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271701
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Fri, 3 Jun 2016 17:26:16 +0000 (17:26 +0000)]
Don't pass --build-id to ld by default.
We now have a cmake option to change the default: ENABLE_LINKER_BUILD_ID.
The reason is that build-id is fairly expensive, so we shouldn't impose
it in the regular edit/build cycle.
This is similar to gcc, that has an off by default --enable-linker-build-id
option.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271692
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ismail Donmez [Fri, 3 Jun 2016 17:06:52 +0000 (17:06 +0000)]
Fix test for LLVM_LIBDIR_SUFFIX=64 case.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271689
91177308 -0d34-0410-b5e6-
96231b3b80d8
Hans Wennborg [Fri, 3 Jun 2016 16:59:13 +0000 (16:59 +0000)]
Obj-C: Fix assert-on-invalid (PR27822)
Clang would assert when isObjCInstancetype() was called on a
tok::annot_cxxscope token.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271688
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sjoerd Meijer [Fri, 3 Jun 2016 14:08:20 +0000 (14:08 +0000)]
RAS extensions are part of ARMv8.2.
This patch enables +ras +noras to AArch64 in clang.
Patch by: Roger Ferrer Ibanez and Oliver Stannard
Differential Revision: http://reviews.llvm.org/D20283
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271672
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Liu [Fri, 3 Jun 2016 12:52:59 +0000 (12:52 +0000)]
[clang-format] skip empty lines and comments in the top of the code when inserting new headers.
Summary:
[clang-format] skip empty lines and comments in the top of the code when inserting new headers.
Pair-programmed with @hokein
Reviewers: djasper
Subscribers: ioeric, cfe-commits, hokein, klimek
Differential Revision: http://reviews.llvm.org/D20898
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271664
91177308 -0d34-0410-b5e6-
96231b3b80d8
Daniel Sanders [Fri, 3 Jun 2016 10:11:01 +0000 (10:11 +0000)]
[mips] Slightly simplify MipsTargetInfo::setDataLayout(). NFC.
Summary:
Reviewers: atanasyan
Subscribers: atanasyan, cfe-commits
Differential Revision: http://reviews.llvm.org/D20680
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271647
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sjoerd Meijer [Fri, 3 Jun 2016 08:47:56 +0000 (08:47 +0000)]
Add a few missing Clang regression tests for Cortex-A53, Cortex-A57, Cortex-A72
Differential Revision: http://reviews.llvm.org/D20908
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271636
91177308 -0d34-0410-b5e6-
96231b3b80d8
Rafael Espindola [Thu, 2 Jun 2016 23:45:37 +0000 (23:45 +0000)]
Delete configure left over.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271609
91177308 -0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Thu, 2 Jun 2016 20:24:07 +0000 (20:24 +0000)]
clangFrontend: Make intrinsics_gen optional for standalone build.
FIXME: intrinsics_gen may be exported from llvm.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271579
91177308 -0d34-0410-b5e6-
96231b3b80d8
Pavel Labath [Thu, 2 Jun 2016 18:49:42 +0000 (18:49 +0000)]
[cmake] Fix-up r271533
I was appending to the wrong variable (over-zealous copy-paste from llvm on my part).
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271565
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Thu, 2 Jun 2016 17:19:45 +0000 (17:19 +0000)]
[docs] Add a limitations section to SourceBasedCodeCoverage.rst
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271544
91177308 -0d34-0410-b5e6-
96231b3b80d8
Pavel Labath [Thu, 2 Jun 2016 16:35:24 +0000 (16:35 +0000)]
[cmake] Fix builds with LLVM_ENABLE_PIC=0
Summary:
When this flag is specified, the target llvm-lto is not built, but is still
used as a dependency of the test targets. cmake 2.8 silently ignored this
situation, but with cmake_minimum_required(3.4) it becomes an error. Fix this
by avoiding the inclusion the target as a dependency.
Reviewers: beanz
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D20883
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271533
91177308 -0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Thu, 2 Jun 2016 10:54:45 +0000 (10:54 +0000)]
Suppress clang/test/CodeGen/lifetime-asan.c for targeting mingw.
clang.EXE: error: unsupported option '-fsanitize=address' for target 'x86_64-w64-windows-gnu'
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271509
91177308 -0d34-0410-b5e6-
96231b3b80d8
Sjoerd Meijer [Thu, 2 Jun 2016 10:48:37 +0000 (10:48 +0000)]
This adds target support and tests for Cortex-A73
Differential Revision: http://reviews.llvm.org/D20864
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271507
91177308 -0d34-0410-b5e6-
96231b3b80d8
Asaf Badouh [Thu, 2 Jun 2016 08:11:35 +0000 (08:11 +0000)]
[X86][AVX512] add intrinsics of Scalar FP to integer
Differential Revision: http://reviews.llvm.org/D20861
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271499
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Thu, 2 Jun 2016 07:44:08 +0000 (07:44 +0000)]
[Clang][AVX512][INTRINSICS] adding round cvt and fix regular cvtps_ph
Differential Revision: http://reviews.llvm.org/D20870
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271498
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Thu, 2 Jun 2016 02:45:59 +0000 (02:45 +0000)]
[docs] Fix misplaced comma
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271472
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Thu, 2 Jun 2016 02:25:13 +0000 (02:25 +0000)]
[docs] Minor formatting changes and typo fixes
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271471
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Thu, 2 Jun 2016 01:15:59 +0000 (01:15 +0000)]
[docs] Use cpp code-blocks where appropriate
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271461
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Thu, 2 Jun 2016 01:01:48 +0000 (01:01 +0000)]
[docs] Add missing newline to console section
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271457
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Thu, 2 Jun 2016 00:51:50 +0000 (00:51 +0000)]
[docs] Document the source-based code coverage feature
Differential Revision: http://reviews.llvm.org/D20715
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271454
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vitaly Buka [Thu, 2 Jun 2016 00:24:20 +0000 (00:24 +0000)]
[asan] Added -fsanitize-address-use-after-scope flag
Summary:
Also emit lifetime markers for -fsanitize-address-use-after-scope.
Asan uses life-time markers for use-after-scope check.
PR27453
Reviewers: kcc, eugenis, aizatsky
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D20759
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271451
91177308 -0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Thu, 2 Jun 2016 00:19:14 +0000 (00:19 +0000)]
clang/test/Driver/android-ndk-standalone.cpp: Tweak for dos r'\\'.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271450
91177308 -0d34-0410-b5e6-
96231b3b80d8
Manman Ren [Thu, 2 Jun 2016 00:11:03 +0000 (00:11 +0000)]
FixIt: use getLocForEndOfToken to insert fix-it after a type name.
Instead of setting DeclSpec's range end to point to the next token
after the DeclSpec, we use getLocForEndOfToken to insert fix-it after a type
name.
Before this fix, fix-it will change
^(NSView view) to ^(*NSView view)
This commit correctly updates the source to ^(NSView* view).
rdar://
21042144
Differential Revision: http://reviews.llvm.org/D20844
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271448
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vitaly Buka [Thu, 2 Jun 2016 00:00:38 +0000 (00:00 +0000)]
Summary: Remove unused option
Reviewers: kcc, eugenis, aizatsky
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D20740
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271443
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chih-Hung Hsieh [Wed, 1 Jun 2016 22:53:59 +0000 (22:53 +0000)]
[driver][arm] change regular expression to work on Windows
Differential Revision: http://reviews.llvm.org/D20600
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271438
91177308 -0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Wed, 1 Jun 2016 21:46:51 +0000 (21:46 +0000)]
[X86][SSE] Replace (V)CVTTPS2DQ and VCVTTPD2DQ truncating (round to zero) f32/f64 to i32 with generic IR (clang)
The 'cvtt' truncation (round to zero) conversions can be safely represented as generic __builtin_convertvector (fptosi) calls instead of x86 intrinsics. We already do this (implicitly) for the scalar equivalents.
Note: I looked at updating _mm_cvttpd_epi32 as well but this still requires a lot more backend work to correctly lower (both for debug and optimized builds).
Differential Revision: http://reviews.llvm.org/D20859
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271436
91177308 -0d34-0410-b5e6-
96231b3b80d8
Etienne Bergeron [Wed, 1 Jun 2016 21:17:32 +0000 (21:17 +0000)]
[Sema] Fix incorrect enum token namespace
Summary:
This patch fix the scoping of enum literal. They were not resolving
to the right type.
It was not causing any problem as one is a copy of the other one.
The literal in the switch are resolving to Sema.h:5527
```
enum AccessResult {
AR_accessible,
AR_inaccessible,
AR_dependent,
AR_delayed
};
```
Instead of SemaAccess.cpp:27
```
/// A copy of Sema's enum without AR_delayed.
enum AccessResult {
AR_accessible,
AR_inaccessible,
AR_dependent
};
```
This issue was found by a new clang-tidy check (still on-going).
Reviewers: rsmith, aaron.ballman
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D20773
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271431
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chih-Hung Hsieh [Wed, 1 Jun 2016 20:48:46 +0000 (20:48 +0000)]
[driver][arm] add armv7 and thumb include and lib paths
Add a new test android-ndk-standalone.cpp
with new Android NDK release tree structure.
Detect armv7 sub architecture and thumb mode,
to add system include and link search paths.
Differential Revision: http://reviews.llvm.org/D20600
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271427
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Wed, 1 Jun 2016 18:04:53 +0000 (18:04 +0000)]
Disable warning about core features by default
Reviewers: Anastasia, yaxunl
Differential Revision: http://reviews.llvm.org/D20744
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271414
91177308 -0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Wed, 1 Jun 2016 18:04:50 +0000 (18:04 +0000)]
Fixup list of available extensions
Reviewers: Anastasia
Differential Revision: http://reviews.llvm.org/D20447
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271413
91177308 -0d34-0410-b5e6-
96231b3b80d8
Manman Ren [Wed, 1 Jun 2016 17:14:19 +0000 (17:14 +0000)]
ObjC lifetime: pull sugar off when the qualifiers conflict.
It's possible to have multiple local ObjCLifetime qualifiers. When there is
a conflict, we can't stop after we reach a type that is directly qualified.
We need to keep pulling sugar off and removing the ObjCLifetime qualifers.
rdar://
25804796
Differential Revision: http://reviews.llvm.org/D20843
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271409
91177308 -0d34-0410-b5e6-
96231b3b80d8
Martin Probst [Wed, 1 Jun 2016 15:22:47 +0000 (15:22 +0000)]
clang-format: [JS] no ASI on `import {x as\n y}`.
Summary: ASI did not handle the ES6 `as` operator correctly.
Reviewers: djasper
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D20817
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271401
91177308 -0d34-0410-b5e6-
96231b3b80d8
Martin Probst [Wed, 1 Jun 2016 15:19:53 +0000 (15:19 +0000)]
clang-format: [JS] Sort imported symbols.
Summary: E.g. sort `import {b, a} from 'x';` into `import {a, b} from 'x';`.
Reviewers: djasper
Subscribers: cfe-commits, klimek
Differential Revision: http://reviews.llvm.org/D20798
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271400
91177308 -0d34-0410-b5e6-
96231b3b80d8
Aaron Ballman [Wed, 1 Jun 2016 15:17:54 +0000 (15:17 +0000)]
It seems we need to add SemaExpr.cpp to the /bigobj list; I am getting consistent failures of hitting the section count limit.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271399
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Wed, 1 Jun 2016 14:41:41 +0000 (14:41 +0000)]
[Clang][Intrinsics][avx512] Continue Adding round cvt to clang
And remove trailing spaces in intrinsic f test
Differential Revision: http://reviews.llvm.org/D20810
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271398
91177308 -0d34-0410-b5e6-
96231b3b80d8
Yaron Keren [Wed, 1 Jun 2016 13:47:26 +0000 (13:47 +0000)]
Fix the CLANG_ENABLE_STATIC_ANALYZER=OFF build.
tools/clang/tools/CMakeLists.txt does not create the
clang-check target when CLANG_ENABLE_STATIC_ANALYZER=OFF.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271392
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Wed, 1 Jun 2016 12:21:00 +0000 (12:21 +0000)]
Adding front-end support to several intrinsics (bit scanning, conversion and state reading intrinsics)
Adding LLVM front-end support to two intrinsics dealing with bit scan: _bit_scan_forward and _bit_scan_reverse.
Their functionality is as described in Intel intrinsics guide:
https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_bit_scan_forward&expand=371,370
https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=_bit_scan_reverse&expand=371,370
Furthermore, adding clang front-end support to these conversion intrinsics: _mm256_cvtsd_f64, _mm256_cvtsi256_si32 and _mm256_cvtss_f32.
Finally, adding tests to all of the above, as well as to the state reading intrinsics _rdpmc and _rdtsc.
Their functionality is also specified in the Intel intrinsics guide.
Commit on behalf of Omer Paparo Bivas
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271387
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Wed, 1 Jun 2016 08:34:03 +0000 (08:34 +0000)]
[Clang][Intrinsics][avx512] Adding round intrinsics fot max/min/sqrt instruction set to clang
Differential Revision: http://reviews.llvm.org/D20812
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271373
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Wed, 1 Jun 2016 07:35:44 +0000 (07:35 +0000)]
[Clang][Intrinsics][avx512] Adding round roundscale to clang
Differential Revision: http://reviews.llvm.org/D20815
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271368
91177308 -0d34-0410-b5e6-
96231b3b80d8
Saleem Abdulrasool [Wed, 1 Jun 2016 04:22:24 +0000 (04:22 +0000)]
CodeGen: tweak CFString emission for COFF targets
The `isa' member was previously not given the correct DLL Storage. Ensure that
we give the `isa' constant `__CFConstantStringClassReference' the correct DLL
storage. Default to dllimport unless an explicit specification gives it a
dllexport storage.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271361
91177308 -0d34-0410-b5e6-
96231b3b80d8
Manman Ren [Tue, 31 May 2016 23:22:04 +0000 (23:22 +0000)]
Indexer: add CXObjCPropertyAttr_class for class properties.
rdar://
25963227
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271351
91177308 -0d34-0410-b5e6-
96231b3b80d8
Konstantin Zhuravlyov [Tue, 31 May 2016 22:47:11 +0000 (22:47 +0000)]
[AMDGPU] Set default dwarf version to 2
Differential Revision: http://reviews.llvm.org/D20640
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271347
91177308 -0d34-0410-b5e6-
96231b3b80d8
Justin Lebar [Tue, 31 May 2016 21:27:13 +0000 (21:27 +0000)]
[CUDA] Conservatively mark inline asm as convergent.
Summary:
This is particularly important because a some convergent CUDA intrinsics
(e.g. __shfl_down) are implemented in terms of inline asm.
Reviewers: tra
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D20836
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271336
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Tue, 31 May 2016 20:35:12 +0000 (20:35 +0000)]
[Coverage] Remove redundant handleFileExit() call (NFC)
I added this call in r271308. It's redundant because it's dominated by a
call to extendRegion().
Thanks to Justin Bogner for pointing this out!
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271331
91177308 -0d34-0410-b5e6-
96231b3b80d8
Chris Bieneman [Tue, 31 May 2016 20:21:38 +0000 (20:21 +0000)]
[CMake] Update to requiring CMake 3.4.3
Summary:
This is as per the discussions on developer lists:
http://lists.llvm.org/pipermail/llvm-dev/2016-April/098780.html
http://lists.llvm.org/pipermail/llvm-dev/2016-May/100058.html
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D20823
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271326
91177308 -0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Tue, 31 May 2016 18:46:31 +0000 (18:46 +0000)]
[Parser] Fix look ahead after EOF while parsing objc message and lambdas
If a closing ')' isn't found for a macro instantiation inside a '[',
the next token is EOF, this leads to crashes if we try to look ahead of
that. This could be triggered whenever trying to parse lambdas or objs
message expressions.
Differential Revision: http://reviews.llvm.org/D20451
rdar://problem/
25662647
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271314
91177308 -0d34-0410-b5e6-
96231b3b80d8
Manman Ren [Tue, 31 May 2016 18:19:32 +0000 (18:19 +0000)]
PCH + module: make sure we write out macros associated with builtin identifiers.
When we import a module that defines a builtin identifier from prefix header and
precompile the prefix header, the macro information related to the identifier
is lost.
If we don't precompile the prefix header, the source file can still see the
macro information. The reason is that we write out the identifier in the pch
but not the macro information since the macro is not defined locally.
This is related to r251565. In that commit, if we read a builtin identifier from
a module that wasn't "interesting" to that module, we will still write it out to
a PCH that imports that module.
The fix is to write exported module macros for PCH as well.
rdar://
24666630
Differential Revision: http://reviews.llvm.org/D20383
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271310
91177308 -0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Tue, 31 May 2016 18:06:19 +0000 (18:06 +0000)]
[Coverage] Fix crash on a switch partially covered by a macro (PR27948)
We have to handle file exits before and after visiting regions in the
switch body. Fixes PR27948.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271308
91177308 -0d34-0410-b5e6-
96231b3b80d8
Reid Kleckner [Tue, 31 May 2016 17:42:56 +0000 (17:42 +0000)]
Work around MinGW's macro definition of 'interface' to 'struct'
Previous attempts to rename the IBOutletCollection argument to something
other than "Interface" were undone (r127127 and r139620). Instead of
renaming it, work around this in tablegen, so the public facing getter
can have the usual name of 'getInterface'.
Fixes PR26682
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271305
91177308 -0d34-0410-b5e6-
96231b3b80d8
Matt Arsenault [Tue, 31 May 2016 16:58:18 +0000 (16:58 +0000)]
AMDGPU: Update datalayout string
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271297
91177308 -0d34-0410-b5e6-
96231b3b80d8
Piotr Padlewski [Tue, 31 May 2016 15:56:26 +0000 (15:56 +0000)]
Fixed bug
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271293
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ehsan Akhgari [Tue, 31 May 2016 15:55:51 +0000 (15:55 +0000)]
clang-c: Add the clang_getCursorVisibility() API
This patch adds an API for querying the visibility of the entity
referred to by a cursor.
Patch by Michael Wu <mwu@mozilla.com>.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271292
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ehsan Akhgari [Tue, 31 May 2016 15:39:10 +0000 (15:39 +0000)]
Revert r253909 because it was committed with an incorrect message
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271291
91177308 -0d34-0410-b5e6-
96231b3b80d8
Piotr Padlewski [Tue, 31 May 2016 15:25:05 +0000 (15:25 +0000)]
[ASTMatchers] Breaking change of `has` matcher
has matcher can now match to implicit and paren casts
http://reviews.llvm.org/D20801
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271288
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Tue, 31 May 2016 14:14:42 +0000 (14:14 +0000)]
Avoid unused variable warning in release builds.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271280
91177308 -0d34-0410-b5e6-
96231b3b80d8
Eric Liu [Tue, 31 May 2016 13:34:20 +0000 (13:34 +0000)]
[clang-format] insert new #includes into correct blocks when cleaning up Replacement with cleanupAroundReplacements().
Summary:
When a replacement's offset is set to UINT_MAX or -1U, it is treated as
a header insertion replacement by cleanupAroundReplacements(). The new #include
directive is then inserted into the correct block.
Reviewers: klimek, djasper
Subscribers: klimek, cfe-commits, bkramer
Differential Revision: http://reviews.llvm.org/D20734
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271276
91177308 -0d34-0410-b5e6-
96231b3b80d8
Ranjeet Singh [Tue, 31 May 2016 13:31:25 +0000 (13:31 +0000)]
[ARM] Add load/store co-processor intrinsics.
Differential Revision: http://reviews.llvm.org/D20563
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271275
91177308 -0d34-0410-b5e6-
96231b3b80d8
Michael Zuckerman [Tue, 31 May 2016 11:27:34 +0000 (11:27 +0000)]
[Clang][Intrinsics][avx512] Adding round cvt to clang
Differential Revision: http://reviews.llvm.org/D20790
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271265
91177308 -0d34-0410-b5e6-
96231b3b80d8
Alexey Bataev [Tue, 31 May 2016 11:17:08 +0000 (11:17 +0000)]
[OPENMP] Update in ReleaseNotes for OpenMP support.
Added notes about full support of all non-offloading features of OpenMP
4.5 + info about option -fopenmp-version=[31|40|45] that allows to
control supported OpenMP version.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271263
91177308 -0d34-0410-b5e6-
96231b3b80d8
Benjamin Kramer [Tue, 31 May 2016 10:17:46 +0000 (10:17 +0000)]
[CommonOptionsParser] Return source paths as const ref.
This saves a superfluous copy and makes managing the lifetime of the
returned strings a bit easier.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271262
91177308 -0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Tue, 31 May 2016 06:58:07 +0000 (06:58 +0000)]
[AVX512] Convert masked load builtins to generic masked load intrinsics instead of the x86 specific ones.
This will allow the x86 intrinsics to be removed from the backend.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271253
91177308 -0d34-0410-b5e6-
96231b3b80d8
Alexey Bataev [Tue, 31 May 2016 06:21:27 +0000 (06:21 +0000)]
[MSVC] Fix stack overflow in unqualified type lookup logic, by Will
Wilson.
An unqualified lookup for in base classes may cause stack overflow if
the base class is a specialization of current class.
Patch by Will Wilson.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271251
91177308 -0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Tue, 31 May 2016 05:49:13 +0000 (05:49 +0000)]
[X86] Use unaligned load intrinsics to implement other intrinsics instead of manually creating the unaligned load.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271250
91177308 -0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Tue, 31 May 2016 01:50:10 +0000 (01:50 +0000)]
[AVX512] Emit generic masked store instrinsics instead of using x86 specific intrinsics.
This will allow us to remove the x86 instrinics from the backend.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271246
91177308 -0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Mon, 30 May 2016 19:20:55 +0000 (19:20 +0000)]
[X86] Ensure load/store tests unaligned pointers really are align 1
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271227
91177308 -0d34-0410-b5e6-
96231b3b80d8
Saleem Abdulrasool [Mon, 30 May 2016 18:26:06 +0000 (18:26 +0000)]
CodeGen: address post-commit review comments
David Majnemer pointed out that isOSBinFormatMachO is more compact. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271221
91177308 -0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Mon, 30 May 2016 17:58:38 +0000 (17:58 +0000)]
[X86][SSE] Added missing tests (merge failure)
Differential Revision: http://reviews.llvm.org/D20617
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271219
91177308 -0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Mon, 30 May 2016 17:55:25 +0000 (17:55 +0000)]
[X86][SSE] _mm_store1_ps/_mm_store1_pd should require an aligned pointer
According to the gcc headers, intel intrinsics docs and msdn codegen the _mm_store1_pd (and its _mm_store_pd1 equivalent) should use an aligned pointer - the clang headers are the only implementation I can find that assume non-aligned stores (by storing with _mm_storeu_pd).
Additionally, according to the intel intrinsics docs and msdn codegen the _mm_store1_ps (_mm_store_ps1) requires a similarly aligned pointer.
This patch raises the alignment requirements to match the other implementations by calling _mm_store_ps/_mm_store_pd instead.
I've also added the missing _mm_store_pd1 intrinsic (which maps to _mm_store1_pd like _mm_store_ps1 does to _mm_store1_ps).
As a followup I'll update the llvm fast-isel tests to match this codegen.
Differential Revision: http://reviews.llvm.org/D20617
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@271218
91177308 -0d34-0410-b5e6-
96231b3b80d8