r287114 - Remove duplicate condition (PR30648). NFCI.

2016-11-16 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed Nov 16 10:11:08 2016 New Revision: 287114 URL: http://llvm.org/viewvc/llvm-project?rev=287114=rev Log: Remove duplicate condition (PR30648). NFCI. We only need to check that the bitstream entry is a Record. Modified: cfe/trunk/lib/Serialization/ASTReader.cpp

[PATCH] D26686: [X86][AVX512] Replace lossless i32/u32 to f64 conversion intrinsics with generic IR

2016-11-16 Thread Simon Pilgrim via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL287088: [X86][AVX512] Replace lossless i32/u32 to f64 conversion intrinsics with… (authored by RKSimon). Changed prior to commit: https://reviews.llvm.org/D26686?vs=78038=78146#toc Repository: rL

r287088 - [X86][AVX512] Replace lossless i32/u32 to f64 conversion intrinsics with generic IR

2016-11-16 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed Nov 16 03:27:40 2016 New Revision: 287088 URL: http://llvm.org/viewvc/llvm-project?rev=287088=rev Log: [X86][AVX512] Replace lossless i32/u32 to f64 conversion intrinsics with generic IR Both the (V)CVTDQ2PD (i32 to f64) and (V)CVTUDQ2PD (u32 to f64) conversion

[PATCH] D26686: [X86][AVX512] Replace lossless i32/u64 to f64 conversion intrinsics with generic IR

2016-11-15 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: craig.topper, igorb, delena. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. Both the (V)CVTDQ2PD (i32 to f64) and (V)CVTDQ2PD (u32 to f64) conversion instructions are lossless and can be

r286996 - Fixed spelling in comments. NFCI.

2016-11-15 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Tue Nov 15 12:28:07 2016 New Revision: 286996 URL: http://llvm.org/viewvc/llvm-project?rev=286996=rev Log: Fixed spelling in comments. NFCI. Modified: cfe/trunk/include/clang/AST/DeclObjC.h cfe/trunk/include/clang/Basic/TargetInfo.h

[PATCH] D20359: [LLVM][AVX512][Intrinsics] Convert AVX non-temporal store builtins to LLVM-native IR.

2016-11-15 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. Close this? It appears to have been committed, including the auto upgrade tests requested by Craig. https://reviews.llvm.org/D20359 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

r286595 - [X86] Merge (near) duplicate scalar non-temporal store code. NFCI.

2016-11-11 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri Nov 11 08:38:34 2016 New Revision: 286595 URL: http://llvm.org/viewvc/llvm-project?rev=286595=rev Log: [X86] Merge (near) duplicate scalar non-temporal store code. NFCI. Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp

[clang-tools-extra] r286449 - Fix -Wdocumentation warning

2016-11-10 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu Nov 10 07:54:39 2016 New Revision: 286449 URL: http://llvm.org/viewvc/llvm-project?rev=286449=rev Log: Fix -Wdocumentation warning Modified: clang-tools-extra/trunk/clang-move/ClangMove.h Modified: clang-tools-extra/trunk/clang-move/ClangMove.h URL:

r285390 - Fix MSVC "not all control paths return a value" warning

2016-10-28 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri Oct 28 05:09:35 2016 New Revision: 285390 URL: http://llvm.org/viewvc/llvm-project?rev=285390=rev Log: Fix MSVC "not all control paths return a value" warning Add unreachable after enum switch statement Modified: cfe/trunk/lib/Driver/Action.cpp Modified:

Re: r285281 - Fix MSVC warning about missing 'this' from lambda default capture mode

2016-10-27 Thread Simon Pilgrim via cfe-commits
leLexer() method? You’re not kidding, its incredibly annoying. I can add a comment explaining why its there if you wish? Simon >> On 27 Oct 2016, at 12:51, Simon Pilgrim via cfe-commits >> <cfe-commits@lists.llvm.org> wrote: >> >> Author: rksimon >> Date: Thu

r285281 - Fix MSVC warning about missing 'this' from lambda default capture mode

2016-10-27 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu Oct 27 05:51:29 2016 New Revision: 285281 URL: http://llvm.org/viewvc/llvm-project?rev=285281=rev Log: Fix MSVC warning about missing 'this' from lambda default capture mode Modified: cfe/trunk/lib/Lex/PPLexerChange.cpp Modified: cfe/trunk/lib/Lex/PPLexerChange.cpp

r285067 - Fix MSVC unused variable warning.

2016-10-25 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Tue Oct 25 07:59:15 2016 New Revision: 285067 URL: http://llvm.org/viewvc/llvm-project?rev=285067=rev Log: Fix MSVC unused variable warning. LLVM_ATTRIBUTE_UNUSED doesn't work for non-gcc style compilers. Modified:

[clang-tools-extra] r284476 - Fix signed/unsigned comparison warnings

2016-10-18 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Tue Oct 18 08:15:31 2016 New Revision: 284476 URL: http://llvm.org/viewvc/llvm-project?rev=284476=rev Log: Fix signed/unsigned comparison warnings Modified: clang-tools-extra/trunk/unittests/clang-tidy/NamespaceAliaserTest.cpp

r283549 - Wdocumentation fix

2016-10-07 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri Oct 7 08:25:41 2016 New Revision: 283549 URL: http://llvm.org/viewvc/llvm-project?rev=283549=rev Log: Wdocumentation fix Modified: cfe/trunk/include/clang/Sema/Sema.h Modified: cfe/trunk/include/clang/Sema/Sema.h URL:

r283106 - Wdocumentation fix

2016-10-03 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon Oct 3 07:37:08 2016 New Revision: 283106 URL: http://llvm.org/viewvc/llvm-project?rev=283106=rev Log: Wdocumentation fix Modified: cfe/trunk/lib/Analysis/CloneDetection.cpp Modified: cfe/trunk/lib/Analysis/CloneDetection.cpp URL:

r282858 - Strip trailing whitespace (NFCI)

2016-09-30 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri Sep 30 09:25:09 2016 New Revision: 282858 URL: http://llvm.org/viewvc/llvm-project?rev=282858=rev Log: Strip trailing whitespace (NFCI) Modified: cfe/trunk/lib/Sema/SemaExprCXX.cpp Modified: cfe/trunk/lib/Sema/SemaExprCXX.cpp URL:

r282857 - Fix int <= bool comparison warning on MSVC

2016-09-30 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri Sep 30 09:18:06 2016 New Revision: 282857 URL: http://llvm.org/viewvc/llvm-project?rev=282857=rev Log: Fix int <= bool comparison warning on MSVC Modified: cfe/trunk/lib/Sema/SemaExprCXX.cpp Modified: cfe/trunk/lib/Sema/SemaExprCXX.cpp URL:

Re: [PATCH] D21021: [Clang][AVX512][BuiltIn]Adding intrinsics move_{sd|ss} to clang

2016-09-16 Thread Simon Pilgrim via cfe-commits
RKSimon added a subscriber: RKSimon. Comment at: lib/Headers/avx512fintrin.h:9124 @@ +9123,3 @@ +{ + return (__m128) __builtin_ia32_movss_mask ((__v4sf) __A, (__v4sf) __B, + (__v4sf) __W, delena wrote: > please try the following: > if (__U) >

r280921 - Moved unreachable to appease msvc, gcc and clang

2016-09-08 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu Sep 8 06:03:41 2016 New Revision: 280921 URL: http://llvm.org/viewvc/llvm-project?rev=280921=rev Log: Moved unreachable to appease msvc, gcc and clang Modified: cfe/trunk/lib/CodeGen/CGVTables.cpp Modified: cfe/trunk/lib/CodeGen/CGVTables.cpp URL:

r280917 - Fixed a 'not all control paths return a value' warning on MSVC builds

2016-09-08 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu Sep 8 04:59:58 2016 New Revision: 280917 URL: http://llvm.org/viewvc/llvm-project?rev=280917=rev Log: Fixed a 'not all control paths return a value' warning on MSVC builds Modified: cfe/trunk/lib/CodeGen/CGVTables.cpp Modified: cfe/trunk/lib/CodeGen/CGVTables.cpp

r279382 - Wdocumentation fix

2016-08-20 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Sat Aug 20 15:21:27 2016 New Revision: 279382 URL: http://llvm.org/viewvc/llvm-project?rev=279382=rev Log: Wdocumentation fix Modified: cfe/trunk/lib/Analysis/CloneDetection.cpp Modified: cfe/trunk/lib/Analysis/CloneDetection.cpp URL:

r278503 - Fix Wdocumentation unknown parameter warning

2016-08-12 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri Aug 12 06:43:57 2016 New Revision: 278503 URL: http://llvm.org/viewvc/llvm-project?rev=278503=rev Log: Fix Wdocumentation unknown parameter warning Modified: cfe/trunk/lib/Sema/SemaTemplateDeduction.cpp Modified: cfe/trunk/lib/Sema/SemaTemplateDeduction.cpp URL:

r278208 - [X86][AVX] Ensure we only match against 1-byte alignment

2016-08-10 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed Aug 10 04:59:49 2016 New Revision: 278208 URL: http://llvm.org/viewvc/llvm-project?rev=278208=rev Log: [X86][AVX] Ensure we only match against 1-byte alignment Modified: cfe/trunk/test/CodeGen/avx-builtins.c Modified: cfe/trunk/test/CodeGen/avx-builtins.c URL:

[clang-tools-extra] r278111 - Fix Wdocumentation unknown parameter warning

2016-08-09 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Tue Aug 9 05:02:11 2016 New Revision: 278111 URL: http://llvm.org/viewvc/llvm-project?rev=278111=rev Log: Fix Wdocumentation unknown parameter warning Modified: clang-tools-extra/trunk/include-fixer/IncludeFixer.h Modified:

r276889 - Fix unnecessary default switch warning

2016-07-27 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed Jul 27 11:41:56 2016 New Revision: 276889 URL: http://llvm.org/viewvc/llvm-project?rev=276889=rev Log: Fix unnecessary default switch warning Modified: cfe/trunk/lib/Sema/CodeCompleteConsumer.cpp Modified: cfe/trunk/lib/Sema/CodeCompleteConsumer.cpp URL:

r276417 - [X86][AVX] Added support for lowering to VBROADCASTF128/VBROADCASTI128 with generic IR

2016-07-22 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri Jul 22 08:58:56 2016 New Revision: 276417 URL: http://llvm.org/viewvc/llvm-project?rev=276417=rev Log: [X86][AVX] Added support for lowering to VBROADCASTF128/VBROADCASTI128 with generic IR As discussed on D22460, I've updated the vbroadcastf128 pd256/ps256 builtins to

Re: [PATCH] D22105: [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using generic IR

2016-07-20 Thread Simon Pilgrim via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL276102: [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using… (authored by RKSimon). Changed prior to commit: https://reviews.llvm.org/D22105?vs=64534=64653#toc Repository: rL

r276102 - [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using generic IR

2016-07-20 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed Jul 20 05:18:01 2016 New Revision: 276102 URL: http://llvm.org/viewvc/llvm-project?rev=276102=rev Log: [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using generic IR D20859 and D20860 attempted to replace the SSE (V)CVTTPS2DQ and VCVTTPD2DQ

Re: [PATCH] D22105: [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using generic IR

2016-07-19 Thread Simon Pilgrim via cfe-commits
RKSimon updated this revision to Diff 64534. RKSimon added a comment. Removed sitofp conversion changes Repository: rL LLVM https://reviews.llvm.org/D22105 Files: include/clang/Basic/BuiltinsX86.def lib/Headers/avxintrin.h lib/Headers/emmintrin.h lib/Headers/xmmintrin.h

Re: [PATCH] D22105: [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using generic IR

2016-07-19 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In https://reviews.llvm.org/D22105#488566, @eli.friedman wrote: > The x86-specific operation is affected by the rounding mode... but so is a C > cast. This is specified by Annex F in the C standard. > > Of course, you're going to end up with undefined behavior if you

Re: [PATCH] D22105: [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using generic IR

2016-07-19 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In https://reviews.llvm.org/D22105#488513, @eli.friedman wrote: > I don't think we need to use x86-specific operations for sitofp-like > conversions; the C cast is equivalent given that a 32 or 64-bit integer is > always in within the range of a 32-bit float. I think

r274799 - Update switch statement to match coding standards.

2016-07-07 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu Jul 7 17:32:26 2016 New Revision: 274799 URL: http://llvm.org/viewvc/llvm-project?rev=274799=rev Log: Update switch statement to match coding standards. Modified: cfe/trunk/lib/Basic/Targets.cpp Modified: cfe/trunk/lib/Basic/Targets.cpp URL:

[PATCH] D22105: [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using generic IR

2016-07-07 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: eli.friedman, mkuper, craig.topper, spatel, andreadb. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. D20859 and D20860 attempted to replace the SSE (V)CVTTPS2DQ and VCVTTPD2DQ truncating

r274748 - Fix "not all control paths return a value" warning on MSVC

2016-07-07 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu Jul 7 06:24:38 2016 New Revision: 274748 URL: http://llvm.org/viewvc/llvm-project?rev=274748=rev Log: Fix "not all control paths return a value" warning on MSVC This time without causing a 'all enums handled' warning on other compilers. Modified:

r274746 - Fix "not all control paths return a value" warning on MSVC

2016-07-07 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu Jul 7 06:12:02 2016 New Revision: 274746 URL: http://llvm.org/viewvc/llvm-project?rev=274746=rev Log: Fix "not all control paths return a value" warning on MSVC Modified: cfe/trunk/lib/Basic/Targets.cpp Modified: cfe/trunk/lib/Basic/Targets.cpp URL:

r274554 - [X86][AVX512] Remove vector BROADCAST builtins.

2016-07-05 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Tue Jul 5 09:49:31 2016 New Revision: 274554 URL: http://llvm.org/viewvc/llvm-project?rev=274554=rev Log: [X86][AVX512] Remove vector BROADCAST builtins. Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def Modified: cfe/trunk/include/clang/Basic/BuiltinsX86.def

r274544 - [X86][AVX512] Converted the VBROADCAST intrinsics to generic IR

2016-07-05 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Tue Jul 5 07:59:33 2016 New Revision: 274544 URL: http://llvm.org/viewvc/llvm-project?rev=274544=rev Log: [X86][AVX512] Converted the VBROADCAST intrinsics to generic IR Modified: cfe/trunk/lib/Headers/avx512bwintrin.h cfe/trunk/lib/Headers/avx512fintrin.h

r274523 - [X86][AVX512] Converted the VSHUFPD intrinsics to generic IR

2016-07-04 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon Jul 4 16:30:47 2016 New Revision: 274523 URL: http://llvm.org/viewvc/llvm-project?rev=274523=rev Log: [X86][AVX512] Converted the VSHUFPD intrinsics to generic IR Modified: cfe/trunk/lib/Headers/avx512fintrin.h cfe/trunk/lib/Headers/avx512vlintrin.h

r274502 - [X86][AVX512] Converted the VPERMPD/VPERMQ intrinsics to generic IR

2016-07-04 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon Jul 4 08:34:44 2016 New Revision: 274502 URL: http://llvm.org/viewvc/llvm-project?rev=274502=rev Log: [X86][AVX512] Converted the VPERMPD/VPERMQ intrinsics to generic IR Modified: cfe/trunk/lib/Headers/avx512fintrin.h cfe/trunk/lib/Headers/avx512vlintrin.h

r274492 - [X86][AVX512] Converted the VPERMILPD/VPERMILPS intrinsics to generic IR

2016-07-04 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon Jul 4 06:06:15 2016 New Revision: 274492 URL: http://llvm.org/viewvc/llvm-project?rev=274492=rev Log: [X86][AVX512] Converted the VPERMILPD/VPERMILPS intrinsics to generic IR Modified: cfe/trunk/lib/Headers/avx512fintrin.h

r274442 - [X86][AVX512] Converted the MOVDDUP/MOVSLDUP/MOVSHDUP masked intrinsics to generic IR

2016-07-02 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Sat Jul 2 12:16:25 2016 New Revision: 274442 URL: http://llvm.org/viewvc/llvm-project?rev=274442=rev Log: [X86][AVX512] Converted the MOVDDUP/MOVSLDUP/MOVSHDUP masked intrinsics to generic IR llvm companion patch imminent Modified:

r274126 - [X86][SSE2] Updated tests to match llvm\test\CodeGen\X86\sse2-intrinsics-fast-isel-x86_64.ll

2016-06-29 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed Jun 29 09:04:08 2016 New Revision: 274126 URL: http://llvm.org/viewvc/llvm-project?rev=274126=rev Log: [X86][SSE2] Updated tests to match llvm\test\CodeGen\X86\sse2-intrinsics-fast-isel-x86_64.ll Modified: cfe/trunk/test/CodeGen/sse2-builtins.c Modified:

Re: [PATCH] D21504: [X86] add _mm_loadu_si64

2016-06-22 Thread Simon Pilgrim via cfe-commits
RKSimon added inline comments. Comment at: tools/clang/test/CodeGen/sse2-builtins.c:1526 @@ +1525,3 @@ + // CHECK-LABEL: test_mm_loadu_si64 + // CHECK: load i64, i64* %__u + // CHECK: insertelement <2 x i64> undef, i64 %{{.*}}, i32 0 Please can add the

Re: [PATCH] D21306: [x86] AVX FP compare builtins should require AVX target feature (PR28112)

2016-06-21 Thread Simon Pilgrim via cfe-commits
RKSimon accepted this revision. RKSimon added a comment. This revision is now accepted and ready to land. LGTM - the compile warning is clear and it could be a problem if we allow undefined values through on pre-AVX targets. The only other thing we could do is handle these in CGBuiltin and

Re: [PATCH] D21373: [Clang][bmi][intrinsics] Adding _mm_tzcnt_64 _mm_tzcnt_32 intrinsics to clang.

2016-06-21 Thread Simon Pilgrim via cfe-commits
RKSimon accepted this revision. RKSimon added a comment. This revision is now accepted and ready to land. LGTM Comment at: lib/Headers/bmiintrin.h:284 @@ -283,2 +283,3 @@ ///bits in the operand. + static __inline__ unsigned int __RELAXED_FN_ATTRS Why the

Re: [PATCH] D21504: [X86] add _mm_loadu_si64

2016-06-19 Thread Simon Pilgrim via cfe-commits
RKSimon added a subscriber: RKSimon. Comment at: tools/clang/test/CodeGen/sse2-builtins.c:1527 @@ +1526,3 @@ + // CHECK: load i64, i64* %__u + // CHECK: insertelement <2 x i64> undef, i64 %4, i32 0 + // CHECK: insertelement <2 x i64> %{{.*}}, i64 0, i32 1

r273090 - [X86][XOP] Refreshed builtin tests ready for creation of llvm fast-isel tests

2016-06-18 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Sat Jun 18 13:20:14 2016 New Revision: 273090 URL: http://llvm.org/viewvc/llvm-project?rev=273090=rev Log: [X86][XOP] Refreshed builtin tests ready for creation of llvm fast-isel tests Modified: cfe/trunk/test/CodeGen/xop-builtins.c Modified:

r273086 - [X86][TBM] Refreshed builtin tests ready for creation of llvm fast-isel tests

2016-06-18 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Sat Jun 18 12:09:40 2016 New Revision: 273086 URL: http://llvm.org/viewvc/llvm-project?rev=273086=rev Log: [X86][TBM] Refreshed builtin tests ready for creation of llvm fast-isel tests Modified: cfe/trunk/test/CodeGen/tbm-builtins.c Modified:

r273003 - [X86][SSE4A] Use native IR for mask movntsd/movntss intrinsics.

2016-06-17 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri Jun 17 09:28:16 2016 New Revision: 273003 URL: http://llvm.org/viewvc/llvm-project?rev=273003=rev Log: [X86][SSE4A] Use native IR for mask movntsd/movntss intrinsics. Depends on llvm side commit r273002. Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp

Re: [PATCH] D21306: [x86] AVX FP compare builtins should require AVX target feature (PR28112)

2016-06-15 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. It seems like part of the need for this is because the _mm_cmp_ps style intrinsics are defined as macros (to get around the problem of trying to use an immediate as an argument): #define _mm_cmp_ps(a, b, c) __extension__ ({ \

Re: [PATCH] D21373: [Clang][bmi][intrinsics] Adding _mm_tzcnt_64 _mm_tzcnt_32 intrinsics to clang.

2016-06-15 Thread Simon Pilgrim via cfe-commits
RKSimon added a subscriber: RKSimon. RKSimon added a reviewer: RKSimon. Comment at: lib/Headers/bmiintrin.h:296 @@ -290,1 +295,3 @@ +} + #ifdef __x86_64__ Why not just #define to __tzcnt_u32 like the (many) other duplicate tzcnt intrinsics we have: ``` #define

Re: [PATCH] D20358: [Clang][AVX512][Intrinsics]Convert AVX non-temporal store builtins to LLVM-native IR.

2016-06-13 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. http://reviews.llvm.org/D21272 has now been committed, which I think removes the need for this patch. http://reviews.llvm.org/D20359 is still needed (with the additional tests requested by Craig). http://reviews.llvm.org/D20358

r272541 - Fix unused variable warning

2016-06-13 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon Jun 13 05:05:19 2016 New Revision: 272541 URL: http://llvm.org/viewvc/llvm-project?rev=272541=rev Log: Fix unused variable warning Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp Modified: cfe/trunk/lib/CodeGen/CGBuiltin.cpp URL:

r272540 - [Clang][X86] Convert non-temporal store builtins to generic __builtin_nontemporal_store in headers

2016-06-13 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon Jun 13 04:57:52 2016 New Revision: 272540 URL: http://llvm.org/viewvc/llvm-project?rev=272540=rev Log: [Clang][X86] Convert non-temporal store builtins to generic __builtin_nontemporal_store in headers We can now use __builtin_nontemporal_store instead of target

Re: [PATCH] D20358: [Clang][AVX512][Intrinsics]Convert AVX non-temporal store builtins to LLVM-native IR.

2016-06-12 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20358#446241, @RKSimon wrote: > In http://reviews.llvm.org/D20358#446220, @ab wrote: > > > In http://reviews.llvm.org/D20358#446218, @ab wrote: > > > > > In http://reviews.llvm.org/D20358#446210, @RKSimon wrote: > > > > > > > Is there any

[PATCH] D21272: [Clang][X86] Convert non-temporal store builtins to generic __builtin_nontemporal_store in headers

2016-06-12 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: craig.topper, ab, spatel, andreadb. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. As discussed on D20358, we can now use __builtin_nontemporal_store instead of target specific builtins for

Re: [PATCH] D21268: [x86] translate SSE packed FP comparison builtins to IR

2016-06-12 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. Eeep that's certainly a lot more work than just adding a few extra cases! Please add a TODO explaining what we need to do? If there is a problem with the header documentation please can you raise a bugzilla and CC Katya Romanova. http://reviews.llvm.org/D21268

Re: [PATCH] D21268: [x86] translate SSE packed FP comparison builtins to IR

2016-06-12 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. Is there any reason that we shouldn't include the avxintrin.h __builtin_ia32_cmppd/__builtin_ia32_cmpps/__builtin_ia32_cmppd256/__builtin_ia32_cmpps256 packed intrinsics in this CGBuiltin.cpp patch? Since we're heading towards nixing them anyhow.

Re: [PATCH] D20871: [Clang][AVX512][Intrinsics] Adding two definitions _mm512_setzero and _mm512_setzero_epi32

2016-06-05 Thread Simon Pilgrim via cfe-commits
RKSimon accepted this revision. RKSimon added a comment. This revision is now accepted and ready to land. LGTM - add test_mm512_setzero_pd() as well if you can. Comment at: test/CodeGen/avx512f-builtins.c:7291 @@ +7290,3 @@ + +__m512i test_mm512_setzero_ps() +{

Re: [PATCH] D20871: [Clang][AVX512][Intrinsics] Adding two definitions _mm512_setzero and _mm512_setzero_epi32

2016-06-02 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. Can you add tests for the existing _mm512_setzero_* intrinsics as well please? http://reviews.llvm.org/D20871 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

Re: [PATCH] D20358: [Clang][AVX512][Intrinsics]Convert AVX non-temporal store builtins to LLVM-native IR.

2016-06-01 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20358#446220, @ab wrote: > In http://reviews.llvm.org/D20358#446218, @ab wrote: > > > In http://reviews.llvm.org/D20358#446210, @RKSimon wrote: > > > > > Is there any reason why we can't just get rid of all the SSE movnt > > > builtins and

Re: [PATCH] D20358: [Clang][AVX512][Intrinsics]Convert AVX non-temporal store builtins to LLVM-native IR.

2016-06-01 Thread Simon Pilgrim via cfe-commits
RKSimon added a subscriber: RKSimon. RKSimon added a comment. Is there any reason why we can't just get rid of all the SSE movnt builtins and use __builtin_nontemporal_store instead (http://reviews.llvm.org/D12313)? http://reviews.llvm.org/D20358

Re: [PATCH] D20871: [Clang][AVX512][Intrinsics] Adding two definitions _mm512_setzero and _mm512_setzero_epi32

2016-06-01 Thread Simon Pilgrim via cfe-commits
RKSimon added a subscriber: RKSimon. RKSimon added a comment. Tests? http://reviews.llvm.org/D20871 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

r271436 - [X86][SSE] Replace (V)CVTTPS2DQ and VCVTTPD2DQ truncating (round to zero) f32/f64 to i32 with generic IR (clang)

2016-06-01 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed Jun 1 16:46:51 2016 New Revision: 271436 URL: http://llvm.org/viewvc/llvm-project?rev=271436=rev Log: [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

Re: [PATCH] D20859: [X86][SSE] Replace (V)CVTTPS2DQ and VCVTTPD2DQ truncating (round to zero) f32/f64 to i32 with generic IR (clang)

2016-06-01 Thread Simon Pilgrim via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL271436: [X86][SSE] Replace (V)CVTTPS2DQ and VCVTTPD2DQ truncating (round to zero)… (authored by RKSimon). Changed prior to commit: http://reviews.llvm.org/D20859?vs=59204=59284#toc Repository: rL

[PATCH] D20859: [X86][SSE] Replace (V)CVTTPS2DQ and VCVTTPD2DQ truncating (round to zero) f32/f64 to i32 with generic IR (clang)

2016-06-01 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: ab, mkuper, craig.topper, spatel, andreadb. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. The 'cvtt' truncation (round to zero) conversions can be safely represented as generic

r271219 - [X86][SSE] Added missing tests (merge failure)

2016-05-30 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon May 30 12:58:38 2016 New Revision: 271219 URL: http://llvm.org/viewvc/llvm-project?rev=271219=rev Log: [X86][SSE] Added missing tests (merge failure) Differential Revision: http://reviews.llvm.org/D20617 Modified: cfe/trunk/test/CodeGen/sse-builtins.c Modified:

Re: [PATCH] D20617: [X86][SSE] _mm_store1_ps/_mm_store1_pd should require an aligned pointer

2016-05-30 Thread Simon Pilgrim via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL271218: [X86][SSE] _mm_store1_ps/_mm_store1_pd should require an aligned pointer (authored by RKSimon). Changed prior to commit: http://reviews.llvm.org/D20617?vs=58397=58979#toc Repository: rL LLVM

r271218 - [X86][SSE] _mm_store1_ps/_mm_store1_pd should require an aligned pointer

2016-05-30 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon May 30 12:55:25 2016 New Revision: 271218 URL: http://llvm.org/viewvc/llvm-project?rev=271218=rev Log: [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

r271187 - [X86][SSE] Make unsigned integer vector types generally available

2016-05-29 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Sun May 29 13:49:08 2016 New Revision: 271187 URL: http://llvm.org/viewvc/llvm-project?rev=271187=rev Log: [X86][SSE] Make unsigned integer vector types generally available As discussed on http://reviews.llvm.org/D20684, move the unsigned integer vector types used for zero

Re: [PATCH] D20359: [LLVM][AVX512][Intrinsics] Convert AVX non-temporal store builtins to LLVM-native IR.

2016-05-28 Thread Simon Pilgrim via cfe-commits
RKSimon added a subscriber: RKSimon. RKSimon added a comment. Should AVX512 store support (non-temporal or otherwise) be added to X86FastISel::X86FastEmitStore ? http://reviews.llvm.org/D20359 ___ cfe-commits mailing list

Re: [PATCH] D20684: [X86][SSE] Replace VPMOVSX and (V)PMOVZX integer extension intrinsics with generic IR (clang)

2016-05-28 Thread Simon Pilgrim via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL271106: [X86][SSE] Replace VPMOVSX and (V)PMOVZX integer extension intrinsics with… (authored by RKSimon). Changed prior to commit: http://reviews.llvm.org/D20684?vs=58626=58884#toc Repository: rL

r271106 - [X86][SSE] Replace VPMOVSX and (V)PMOVZX integer extension intrinsics with generic IR (clang)

2016-05-28 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Sat May 28 03:12:45 2016 New Revision: 271106 URL: http://llvm.org/viewvc/llvm-project?rev=271106=rev Log: [X86][SSE] Replace VPMOVSX and (V)PMOVZX integer extension intrinsics with generic IR (clang) The VPMOVSX and (V)PMOVZX sign/zero extension intrinsics can be safely

Re: [PATCH] D20684: [X86][SSE] Replace VPMOVSX and (V)PMOVZX integer extension intrinsics with generic IR (clang)

2016-05-27 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20684#442514, @ab wrote: > I'd add the unsigned typedefs with their signed counterparts; no reason not > to. > With that, LGTM. Thanks, I'll do that as a follow up commit. Repository: rL LLVM http://reviews.llvm.org/D20684

Re: [PATCH] D20617: [X86][SSE] _mm_store1_ps/_mm_store1_pd should require an aligned pointer

2016-05-27 Thread Simon Pilgrim via cfe-commits
RKSimon added inline comments. Comment at: lib/Headers/emmintrin.h:598 @@ -594,3 +597,3 @@ static __inline__ void __DEFAULT_FN_ATTRS -_mm_store_pd(double *__dp, __m128d __a) +_mm_store_pd1(double *__dp, __m128d __a) { majnemer wrote: > You could use

[PATCH] D20684: [X86][SSE] Replace VPMOVSX and (V)PMOVZX integer extension intrinsics with generic IR (clang)

2016-05-26 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: mkuper, craig.topper, spatel, andreadb. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. The VPMOVSX and (V)PMOVZX sign/zero extension intrinsics can be safely represented as generic

r270836 - [X86][F16C] Improved f16c intrinsics checks

2016-05-26 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu May 26 05:20:25 2016 New Revision: 270836 URL: http://llvm.org/viewvc/llvm-project?rev=270836=rev Log: [X86][F16C] Improved f16c intrinsics checks Added checks for upper elements being zero'd in scalar conversions Modified: cfe/trunk/test/CodeGen/f16c-builtins.c

r270833 - [X86][AVX2] Improved checks for float/double mask generation for non-masked gathers

2016-05-26 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu May 26 04:56:50 2016 New Revision: 270833 URL: http://llvm.org/viewvc/llvm-project?rev=270833=rev Log: [X86][AVX2] Improved checks for float/double mask generation for non-masked gathers Modified: cfe/trunk/test/CodeGen/avx2-builtins.c Modified:

Re: [PATCH] D20617: [X86][SSE] _mm_store1_ps/_mm_store1_pd should require an aligned pointer

2016-05-25 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20617#439200, @craig.topper wrote: > Can you double check gcc's xmmintrin.h again. I'm pretty sure _mm_store1_ps > is calling _mm_storeu_ps. Yes you're right - for gcc _mm_store1_pd is aligned (and there is a comment saying it must be),

r270708 - [X86][AVX2] Full set of AVX2 intrinsics tests

2016-05-25 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed May 25 10:10:49 2016 New Revision: 270708 URL: http://llvm.org/viewvc/llvm-project?rev=270708=rev Log: [X86][AVX2] Full set of AVX2 intrinsics tests llvm/test/CodeGen/X86/avx2-intrinsics-fast-isel.ll will be synced to this Modified:

[PATCH] D20617: [X86][SSE] _mm_store1_ps/_mm_store1_pd should require an aligned pointer

2016-05-25 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: craig.topper, spatel, andreadb. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. According to the gcc headers, intel intrinsics docs and msdn codegen the _mm_store1_ps/_mm_store1_pd (and

r270679 - [X86][SSE] Updated _mm_store_ps1 test to match _mm_store1_ps

2016-05-25 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Wed May 25 04:20:08 2016 New Revision: 270679 URL: http://llvm.org/viewvc/llvm-project?rev=270679=rev Log: [X86][SSE] Updated _mm_store_ps1 test to match _mm_store1_ps Modified: cfe/trunk/test/CodeGen/sse-builtins.c Modified: cfe/trunk/test/CodeGen/sse-builtins.c URL:

Re: [PATCH] D20528: [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR

2016-05-23 Thread Simon Pilgrim via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL270499: [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR (authored by RKSimon). Changed prior to commit: http://reviews.llvm.org/D20528?vs=58146=58160#toc Repository:

r270499 - [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR

2016-05-23 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Mon May 23 17:13:02 2016 New Revision: 270499 URL: http://llvm.org/viewvc/llvm-project?rev=270499=rev Log: [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR Both the (V)CVTDQ2PD(Y) (i32 to f64) and (V)CVTPS2PD(Y) (f32 to f64) conversion

Re: [PATCH] D20528: [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR

2016-05-23 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20528#437165, @mkuper wrote: > Presumably, the fast-isel lowering of the IR pattern is already correct, and > in any case, it isn't affected by this patch. > I just want to make sure we don't regress the optimized DAG codegen - that > is,

Re: [PATCH] D20528: [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR

2016-05-23 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20528#437117, @mkuper wrote: > Sorry, I didn't intend to imply the rest of the llvm work is necessary for > this to go in. Just that I'd be happier with this patch knowing that we have > a regression test for doing the (shuffle + fpext, say)

Re: [PATCH] D20528: [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR

2016-05-23 Thread Simon Pilgrim via cfe-commits
RKSimon updated this revision to Diff 58146. Repository: rL LLVM http://reviews.llvm.org/D20528 Files: include/clang/Basic/BuiltinsX86.def lib/Headers/avxintrin.h lib/Headers/emmintrin.h test/CodeGen/avx-builtins.c test/CodeGen/builtins-x86.c test/CodeGen/sse2-builtins.c

Re: [PATCH] D20528: [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR

2016-05-23 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20528#436893, @mkuper wrote: > This looks right, but we may lose some end-to-end tests, since right now we > have a clang-level test that checks the builtin is lowered to the intrinsic, > and (hopefully) a CG-level test that the intrinsic is

[PATCH] D20528: [X86][SSE] Replace lossless i32/f32 to f64 conversion intrinsics with generic IR

2016-05-23 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: qcolombet, craig.topper, mkuper, andreadb, spatel. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. Both the (V)CVTDQ2PD(Y) (i32 to f64) and (V)CVTPS2PD(Y) (f32 to f64) conversion

Re: [PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-21 Thread Simon Pilgrim via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL270330: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16 (authored by RKSimon). Changed prior to commit: http://reviews.llvm.org/D20468?vs=57927=58045#toc Repository:

r270330 - [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-21 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Sat May 21 16:14:35 2016 New Revision: 270330 URL: http://llvm.org/viewvc/llvm-project?rev=270330=rev Log: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16 Ensure _mm256_extract_epi8 and _mm256_extract_epi16 zero extend their i8/i16 result

Re: [PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-20 Thread Simon Pilgrim via cfe-commits
RKSimon added a comment. In http://reviews.llvm.org/D20468#435522, @mkuper wrote: > Could you point me to where in the documentation it says they must be > zero-extended? > The Intel intrinsics guide actually has them with shorter return types: > > __int8 _mm256_extract_epi8 (__m256i a,

r270227 - [X86][AVX] Added _mm256_testc_si256/_mm256_testnzc_si256/_mm256_testz_si256 tests

2016-05-20 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri May 20 10:49:17 2016 New Revision: 270227 URL: http://llvm.org/viewvc/llvm-project?rev=270227=rev Log: [X86][AVX] Added _mm256_testc_si256/_mm256_testnzc_si256/_mm256_testz_si256 tests Modified: cfe/trunk/test/CodeGen/avx-builtins.c Modified:

[PATCH] D20468: [X86][AVX] Ensure zero-extension of _mm256_extract_epi8 and _mm256_extract_epi16

2016-05-20 Thread Simon Pilgrim via cfe-commits
RKSimon created this revision. RKSimon added reviewers: mkuper, craig.topper, kromanova, spatel. RKSimon added a subscriber: cfe-commits. RKSimon set the repository for this revision to rL LLVM. Ensure _mm256_extract_epi8 and _mm256_extract_epi16 zero extend their i8/i16 result to i32. This

r270212 - [X86][AVX] Added _mm256_extract_epi64 test

2016-05-20 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri May 20 07:57:21 2016 New Revision: 270212 URL: http://llvm.org/viewvc/llvm-project?rev=270212=rev Log: [X86][AVX] Added _mm256_extract_epi64 test Modified: cfe/trunk/test/CodeGen/avx-builtins.c Modified: cfe/trunk/test/CodeGen/avx-builtins.c URL:

r270210 - [X86][AVX] Full set of AVX intrinsics tests

2016-05-20 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Fri May 20 07:41:02 2016 New Revision: 270210 URL: http://llvm.org/viewvc/llvm-project?rev=270210=rev Log: [X86][AVX] Full set of AVX intrinsics tests llvm/test/CodeGen/X86/avx-intrinsics-fast-isel.ll will be synced to this Modified:

r270079 - [X86][SSE2] Fixed shuffle of results in _mm_cmpnge_sd/_mm_cmpngt_sd tests

2016-05-19 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu May 19 11:48:59 2016 New Revision: 270079 URL: http://llvm.org/viewvc/llvm-project?rev=270079=rev Log: [X86][SSE2] Fixed shuffle of results in _mm_cmpnge_sd/_mm_cmpngt_sd tests Modified: cfe/trunk/test/CodeGen/sse2-builtins.c Modified:

r270043 - [X86][SSE2] Added _mm_move_* tests

2016-05-19 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu May 19 06:18:49 2016 New Revision: 270043 URL: http://llvm.org/viewvc/llvm-project?rev=270043=rev Log: [X86][SSE2] Added _mm_move_* tests Modified: cfe/trunk/test/CodeGen/sse2-builtins.c Modified: cfe/trunk/test/CodeGen/sse2-builtins.c URL:

r270042 - [X86][SSE2] Added _mm_cast* and _mm_set* tests

2016-05-19 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu May 19 06:03:48 2016 New Revision: 270042 URL: http://llvm.org/viewvc/llvm-project?rev=270042=rev Log: [X86][SSE2] Added _mm_cast* and _mm_set* tests Modified: cfe/trunk/test/CodeGen/sse2-builtins.c Modified: cfe/trunk/test/CodeGen/sse2-builtins.c URL:

r270034 - [X86][SSE2] Sync with llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll

2016-05-19 Thread Simon Pilgrim via cfe-commits
Author: rksimon Date: Thu May 19 04:52:59 2016 New Revision: 270034 URL: http://llvm.org/viewvc/llvm-project?rev=270034=rev Log: [X86][SSE2] Sync with llvm/test/CodeGen/X86/sse2-intrinsics-fast-isel.ll Modified: cfe/trunk/test/CodeGen/sse2-builtins.c Modified:

<    4   5   6   7   8   9   10   >