- Nov 07, 2016
-
-
James Molloy authored
When the base register (register pointing to the jump table) is the PC, we expect the jump table to directly follow the jump sequence with no intervening padding. If there is intervening padding, the calculated offsets will not be correct. One solution would be to account for any padding in the emitted LDRB instruction, but at the moment we don't support emitting MCExprs for the load offset. In the meantime, it's correct and only a slight amount worse to just move the padding up, from just before the jump table to just before the jump instruction sequence. We can do that by emitting code alignment before the jump sequence, as we know the number of instructions in the sequence is always 4. llvm-svn: 286107
-
Alexey Bataev authored
llvm-svn: 286106
-
Simon Pilgrim authored
llvm-svn: 286105
-
Simon Pilgrim authored
cpu/triple duplication llvm-svn: 286104
-
Alexey Bataev authored
After some changes in codegen capturing of VLA variables in OpenMP regions was broken, causing compiler crash. Patch fixes this issue. llvm-svn: 286103
-
Diana Picus authored
This reverts commit r286098 because the modified test breaks on many of the buildbots. llvm-svn: 286102
-
Pavel Labath authored
This renames the functionalities/postmortem/linux-core to elf-core and puts the "linux" part into the individual names of the core files. Since the tests for linux and freebsd core files are going to be very similar, having them close together means they can reuse most of the plumbing. llvm-svn: 286101
-
Eugene Leviant authored
Differential revision: https://reviews.llvm.org/D26281 llvm-svn: 286100
-
Roger Ferrer Ibanez authored
In these tests there are some paths that explicitly throw, so use the TEST_THROW macro that was proposed for this and then skip the tests that may enter the throwing path. Differential Revision: https://reviews.llvm.org/D26142 llvm-svn: 286099
-
Alexey Bataev authored
After some changes in codegen capturing of VLA variables in OpenMP regions was broken, causing compiler crash. Patch fixes this issue. llvm-svn: 286098
-
Craig Topper authored
[AVX-512][Sema] Add more intrinsics to the checks for valid immediates for embedded rounding control arguments. llvm-svn: 286097
-
Eric Liu authored
Summary: The current version does not deduplicate equivalent file paths correctly. For example, a relative path and an absolute path are considered inequivalent. Comparing FileEnry addresses these issues. Reviewers: djasper Subscribers: alexshap, klimek, cfe-commits Differential Revision: https://reviews.llvm.org/D26288 llvm-svn: 286096
-
Dylan McKay authored
llvm-svn: 286095
-
Brian Gesiak authored
Summary: Update the docs to match the changes in http://reviews.llvm.org/D7132 Reviewers: beanz, llvm-commits, modocache Differential Revision: https://reviews.llvm.org/D26296 llvm-svn: 286094
-
Vedant Kumar authored
We shouldn't access past the end of an array, even if we think that the layout of the struct containing the array is always what we expect. The compiler is free to optimize away the stores as undefined behavior, and in fact, GCC 6.2.1 claims it will do exactly this. llvm-svn: 286093
-
Craig Topper authored
[AVX-512] Remove masked pmovzx/pmovsx builtins and autoupgrade them to selects and native zext/sext. This mostly reuses earlier autoupgrade support for the sse and avx equivalents. Just needed to add the code to add the select. llvm-svn: 286092
-
Craig Topper authored
[X86] Remove GCCBuiltins from cvtsi2ss/cvtsi2sd/cvtss2sd intrinsics as they aren't used by clang. Add TODOs to remove these and some other unused intrinsics. llvm-svn: 286091
-
Craig Topper authored
llvm-svn: 286090
-
Craig Topper authored
[AVX-512] Remove 128/256 masked pshufb intrinsics. Autoupgrade them to legacy intrinsics and a select. llvm-svn: 286089
-
Zachary Turner authored
I will probably submit a lot of small trivial changes like this over the coming weeks. The end goal is to convert Options::SetOptionValue to take the option arg as a StringRef, but doing so in one pass would be a huge mess of disparate changes just to satisfy the compiler, and with a high risk of breaking. So I'm going to do this in small pieces, changing seemingly random things here and there until the final change to the signature of Options::SetOptionValue() can be done trivially. llvm-svn: 286088
-
Daniel Jasper authored
Also delete a comment I forgot to delete. llvm-svn: 286087
-
Daniel Jasper authored
llvm-svn: 286086
-
Daniel Jasper authored
llvm-svn: 286085
-
Krzysztof Parzyszek authored
Cmake has not recognized that Hexagon.td has a new dependency in HexagonPatterns.td. All changes to that file were not visible to the build bots. llvm-svn: 286084
-
Davide Italiano authored
llvm-svn: 286083
-
Saleem Abdulrasool authored
This handles the last case of the builtin function calls that we would generate code which differed from Microsoft's ABI. Rather than generating a call to `__pow{d,s}i2` we now promote the parameter to a float or double and invoke `powf` or `pow` instead. Addresses PR30825! llvm-svn: 286082 -
Krzysztof Parzyszek authored
llvm-svn: 286081
-
Krzysztof Parzyszek authored
The clr/set/toggle-bit instructions (with the bit index given as an immediate operand) had both, custom selection code that generated them, and selection patterns at the same time. The selection patterns were not used, because the custom selection code was executed first. This patch removes the custom code in favor of the selection patterns. The custom code handled 64-bit registers as well with an immediate bit index, and so new patterns were added to implement that. It was also the same case for the instruction "Rd += asr(Rs, Rt)", except that the custom code did not offer any additional functionality, and was simply removed. llvm-svn: 286080
-
Krzysztof Parzyszek authored
Remove unnecessary type casts in patterns. llvm-svn: 286079
-
Krzysztof Parzyszek authored
Give simpler or more meaningful names to pat frags and xforms. llvm-svn: 286078
-
Krzysztof Parzyszek authored
Remove unnecessary C++ functions for SDNode transforms. Move more pat frags to files where they are used. llvm-svn: 286077
-
Krzysztof Parzyszek authored
Add pat frags for any-, sign-, and zero-extensions. llvm-svn: 286076
-
Simon Pilgrim authored
llvm-svn: 286075
-
Simon Pilgrim authored
In preparation for demandedelts support llvm-svn: 286074
-
Craig Topper authored
[AVX-512] Remove intrinsics for 128/256-bit masked variable shift. Instead upgrade them to a select and the older AVX2 intrinsic. llvm-svn: 286073
-
Craig Topper authored
[AVX-512] Remove intrinsics for 128/256-bit masked shift by immediate. Instead upgrade them to a select and the older SSE/AVX2 intrinsic. llvm-svn: 286072
-
Simon Pilgrim authored
llvm-svn: 286071
-
Craig Topper authored
[AVX-512] Remove intrinsics for 128/256-bit masked shift by single element in xmm. Instead upgrade them to a select and the older SSE/AVX2 intrinsic. llvm-svn: 286070
-
Craig Topper authored
[AVX-512] Remove a 512-bit test cases from the avx512vl test file. It already exists in the avx512f test file. llvm-svn: 286069
-
Simon Pilgrim authored
In preparation for demandedelts support llvm-svn: 286068
-