- Feb 15, 2017
-
-
Stanislav Mekhanoshin authored
This patch reverts region's scheduling to the original untouched state in case if we have have decreased occupancy. In addition it switches to use TargetRegisterInfo occupancy callback for pressure limits instead of gradually increasing limits which were just passed by. We are going to stay with the best schedule so we do not need to tolerate worsened scheduling anymore. Differential Revision: https://reviews.llvm.org/D29971 llvm-svn: 295206
-
Anna Thomas authored
This reverts commit r294617. We fail on an assert while trying to get a condition from an unconditional branch. llvm-svn: 295200
-
Simon Pilgrim authored
llvm-svn: 295195
-
David Bozier authored
llvm-svn: 295188
-
Sanjay Patel authored
llvm-svn: 295185
-
Simon Pilgrim authored
llvm-svn: 295182
-
Sanjay Patel authored
llvm-svn: 295181
-
Sanjay Patel authored
llvm-svn: 295179
-
Simon Pilgrim authored
llvm-svn: 295177
-
David Bozier authored
Unit tests needed to check on the endianness of the host platform. (Test was failing for big endian hosts). llvm-svn: 295174
-
David Bozier authored
Changed format specifiers to use format macro constant for pointer type. Moved width part of format specifier in the correct place for formatting members a and b. Added a unit test to confirm the output. Differential Revision: https://reviews.llvm.org/D28957 llvm-svn: 295173
-
Simon Pilgrim authored
Add support for specifying an UNPCK input as ZERO, particularly improves ZEXT cases with non-zero offsets llvm-svn: 295169
-
Sagar Thakur authored
Summary: Adds support for xray instrumentation on mips for both 32-bit and 64-bit. Reviewed by sdardis, dberris Differential: D27697 llvm-svn: 295164
-
Daniel Jasper authored
This fails under ASAN: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-bootstrap/builds/798/steps/check-llvm%20asan/logs/stdio llvm-svn: 295162
-
Ayman Musa authored
There is no meaning for REX_W in VEX encoded AVX instruction. Differential Revision: https://reviews.llvm.org/D29894 llvm-svn: 295157
-
Craig Topper authored
Summary: We don't seem to have great rules on what a valid VBROADCAST node looks like. And as a consequence we end up with a lot of patterns to try to catch everything. We have patterns with scalar inputs, 128-bit vector inputs, 256-bit vector inputs, and 512-bit vector inputs. As you can see from the things improved here we are currently missing patterns for 128-bit loads being extended to 256-bit before the vbroadcast. I'd like to propose that VBROADCAST should always take a 128-bit vector type as input. As a first step towards that this patch adds an EXTRACT_SUBVECTOR in front of VBROADCAST when the input is 256 or 512-bits. In the future I would like to add scalar_to_vector around all the scalar operations. And maybe we should consider adding a VBROADCAST+load node to avoid separating loads from the broadcasting operation when the load itself isn't foldable. This requires an additional change in target shuffle combining to look for the extract subvector and look through it to find the original operand. I'm sure this change isn't perfect but was enough to fix a few test failures that were being caused. Another interesting thing I noticed is that the changes in masked_gather_scatter.ll show cases were we don't remove a useless insert into element 1 before broadcasting element 0. Reviewers: delena, RKSimon, zvi Reviewed By: zvi Subscribers: igorb, llvm-commits Differential Revision: https://reviews.llvm.org/D28747 llvm-svn: 295155
-
Craig Topper authored
llvm-svn: 295154
-
Craig Topper authored
[SelectionDAGBuilder] Simplify creation of shufflevector DAG nodes where inputs are larger than the mask Summary: The current code loops over all elements to calculate a used range. Then a second short loop looks at the ranges and determines if they can be used in a extract and creates a properly aligned start index for the extract. This range finding is unnecessary, we can just calculate a properly aligned start index for an extract for each input during the first loop. If we don't find the same start index for each indice we can't use an extract. Reviewers: zvi, RKSimon Reviewed By: zvi Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D29926 llvm-svn: 295152
-
Lang Hames authored
handler args. The specialization just inherits from the std::decay'd response handler type. This allows member functions (via MemberFunctionWrapper) to be used as async handlers. llvm-svn: 295151
-
Peter Collingbourne authored
The comment was somewhat misleading in that it implied that passes were not responsible for adding new assumptions to the assumption cache. This new wording now explicitly mentions that they are required to do so. Differential Revision: https://reviews.llvm.org/D29977 llvm-svn: 295148
-
Peter Collingbourne authored
Differential Revision: https://reviews.llvm.org/D29976 llvm-svn: 295145
-
Peter Collingbourne authored
WholeProgramDevirt: Separate the code that applies optzns from the code that decides whether to apply them. NFCI. The idea is that the apply* functions will also be called when importing devirt optimizations. Differential Revision: https://reviews.llvm.org/D29745 llvm-svn: 295144
-
Rui Ueyama authored
This broke buildbots. llvm-svn: 295142
-
Rui Ueyama authored
llvm-svn: 295138
-
Rui Ueyama authored
llvm-svn: 295137
-
Rui Ueyama authored
llvm-svn: 295136
-
Stanislav Mekhanoshin authored
This patch corrects the maximum workgroups per CU if we have big workgroups (more than 128). This calculation contributes to the occupancy calculation in respect to LDS size. Differential Revision: https://reviews.llvm.org/D29974 llvm-svn: 295134
-
Rui Ueyama authored
llvm-svn: 295132
-
Rui Ueyama authored
llvm-svn: 295131
-
Rui Ueyama authored
llvm-svn: 295128
-
Rui Ueyama authored
llvm-svn: 295126
-
Rui Ueyama authored
llvm-svn: 295124
-
Rui Ueyama authored
llvm-svn: 295120
-
Rui Ueyama authored
llvm-svn: 295119
-
Kostya Serebryany authored
llvm-svn: 295117
-
- Feb 14, 2017
-
-
Dimitry Andric authored
Summary: The YAML output produced by llvm-xray is supposed to be wrapped at the arbitrary default of 70 columns set by `yaml:Output`. Unfortunately, the wrapping is rather unpredictable, and can easily go past the set number of columns, depending on the execution environment. To make the YAML output environment-independent, disable wrapping instead. Reviewers: dberris Reviewed By: dberris Subscribers: fhahn, llvm-commits Differential Revision: https://reviews.llvm.org/D29962 llvm-svn: 295116
-
Easwaran Raman authored
Multiple blocks in the callee can be mapped to a single cloned block since we prune the callee as we clone it. The existing code iterates over the value map and clones the block frequency (and eventually scales the frequencies of the cloned blocks). Value map's iteration is not deterministic and so the cloned block might get the frequency of any of the original blocks. The fix is to set the max of the original frequencies to the cloned block. The first block in the sequence must have this max frequency and, in the call context, subsequent blocks must have its frequency. Differential Revision: https://reviews.llvm.org/D29696 llvm-svn: 295115
-
Kostya Serebryany authored
Summary: This helps to avoid signed integer overflow after running a fast fuzz target for several hours, e.g.: <...> Done -1097903291 runs in 54001 second(s) Reviewers: kcc Reviewed By: kcc Differential Revision: https://reviews.llvm.org/D29941 llvm-svn: 295112
-
Michael Kuperstein authored
llvm-svn: 295111
-
Peter Collingbourne authored
Group calls into constant and non-constant arguments up front, and use uint64_t instead of ConstantInt to represent constant arguments. The goal is to allow the information from the summary to fit naturally into this data structure in a future change (specifically, it will be added to CallSiteInfo). This has two side effects: - We disallow VCP for constant integer arguments of width >64 bits. - We remove the restriction that the bitwidth of a vcall's argument and return types must match those of the vfunc definitions. I don't expect either of these to matter in practice. The first case is uncommon, and the second one will lead to UB (so we can do anything we like). Differential Revision: https://reviews.llvm.org/D29744 llvm-svn: 295110
-