Elena Demikhovsky
0090e74974
Added Cannonlake processor to X86 Target
...
Differential Revision: http://reviews.llvm.org/D16289
llvm-svn: 258046
2016-01-18 13:00:31 +00:00
Igor Breger
74d74d20c2
AVX512 : Change v8i1 bitconvert GR8 pattern, remove unnecessary movzbl instruction.
...
code example , previous implementation.
movzbl %dil, %eax
kmovw %eax, %k0
new code
kmovw %edi, %k0
Differential Revision: http://reviews.llvm.org/D16287
llvm-svn: 258045
2016-01-18 12:02:45 +00:00
Oliver Stannard
ec1b7475d8
[ARM] Operands for PKHTB alias should be swapped
...
When the shift immediate is zero, PKHTB is an alias for PKHBT, but the order of
the input operands needs to be swapped.
Differential Revision: http://reviews.llvm.org/D16288
llvm-svn: 258044
2016-01-18 11:56:35 +00:00
Michael Zuckerman
b0cb95e40b
[AVX512] adding AVXVBMI feature flag
...
Fixing wrong typo (avx515) → (avx512)
Review over the shoulder by asaf .
Differential Revision: http://reviews.llvm.org/D16190
llvm-svn: 258041
2016-01-18 11:12:47 +00:00
Xinliang David Li
7d5bc597d7
[Coverage] move a local var to be BinaryCoverageReader's member
...
The symtab is logically referenced beyond the call to the create
method. This changes makes sure its lifetime matches that of
the reader.
llvm-svn: 258036
2016-01-18 06:48:01 +00:00
Junmo Park
d69eaa7d57
Remove extra whitespace. NFC.
...
llvm-svn: 258035
2016-01-18 06:42:51 +00:00
Lang Hames
c6ee17b71b
[Orc] Revert r258031 - it broke the builders.
...
llvm-svn: 258034
2016-01-18 01:51:51 +00:00
Amaury Sechet
2927bd4ab2
Fix typo in the C API comments
...
llvm-svn: 258033
2016-01-18 01:06:52 +00:00
Lang Hames
2d38694617
[Orc] Expand a comment explaining a unit test.
...
llvm-svn: 258032
2016-01-18 01:00:19 +00:00
Lang Hames
c96132f0d0
[Orc] Enable ORC execution unit tests on non-windows platforms.
...
Previously these were Darwin-only. Since the switch to direct binary emission
of stubs, trampolines and resolver blocks, these should work on other *nix
platforms too.
These tests can be enabled on Windows once known issues with ORC's handling of
Windows symbol mangling (see e.g. https://llvm.org/PR25940 ) have been fixed.
llvm-svn: 258031
2016-01-18 00:47:25 +00:00
Xinliang David Li
1a36d26015
minor comment clean and add a method \NFC
...
llvm-svn: 258030
2016-01-18 00:26:33 +00:00
Eduard Burtescu
4fdc6b48ef
Revert assert added in rL258028 as the alloca and OtherPtr types may differ in address space.
...
llvm-svn: 258029
2016-01-18 00:20:34 +00:00
Eduard Burtescu
313153c723
[opaque pointer types] Alloca: use getAllocatedType() instead of getType()->getPointerElementType().
...
Reviewers: mjacob
Subscribers: llvm-commits, dblaikie
Differential Revision: http://reviews.llvm.org/D16272
llvm-svn: 258028
2016-01-18 00:10:01 +00:00
Sanjay Patel
8534c989be
fix variable names; NFC
...
llvm-svn: 258027
2016-01-17 23:18:05 +00:00
Sanjay Patel
efea56a88c
fix typos; NFC
...
llvm-svn: 258026
2016-01-17 23:13:48 +00:00
Davide Italiano
fe46acd825
[Support/ELF] Add Sun machine-independent extesions DT_* constants.
...
llvm-svn: 258025
2016-01-17 22:46:50 +00:00
Manuel Jacob
51a8af4316
[opaque pointer types] [breaking-change] [NFC] SimplifyGEPInst: take the source element type of the GEP as an argument.
...
Patch by Eduard Burtescu.
Reviewers: dblaikie, mjacob
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D16281
llvm-svn: 258024
2016-01-17 22:46:43 +00:00
Manuel Jacob
67d88f5507
[opaque pointer types] [NFC] CallSite: use getFunctionType() instead of going through PointerType::getElementType.
...
Patch by Eduard Burtescu.
Reviewers: dblaikie, mjacob
Subscribers: dsanders, llvm-commits, dblaikie
Differential Revision: http://reviews.llvm.org/D16273
llvm-svn: 258023
2016-01-17 22:37:39 +00:00
Manuel Jacob
5fe6c9d94d
[NFC] Remove one dead PointerType::getElementType() call.
...
Reviewers: dblaikie, mjacob
Subscribers: llvm-commits, dblaikie
Patch by Eduard Burtescu.
Differential Revision: http://reviews.llvm.org/D16274
llvm-svn: 258022
2016-01-17 22:28:28 +00:00
Craig Topper
677a8c0da1
[TableGen] Keep a returned const reference instead of making a copy. NFC
...
llvm-svn: 258020
2016-01-17 20:38:21 +00:00
Craig Topper
6dbe9b8c99
[TableGen] Replace instructions() with getInstructionsByEnumValue(). No need to make an iterator_range when we already have a function that returns an ArrayRef. NFC
...
llvm-svn: 258019
2016-01-17 20:38:18 +00:00
Craig Topper
a7f2a9aef5
[TableGen] Return ArrayRef instead of a std::vector reference from getInstructionsByEnumValue(). NFC
...
llvm-svn: 258018
2016-01-17 20:38:14 +00:00
Craig Topper
f11bd508b4
[TableGen] Use std::find instead of a manual loop. NFC
...
llvm-svn: 258017
2016-01-17 19:51:14 +00:00
Sanjoy Das
aa011535f3
[IndVars] Fix PR25576
...
`LCSSASafePhiForRAUW` as computed was incorrect -- in cases like
these (this exact example does not actually trigger the bug):
define i32 @f(i32 %n, i1* %c) {
entry:
br label %outer.loop
outer.loop:
br label %inner.loop
inner.loop:
%iv = phi i32 [ 0, %outer.loop ], [ %iv.inc, %inner.loop ]
%iv.inc = add nuw nsw i32 %iv, 1
%tc = udiv i32 %n, 13
%be.cond = icmp ult i32 %iv, %tc
br i1 %be.cond, label %inner.loop, label %inner.exit
inner.exit:
%iv.lcssa = phi i32 [ %iv, %inner.loop ]
%outer.be.cond = load volatile i1, i1* %c
br i1 %outer.be.cond, label %outer.loop, label %leave
leave:
%iv.lcssa.lcssa = phi i32 [ %iv.lcssa, %inner.exit ]
ret i32 %iv.lcssa.lcssa
}
`LCSSASafePhiForRAUW` is true for `%iv.lcssa` when re-rewriting the exit
value of `%iv` for `%inner.loop` to `%tc` (this can happen due to
`SCEVExpander::findExistingExpansion`), but the RAUW breaks LCSSA.
To fix this, instead of computing `SafePhi` with special logic, decide
the safety of RAUW directly via `replacementPreservesLCSSAForm`.
llvm-svn: 258016
2016-01-17 18:12:52 +00:00
Sanjoy Das
2c8efc2a82
[IndVars] Use emplace_back; NFC
...
llvm-svn: 258015
2016-01-17 18:12:48 +00:00
Sanjoy Das
6416c4aa58
[SCEV] Use range for; NFC
...
llvm-svn: 258014
2016-01-17 18:12:45 +00:00
Simon Pilgrim
cfe1acc838
[X86][AVX512] Regenerate v1 shuffle tests
...
llvm-svn: 258013
2016-01-17 14:53:17 +00:00
Michael Zuckerman
65f549e895
[AVX512] adding AVXVBMI feature flag
...
The feature flag is for VPERMB,VPERMI2B,VPERMT2B and VPMULTISHIFTQB instructions.
More about the instruction can be found in:
hattps://software.intel.com/sites/default/files/managed/07/b7/319433-023.pdf
Differential Revision: http://reviews.llvm.org/D16190
llvm-svn: 258012
2016-01-17 13:42:12 +00:00
Artur Pilipenko
de18f1640e
Fix buildbot failure introduced by 258010. Remove local variables became unused.
...
llvm-svn: 258011
2016-01-17 12:59:40 +00:00
Artur Pilipenko
bb5abf9eb3
Push isDereferenceableAndAlignedPointer down into isSafeToLoadUnconditionally
...
Reviewed By: reames
Differential Revision: http://reviews.llvm.org/D16226
llvm-svn: 258010
2016-01-17 12:35:29 +00:00
Igor Breger
908122c363
AVX512: Use MemIntrinsicSDNode to implement load/store intrinsic.
...
Differential Revision: http://reviews.llvm.org/D16184
llvm-svn: 258009
2016-01-17 12:10:24 +00:00
Michael Zuckerman
04a3249a24
[AVX512] Adding VPERMW/D/Q VPERMPS/D Intrinsics
...
Differential Revision: http://reviews.llvm.org/D16189
llvm-svn: 258008
2016-01-17 11:33:29 +00:00
Craig Topper
dd4cad9576
[TableGen] Use a StringRef instead of creating a new std::string. It gets passed to a function that takes a StringRef anyway. NFC
...
llvm-svn: 258007
2016-01-17 08:47:02 +00:00
Michael Zuckerman
365c9dfcf3
[AVX512] Adding VPERMQ VPERMPD Intrinsics
...
Differential Revision: http://reviews.llvm.org/D16194
llvm-svn: 258006
2016-01-17 08:32:14 +00:00
Craig Topper
b87a77e698
[TableGen] Changes to AsmWriterEmitter to remove the CodeGenInstruction to AsmWriterInst map. NFC
...
Adds the corresponding CodeGenInstruction number to each AsmWriterInst. Then write all the operand uniqueing loops using the AsmWriterInst array and indices. Then use the CodeGenInstruction index to fill out the OpCodeInfo array.
llvm-svn: 258005
2016-01-17 08:05:33 +00:00
Craig Topper
280927f594
[TableGen] Use std::find instead of a manual loop. NFC
...
llvm-svn: 258004
2016-01-17 08:05:30 +00:00
Lang Hames
944463fffc
Remove some stale comments and fix a typo as suggested by David Blaikie in his
...
review of r257343.
Thanks Dave!
llvm-svn: 258002
2016-01-17 01:49:46 +00:00
Simon Atanasyan
8a2e38211d
[llvm-readobj][ELF] Teach llvm-readobj to show dynamic relocation in REL format
...
MIPS 32-bit ABI uses REL relocation record format to save dynamic
relocations. The patch teaches llvm-readobj to show dynamic relocations
in this format.
Differential Revision: http://reviews.llvm.org/D16114
llvm-svn: 258001
2016-01-16 22:40:09 +00:00
Simon Pilgrim
5698ba2abd
[X86][AVX] Enable extraction of upper 128-bit subvectors for 'half undef' shuffle lowering
...
Added support for the extraction of the upper 128-bit subvectors for lower/upper half undef shuffles if it would reduce the number of extractions/insertions or avoid loads of AVX2 permps/permd shuffle masks.
Minor follow up to D15477.
llvm-svn: 258000
2016-01-16 22:30:20 +00:00
Manuel Jacob
e6438acb66
GlobalValue: use getValueType() instead of getType()->getPointerElementType().
...
Reviewers: mjacob
Subscribers: jholewinski, arsenm, dsanders, dblaikie
Patch by Eduard Burtescu.
Differential Revision: http://reviews.llvm.org/D16260
llvm-svn: 257999
2016-01-16 20:30:46 +00:00
Simon Pilgrim
65330864cb
[X86][SSE] Added extra 'float3' consecutive load tests
...
llvm-svn: 257998
2016-01-16 19:53:33 +00:00
Manman Ren
efc840cd69
CXX_FAST_TLS calling convention: fix issue on x86-64.
...
%RBP can't be handled explicitly. We generate the following code:
pushq %rbp
movq %rsp, %rbp
...
movq %rbx, (%rbp) ## 8-byte Spill
where %rbp will be overwritten by the spilled value.
The fix is to let PEI handle %RBP.
PR26136
llvm-svn: 257997
2016-01-16 16:39:46 +00:00
Simon Pilgrim
530550f33c
[X86][SSE] Regenerated SSE4 CRC32 and v2i64 comparison tests
...
llvm-svn: 257996
2016-01-16 15:41:42 +00:00
Simon Pilgrim
886ec3f33e
[X86][AVX] Regenerated AVX tests
...
Updated i1 select, vector truncation and subvector extraction tests
llvm-svn: 257995
2016-01-16 15:25:02 +00:00
Dimitry Andric
89b23978ee
Similar to rL257663, remove function
keywords from export.sh and
...
tag.sh, since they are marked to be run with /bin/sh.
llvm-svn: 257994
2016-01-16 15:18:35 +00:00
Simon Pilgrim
01fb5769b9
[X86]AVX] Tidyup shift/splat tests
...
Missing comments, fixed bad word wrapping
llvm-svn: 257993
2016-01-16 15:13:58 +00:00
Simon Pilgrim
0775d1e714
[X86][SSE] Regenerated HADD/HSUB tests
...
llvm-svn: 257992
2016-01-16 14:03:40 +00:00
Igor Laevsky
1f8ac9245d
[BasicAliasAnalysis] Take into account operand bundles in the getModRefInfo function
...
Differential Revision: http://reviews.llvm.org/D16225
llvm-svn: 257991
2016-01-16 12:15:53 +00:00
George Rimar
2c81d923b3
Fixed CRLF->LF line endings from r257914. NFC.
...
llvm-svn: 257990
2016-01-16 10:38:32 +00:00
Davide Italiano
2af46a6b49
[llvm-readobj] Dump DT_RELACOUNT correctly.
...
llvm-svn: 257988
2016-01-16 06:06:36 +00:00