- Mar 23, 2015
-
-
Eric Christopher authored
llvm-svn: 232997
-
Dmitri Gribenko authored
Simplify boolean expresions using true and false with clang-tidy. Patch by Richard. llvm-svn: 232996
-
Benjamin Kramer authored
llvm-svn: 232995
-
Benjamin Kramer authored
llvm-svn: 232994
-
Benjamin Kramer authored
llvm-svn: 232993
-
Matt Arsenault authored
Don't use a separate table for compares anymore, and use the same VOP2_REV class. llvm-svn: 232992
-
Matt Arsenault authored
Also don't count the class instructions as isCompare anymore. llvm-svn: 232991
-
Matt Arsenault authored
These are already set in the base class for the instruction. llvm-svn: 232990
-
Matt Arsenault authored
llvm-svn: 232989
-
Matt Arsenault authored
This enables very common cases to switch to the smaller encoding. All of the standard LLVM canonicalizations of comparisons are the opposite of what we want. Compares with constants are moved to the RHS, but the first operand can be an inline immediate, literal constant, or SGPR using the 32-bit VOPC encoding. There are additional bad canonicalizations that should also be fixed, such as canonicalizing ge x, k to gt x, (k + 1) if this makes k no longer an inline immediate value. llvm-svn: 232988
-
Matt Arsenault authored
Use VOPCX_F64 to not need the let Defs = [EXEC] llvm-svn: 232987
-
Matt Arsenault authored
It isn't used, and these will probably never be directly selected. llvm-svn: 232986
-
Rafael Auler authored
llvm-svn: 232985
-
David Blaikie authored
Simplify boolean expressions involving `true` and `false` with `clang-tidy`. Actually upon inspection a bunch of these boolean variables could be factored away entirely anyway - using find_if and then testing the result before using it. This also helps reduce indentation in the code anyway - and a bunch of other related simplification fell out nearby so I just committed all of that. Patch by Richard Thomson (legalize@xmission.com) Differential Revision: http://reviews.llvm.org/D8517 llvm-svn: 232984
-
Stephane Sezer authored
Summary: Saw this while reading some code in DynamicLoader classes. Looks like this has been a FIXME since 2011 at least. Test Plan: Run unit tests. Reviewers: clayborg Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D8558 llvm-svn: 232983
-
Yaron Keren authored
See detailed discussion at http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20140915/235418.html and r217907, r217948: http://llvm.org/viewvc/llvm-project?view=revision&revision=217907 http://llvm.org/viewvc/llvm-project?view=revision&revision=217948 llvm-svn: 232982
-
Benjamin Kramer authored
NFC. llvm-svn: 232981
-
Benjamin Kramer authored
Also reorder includes a bit, NFC. llvm-svn: 232980
-
Stephane Sezer authored
Reviewers: clayborg Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D8554 llvm-svn: 232979
-
Tom Stellard authored
This implementation was ported from the AMD builtin library and has been tested with piglit, OpenCV, and the ocl conformance tests. llvm-svn: 232978
-
Tom Stellard authored
This implementation was ported from the AMD builtin library and has been tested with piglit, OpenCV, and the ocl conformance tests. llvm-svn: 232977
-
Benjamin Kramer authored
NFC. llvm-svn: 232976
-
Benjamin Kramer authored
NFC. llvm-svn: 232975
-
Zachary Turner authored
This was hardcoding some make rules instead of relying on Makefile.rules, which was causing some of the logic to be incorrect for Windows. Patch by: Adrian McCarthy Differential Revision: http://reviews.llvm.org/D8363 llvm-svn: 232974
-
Ed Maste authored
llvm-svn: 232973
-
Alexander Potapenko authored
[sanitizer] Fix file access modes in SanitizerCommon.InternalMmapWithOffset and SanitizerCommon.FileOps llvm-svn: 232972
-
Ahmed Bougacha authored
On AArch64, the -fallow-half-args-and-returns option is the default. With it, the half type is considered legal (rather than the i16 used normally for __fp16), but no operation is, except conversions and load/stores and such. The previous behavior was tantamount to saying LangOpts.NativeHalfType was implied by LangOpts.HalfArgsAndReturns, which isn't true. Instead, teach the various parts of CodeGen that already know about half (using the intrinsics or not) about this weird in-between case, where the "half" type is legal, but operations on it aren't. This is a smaller intermediate step to the end-goal of removing the intrinsic, always using "half", and letting the backend legalize. Builds on r232968. rdar://20045970, rdar://17468714 Differential Revision: http://reviews.llvm.org/D8367 llvm-svn: 232971
-
Ed Maste authored
llvm-svn: 232970
-
Ed Maste authored
- replace hard tabs with 4-space indents - delete EOL whitespace llvm-svn: 232969
-
Ahmed Bougacha authored
Fix the CodeGen so that for types bigger than float, instead of converting to fp16 via the sequence "InTy -> float -> fp16", we perform conversions in just one step. This avoids the double rounding which potentially changes results from a natural IEEE-754 operation. rdar://17594379, rdar://17468714 Differential Revision: http://reviews.llvm.org/D4602 Part of: http://reviews.llvm.org/D8367 llvm-svn: 232968
-
Chad Rosier authored
Patch by Geoff Berry<gberry@codeaurora.org>. llvm-svn: 232967
-
Stephane Sezer authored
Summary: This has been discovered while experimenting with the gecko linker on android. In general, assert()'ing on "user input" is a bad idea. Test Plan: Run unit tests. Reviewers: clayborg, tfiala Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D8495 llvm-svn: 232966
-
Tom Stellard authored
This is a generic implementation which just calls sqrt. Targets should override this if they want a faster implementation. v2: - Alphabetize SOURCES llvm-svn: 232965
-
Tom Stellard authored
This implementation was ported from the AMD builtin library and has been tested with piglit, OpenCV, and the ocl conformance tests. v2: - Remove unnecessary copyright. llvm-svn: 232964
-
Tom Stellard authored
v2: - Move common code into a macro - Use the same constant for all vector types. llvm-svn: 232963
-
Bradley Smith authored
This change is incorrect since it converts double rounding into single rounding, which can produce different results. Instead this optimization will be done by modifying Clang's codegen to not produce double rounding in the first place. This reverts commit r232954. llvm-svn: 232962
-
Eli Bendersky authored
Patch by Richard (legalize@xmission.com) Differential Revision: http://reviews.llvm.org/D8521 llvm-svn: 232961
-
Tom Stellard authored
This will help avoid naming conflicts with functions defined in kernels linking with libclc. llvm-svn: 232960
-
Tamas Berghammer authored
It is required because the name of the executable exceeded the maximum allowed file name on android. llvm-svn: 232959
-
James Molloy authored
Anton tried this 5 years ago but it was reverted due to extra VMOVs being emitted. This can be easily fixed with a liberal application of patterns - matching loads/stores and extractelts. llvm-svn: 232958
-