131982 Commits

Author SHA1 Message Date
Simon Pilgrim
12384d7415 [X86][SSE] Added constant index tests for 128-bit integer vector types
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269604 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 19:27:28 +00:00
Simon Pilgrim
04c3ec9f8d [X86][SSE] Added variable index tests for 128-bit integer vector types
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269603 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 19:12:39 +00:00
Simon Pilgrim
02d2d979c7 Fixed typo in test
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269602 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 18:50:22 +00:00
Sanjay Patel
f081becca9 add test to show missing optimization
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269601 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 18:41:18 +00:00
Simon Pilgrim
ec8eda6695 [X86][SSE] Added extra extractelement tests
Added constant index tests for all 256-bit integer vector types (touching lower / upper 128-bits)

Added variable index tests for all 256-bit integer vector types

Added out-of-range index tests for all 256-bit integer vector types

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269600 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 18:22:21 +00:00
Sanjay Patel
7f7fd2a1c8 regenerate checks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269596 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 18:05:10 +00:00
Simon Pilgrim
b6e1e95468 [X86][SSE] Regenerate extractelement tests
Added SSE2/AVX2 target tests

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269595 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 18:02:39 +00:00
Simon Pilgrim
78ba7287ef [CostModel][X86] Added scalar bitreverse tests
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269594 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 17:40:48 +00:00
Benjamin Kramer
95ce0c789b Move helper classes into anonymous namespaces. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269591 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 15:18:11 +00:00
Elena Demikhovsky
746e3cee24 Vector GEP - fixed a crash on InstSimplify Pass.
Vector GEP with mixed (vector and scalar) indices failed on the InstSimplify Pass when all indices are constants.

Differential revision http://reviews.llvm.org/D20149



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269590 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 12:30:25 +00:00
Davide Italiano
99d340ac17 [PM/SCCP] Fix pass dependencies.
TargetLibraryInfoWrapperPass is a dependency of
SCCP but it's not listed as such. Chandler pointed
out this is an easy mistake to make which only
surfaces in weird crashes with some flag combinations.
This code will go away anyway at some point in the
future, but as long as it's (still) exercised, try
to make it correct.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269589 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 08:04:28 +00:00
Mehdi Amini
27c044cbde ThinLTOCodeGenerator: fix race condition found using TSAN
From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269588 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 05:49:47 +00:00
Xinliang David Li
17b42bdb89 Rename pass name to prepare to new PM porting /NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269586 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-15 01:04:24 +00:00
Mehdi Amini
9b61d154fc Revert "Revert "Revert 220932.": "Removing the static initializer in ManagedStatic.cpp by using llvm_call_once to initialize the ManagedStatic mutex""
This reverts commit r269577.
Broke NetBSD, waiting for Kamil to investigate

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269584 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 23:44:21 +00:00
Davide Italiano
ba12203815 [PM] Add newline at the end of the file, for consistency. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269583 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 23:24:17 +00:00
Davide Italiano
d1aa4ea020 [PM] Refactor cross-registration of AM into an helper.
Requested by: Chandler Carruth.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269582 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 23:21:50 +00:00
Craig Topper
b776ae7788 [AVX512] Make the permd intrinsics take a 32-bit immediate to match the software spec.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269579 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 21:13:20 +00:00
Davide Italiano
4f31f3a2fd [SCCP] Use range-based for loops. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269578 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 20:59:09 +00:00
Mehdi Amini
e750cc1694 Revert "Revert 220932.": "Removing the static initializer in ManagedStatic.cpp by using llvm_call_once to initialize the ManagedStatic mutex"
This reverts commit r221331 and reinstate r220932 as discussed in D19271.
Original commit message was:

This patch adds an llvm_call_once which is a wrapper around
std::call_once on platforms where it is available and devoid
of bugs. The patch also migrates the ManagedStatic mutex to
be allocated using llvm_call_once.

These changes are philosophically equivalent to the changes
added in r219638, which were reverted due to a hang on Win32
which was the result of a bug in the Windows implementation
of std::call_once.

Differential Revision: http://reviews.llvm.org/D5922

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269577 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 20:55:52 +00:00
Saleem Abdulrasool
5ec105e613 ARM: support export directives for Windows
It seems that cl will emit the export directives for Windows ARM targets.  The
fact that it did this had originally been missed and this functionality was
never implemented.  This makes it possible to rely solely on the source code for
indicating what the exported interfaces are and brings us more compatibility
with cl.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269574 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 18:58:34 +00:00
Chad Rosier
dfe70bb564 [AArch64] Update local variable names to conform to coding standard. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269573 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 18:56:28 +00:00
Elena Demikhovsky
fbe3ed3cb9 Fixed lowering of _comi_ intrinsics from all sets - SSE/SSE2/AVX/AVX-512
Differential revision http://reviews.llvm.org/D19261



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269569 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 15:06:09 +00:00
Renato Golin
7e38263edc Revert "[llc] New diagnostic handler"
This reverts commit r269563. Even though now it passes all LLDB bots
after a local fix, there's a new buildbot it fails with tests that we
hadn't seen locally:

http://lab.llvm.org:8011/builders/clang-x86_64-linux-selfhost-modules/builds/15647

Adding those tests to the list to investigate.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269568 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 14:37:11 +00:00
NAKAMURA Takumi
92a36504fa Re-enable llvm/test/ThinLTO/X86/cache.ll.
This reverts;
  r269548, "XFAIL ThinLTO Caching test on Windows."
  r269561, "Rework r269548, "XFAIL ThinLTO Caching test on Windows.", not to use XFAIL, for now."

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269567 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 14:28:17 +00:00
Renato Golin
495123c113 [Docs] Add some requirements to the Testing Guide
Patch by Diana Picus.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269566 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 14:27:40 +00:00
NAKAMURA Takumi
46303d8ce6 CachePruning.cpp: Don't use errno.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269565 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 14:21:39 +00:00
Dima Stepanov
f9bb9034b0 Revert changes after test commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269564 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 13:29:52 +00:00
Renato Golin
2c05d88b8d [llc] New diagnostic handler
Without a diagnostic handler installed, llc's behaviour is to exit on the first
error that it encounters. This is very different from the behaviour of clang
and other front ends, which try to gather as many errors as possible before
exiting.

This commit adds a diagnostic handler to llc, allowing it to find and report
more than one error. The old behaviour is preserved under a flag (-exit-on-error).

Some of the tests fail with the new diagnostic handler, so they have to use the
new flag in order to run under the previous behaviour. Some of these are known
bugs, others need further investigation. Ideally, we should fix the tests and
remove the flag at some point in the future.

Reapplied after fixing the LLDB build that was broken due to the new
DiagnosticSeverity in LLVMContext.h.

Patch by Diana Picus.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269563 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 13:15:22 +00:00
NAKAMURA Takumi
44f77bce2b Rework r269548, "XFAIL ThinLTO Caching test on Windows.", not to use XFAIL, for now.
It was passing (and is XPASSing) with --host=linux --target=win32.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269561 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 12:47:40 +00:00
Daniel Sanders
26a1923567 [mips] Enable IAS by default for 32-bit MIPS targets (O32).
Summary:
The MIPS IAS can now pass 'ninja check-all', recurse, build a bootable linux
kernel, and pass a variety of LNT testing.

Unfortunately we can't enable it by default for 64-bit targets yet since the N32
ABI is still very buggy and this also means we can't enable it for N64 either
because we can't distinguish between N32 and N64 in the relevant code.

Reviewers: vkalintiris

Subscribers: cfe-commits

Differential Revision: http://reviews.llvm.org/D18759
Differential Revision: http://reviews.llvm.org/D18761



git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269560 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 12:43:08 +00:00
Dima Stepanov
195a459e2d Test commt: remove a blank line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269558 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 10:30:54 +00:00
NAKAMURA Takumi
b363ec418a llvm/Support/MachO.h: Fix warnings. [-Wpedantic]
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269555 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 08:00:11 +00:00
Mehdi Amini
6369bff7ed XFAIL ThinLTO Caching test on Windows.
I have no idea what's going on on Windows here.

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269548 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 05:38:58 +00:00
Chandler Carruth
2e531af53a Revert "Retry "[ProfileData] (llvm) Use Error in InstrProf and Coverage, NFC""
This reverts commit r269491. It triggers warnings with Clang, breaking
builds for -Werror users including several build bots.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269547 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 05:26:26 +00:00
Mehdi Amini
b01d46ba1c Add testing in llvm-lto for ThinLTO caching.
Trying to improve code coverage for `make check`

From: mehdi_amini <mehdi_amini@91177308-0d34-0410-b5e6-96231b3b80d8>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269545 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 05:16:41 +00:00
Mehdi Amini
9695fb5b85 ThinLTOCodeGenerator: handle cases where temporary files can't be renamed
For instance when they're on different filesystem.

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269544 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 05:16:35 +00:00
Mehdi Amini
68d85bb896 Revert "Add testing in llvm-lto for ThinLTO caching."
This reverts commit r269538 and r269542.
"rename()" is expected to fail across filesystems, will handle this.

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269543 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 05:07:44 +00:00
Mehdi Amini
a6723bb337 Increase verbosity in the test output to help debugging windows issues
From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269542 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 05:01:36 +00:00
Mehdi Amini
9c1ebe891f ThinLTOCodeGenerator: handle std::error_code instead of silently dropping it.
From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269541 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 04:58:38 +00:00
Mehdi Amini
77d5aec27e StripDebugInfo: uses isa<DbgInfoIntrinsic> instead of matching against llvm.dbg.* (NFC)
Suggested by Adrian. This is NFC right now but is more clean and
robust against future potential new debug info intrinsics.

From: mehdi_amini <mehdi_amini@91177308-0d34-0410-b5e6-96231b3b80d8>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269540 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 04:58:35 +00:00
Mehdi Amini
bdd5f696c0 Revert "StripDebugInfo: uses isa<DbgInfoIntrinsic> instead of matching against llvm.dbg.* (NFC)"
This reverts commit r269537, was not ready to be commited and went through by mistake

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269539 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 04:42:51 +00:00
Mehdi Amini
82d7fff155 Add testing in llvm-lto for ThinLTO caching.
Trying to improve code coverage for `make check`

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269538 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 04:41:26 +00:00
Mehdi Amini
3b492ee764 StripDebugInfo: uses isa<DbgInfoIntrinsic> instead of matching against llvm.dbg.* (NFC)
Suggested by Adrian. This is NFC right now but is more clean and
robust against future potential new debug info intrinsics.

From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269537 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 04:41:21 +00:00
Mehdi Amini
5787524256 Remove unwanted fprintf debug
From: Mehdi Amini <mehdi.amini@apple.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269536 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 04:41:14 +00:00
Craig Topper
597f8663a5 Revert r269534 "Silence a -Wundefined-var-template build warning." The bots didn't like that.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269535 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 03:59:25 +00:00
Craig Topper
4d9e38884a Silence a -Wundefined-var-template build warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269534 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 03:48:43 +00:00
Dan Gohman
c40a684451 [WebAssembly] Fix legalization of i128 shifts.
compiler-rt/libgcc shift routines expect the shift count to be an i32, so
use i32 as the shift count for shifts that are legalized to libcalls. This
also reverts r268991, now that the signatures are correct.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269531 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 02:15:47 +00:00
Craig Topper
59cfb9caf5 [AVX512] Fix types for pshufd intrinsics. The immediate is the second argument and the mask is the 4th argument. Also move the 128/256 tests to the right test file.
Prior to this the immediate was a strange 16-bits and the 512-bit intrinsic couldn't receive the full 16 mask bits it needs.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269526 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 00:47:18 +00:00
Derek Schuff
505ba6dd9a [WebAssembly] Update expected torture test failures
NFC; the waterfall just changed the way they are built.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269523 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 00:22:17 +00:00
Reid Kleckner
fed38e2afb [codeview] Add type stream merging prototype
Summary:
This code is intended to be used as part of LLD's PDB writing. Until
that exists, this is exposed via llvm-readobj for testing purposes.

Type stream merging uses the following algorithm:

- Begin with a new empty stream, and a new empty hash table that maps
  from type record contents to new type index.
- For each new type stream, maintain a map from source type index to
  destination type index.
- For each record, copy it and rewrite its type indices to be valid in
  the destination type stream.
- If the new type record is not already present in the destination
  stream hash table, append it to the destination type stream, assign it
  the next type index, and update the two hash tables.
- If the type record already exists in the destination stream, discard
  it and update the type index map to forward the source type index to
  the existing destination type index.

Reviewers: zturner, ruiu

Subscribers: llvm-commits

Differential Revision: http://reviews.llvm.org/D20122

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269521 91177308-0d34-0410-b5e6-96231b3b80d8
2016-05-14 00:02:53 +00:00