OSDN Git Service
Elena Demikhovsky [Sat, 14 May 2016 15:06:09 +0000 (15:06 +0000)]
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
Renato Golin [Sat, 14 May 2016 14:37:11 +0000 (14:37 +0000)]
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
NAKAMURA Takumi [Sat, 14 May 2016 14:28:17 +0000 (14:28 +0000)]
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
Renato Golin [Sat, 14 May 2016 14:27:40 +0000 (14:27 +0000)]
[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
NAKAMURA Takumi [Sat, 14 May 2016 14:21:39 +0000 (14:21 +0000)]
CachePruning.cpp: Don't use errno.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269565
91177308-0d34-0410-b5e6-
96231b3b80d8
Dima Stepanov [Sat, 14 May 2016 13:29:52 +0000 (13:29 +0000)]
Revert changes after test commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269564
91177308-0d34-0410-b5e6-
96231b3b80d8
Renato Golin [Sat, 14 May 2016 13:15:22 +0000 (13:15 +0000)]
[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
NAKAMURA Takumi [Sat, 14 May 2016 12:47:40 +0000 (12:47 +0000)]
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
Daniel Sanders [Sat, 14 May 2016 12:43:08 +0000 (12:43 +0000)]
[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
Dima Stepanov [Sat, 14 May 2016 10:30:54 +0000 (10:30 +0000)]
Test commt: remove a blank line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269558
91177308-0d34-0410-b5e6-
96231b3b80d8
NAKAMURA Takumi [Sat, 14 May 2016 08:00:11 +0000 (08:00 +0000)]
llvm/Support/MachO.h: Fix warnings. [-Wpedantic]
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269555
91177308-0d34-0410-b5e6-
96231b3b80d8
Mehdi Amini [Sat, 14 May 2016 05:38:58 +0000 (05:38 +0000)]
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
Chandler Carruth [Sat, 14 May 2016 05:26:26 +0000 (05:26 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 05:16:41 +0000 (05:16 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 05:16:35 +0000 (05:16 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 05:07:44 +0000 (05:07 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 05:01:36 +0000 (05:01 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 04:58:38 +0000 (04:58 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 04:58:35 +0000 (04:58 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 04:42:51 +0000 (04:42 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 04:41:26 +0000 (04:41 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 04:41:21 +0000 (04:41 +0000)]
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
Mehdi Amini [Sat, 14 May 2016 04:41:14 +0000 (04:41 +0000)]
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
Craig Topper [Sat, 14 May 2016 03:59:25 +0000 (03:59 +0000)]
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
Craig Topper [Sat, 14 May 2016 03:48:43 +0000 (03:48 +0000)]
Silence a -Wundefined-var-template build warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269534
91177308-0d34-0410-b5e6-
96231b3b80d8
Dan Gohman [Sat, 14 May 2016 02:15:47 +0000 (02:15 +0000)]
[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
Craig Topper [Sat, 14 May 2016 00:47:18 +0000 (00:47 +0000)]
[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
Derek Schuff [Sat, 14 May 2016 00:22:17 +0000 (00:22 +0000)]
[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
Reid Kleckner [Sat, 14 May 2016 00:02:53 +0000 (00:02 +0000)]
[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
Justin Bogner [Fri, 13 May 2016 23:55:59 +0000 (23:55 +0000)]
SDAG: Implement Select instead of SelectImpl in MipsDAGToDAGISel
- Where we were returning a node before, call ReplaceNode instead.
- Where we would return null to fall back to another selector, rename
the method to try* and return a bool for success.
- Where we were calling SelectNodeTo, just return afterwards.
Part of llvm.org/pr26808.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269519
91177308-0d34-0410-b5e6-
96231b3b80d8
Marcin Koscielnicki [Fri, 13 May 2016 23:55:33 +0000 (23:55 +0000)]
[MSan] [PowerPC] Implement PowerPC64 vararg helper.
Differential Revision: http://reviews.llvm.org/D20000
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269518
91177308-0d34-0410-b5e6-
96231b3b80d8
Justin Bogner [Fri, 13 May 2016 23:26:28 +0000 (23:26 +0000)]
SDAG: Clean up a dead node I missed earlier in X86
H.J. Lu pointed out that I missed this in r269236. Thanks!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269516
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Bieneman [Fri, 13 May 2016 23:01:22 +0000 (23:01 +0000)]
[MachO] More missing swapStruct implementations
Added swapStruct for ident_command, fvmlib and fvmlib_command.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269514
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Bieneman [Fri, 13 May 2016 23:01:19 +0000 (23:01 +0000)]
[MachO] Filling in some structs I missed in r269499
I missed the fvmlib_command and the sub_framework_command, as well as a few uses of the dylib_command, dylinker_command, and linkedit_data_command.
This should now be a pretty complete listing. The only case I'm not sure about is LC_PREPAGE which doesn't seem to be referenced directly anywhere in LLVM.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269513
91177308-0d34-0410-b5e6-
96231b3b80d8
Chad Rosier [Fri, 13 May 2016 22:53:13 +0000 (22:53 +0000)]
[AArch64] Simplify logic to reduce vertical space. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269512
91177308-0d34-0410-b5e6-
96231b3b80d8
Davide Italiano [Fri, 13 May 2016 22:52:35 +0000 (22:52 +0000)]
[PM] Port LowerAtomic to the new pass manager.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269511
91177308-0d34-0410-b5e6-
96231b3b80d8
Justin Bogner [Fri, 13 May 2016 22:49:18 +0000 (22:49 +0000)]
SDAG: Implement Select instead of SelectImpl in XCoreDAGToDAGISel
- Where we were returning a node before, call ReplaceNode instead.
- Where we would return null to fall back to another selector, rename
the method to try* and return a bool for success.
- Where we were calling SelectNodeTo, just return afterwards.
Part of llvm.org/pr26808.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269509
91177308-0d34-0410-b5e6-
96231b3b80d8
Adam Nemet [Fri, 13 May 2016 22:49:13 +0000 (22:49 +0000)]
[LAA] Include MaxSafeDepDistBytes in the analysis print-out
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269508
91177308-0d34-0410-b5e6-
96231b3b80d8
Adam Nemet [Fri, 13 May 2016 22:49:09 +0000 (22:49 +0000)]
[LAA] Prepare the code to print more things in the summary. NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269507
91177308-0d34-0410-b5e6-
96231b3b80d8
Justin Bogner [Fri, 13 May 2016 22:44:57 +0000 (22:44 +0000)]
SDAG: Implement Select instead of SelectImpl in WebAssemblyDAGToDAGISel
This backend doesn't do anything custom here yet, so we just modernize
the boilerplate.
Part of llvm.org/pr26808.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269506
91177308-0d34-0410-b5e6-
96231b3b80d8
Justin Bogner [Fri, 13 May 2016 22:42:08 +0000 (22:42 +0000)]
SDAG: Implement Select instead of SelectImpl in SystemZDAGToDAGISel
- Where we were returning a node before, call ReplaceNode instead.
- Where we would return null to fall back to another selector, rename
the method to try* and return a bool for success.
Part of llvm.org/pr26808.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269505
91177308-0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Fri, 13 May 2016 22:20:43 +0000 (22:20 +0000)]
Another attempt to fix MSVC by explicitly disabling the conversion
operator when the value type can't be initialized from the argument
type. Testing with the online MSVC compiler is finally happy with this,
let's see if the build bot will tolerate it.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269501
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Bieneman [Fri, 13 May 2016 22:12:44 +0000 (22:12 +0000)]
[MachO] Adding a few missing swapStruct functions
MachO.h was missing the swapStruct functions for a few load command structures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269499
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Bieneman [Fri, 13 May 2016 22:12:41 +0000 (22:12 +0000)]
[MachO] Adding struct field to MachO.def
This provides a mapping from load command names to the data structures.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269498
91177308-0d34-0410-b5e6-
96231b3b80d8
Kostya Serebryany [Fri, 13 May 2016 22:11:23 +0000 (22:11 +0000)]
[libFuzzer] do the merge faster and a bit less precise
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269497
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Fri, 13 May 2016 21:51:17 +0000 (21:51 +0000)]
use 'match' for less indenting; NFCI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269494
91177308-0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Fri, 13 May 2016 21:50:56 +0000 (21:50 +0000)]
Retry "[ProfileData] (llvm) Use Error in InstrProf and Coverage, NFC"
Transition InstrProf and Coverage over to the stricter Error/Expected
interface.
Changes since the initial commit:
- Fix error message printing in llvm-profdata.
- Check errors in loadTestingFormat() + annotateAllFunctions().
- Defer error handling in InstrProfIterator to InstrProfReader.
Differential Revision: http://reviews.llvm.org/D19901
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269491
91177308-0d34-0410-b5e6-
96231b3b80d8
Justin Bogner [Fri, 13 May 2016 21:46:22 +0000 (21:46 +0000)]
SDAG: Implement Select instead of SelectImpl in SparcDAGToDAGISel
- Where we were returning a node before, call ReplaceNode instead.
- Where we would return null to fall back to another selector, rename
the method to try* and return a bool for success.
- Where we were calling SelectNodeTo, just return afterwards.
Part of llvm.org/pr26808.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269490
91177308-0d34-0410-b5e6-
96231b3b80d8
Bruno Cardoso Lopes [Fri, 13 May 2016 21:31:32 +0000 (21:31 +0000)]
[Support][Unittests] Add unittest for recursive_directory_iterator::level()
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269488
91177308-0d34-0410-b5e6-
96231b3b80d8
Michael Zolotukhin [Fri, 13 May 2016 21:23:25 +0000 (21:23 +0000)]
Revert "Revert "[Unroll] Implement a conservative and monotonically increasing cost tracking system during the full unroll heuristic analysis that avoids counting any instruction cost until that instruction becomes "live" through a side-effect or use outside the...""
This reverts commit r269395.
Try to reapply with a fix from chapuni.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269486
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Fri, 13 May 2016 21:23:08 +0000 (21:23 +0000)]
fix documentation comments; NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269485
91177308-0d34-0410-b5e6-
96231b3b80d8
Rui Ueyama [Fri, 13 May 2016 21:21:53 +0000 (21:21 +0000)]
pdbdump: Print "Publics" stream.
Publics stream seems to contain information as to public symbols.
It actually contains a serialized hash table along with fixed-sized
headers. This patch is not complete. It scans only till the end of
the stream and dump the header information. I'll write code to
de-serialize the hash table later.
Reviewers: zturner
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D20256
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269484
91177308-0d34-0410-b5e6-
96231b3b80d8
Justin Bogner [Fri, 13 May 2016 21:12:53 +0000 (21:12 +0000)]
SDAG: Implement Select instead of SelectImpl in NVPTXDAGToDAGISel
- Where we were returning a node before, call ReplaceNode instead.
- Where we would return null to fall back to another selector, rename
the method to try* and return a bool for success.
Part of llvm.org/pr26808.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269483
91177308-0d34-0410-b5e6-
96231b3b80d8
Matthew Simpson [Fri, 13 May 2016 21:01:07 +0000 (21:01 +0000)]
Correct spelling in comment (NFC)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269482
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:34 +0000 (20:39 +0000)]
AMDGPU: Unify LowerGlobalAddress
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19794
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269481
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:31 +0000 (20:39 +0000)]
AMDGPU/R600: Fold global address operand
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19793
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269480
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:29 +0000 (20:39 +0000)]
AMDGPU/R600: Implement memory loads from constant AS
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19792
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269479
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:26 +0000 (20:39 +0000)]
AMDGPU/R600: Add support for emitting MCExpr
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19791
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269478
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:24 +0000 (20:39 +0000)]
AMDGPU: Add support for MCExpr to instruction printer
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19790
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269477
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:22 +0000 (20:39 +0000)]
AMDGPU/R600: Use machine operands instead of ints to track literals
This will be used for global addresses
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19789
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269476
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:20 +0000 (20:39 +0000)]
AMDGPU/R600: There are other uses for ALU_LITERAL besides Imm
This will be used for GV
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19788
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269475
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:18 +0000 (20:39 +0000)]
AMDGPU: Make CONST_DATA_PTR available to R600
Rename to AMDGPUconstdata_ptr
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19786
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269474
91177308-0d34-0410-b5e6-
96231b3b80d8
Jan Vesely [Fri, 13 May 2016 20:39:16 +0000 (20:39 +0000)]
AMDGPU/EG,CM: Add instruction to read from constant AS (VTX2)
Reviewers: tstellard
Subscribers: arsenm
Differential Revision: http://reviews.llvm.org/D19785
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269473
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Fri, 13 May 2016 20:24:53 +0000 (20:24 +0000)]
use range-loops; NFCI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269471
91177308-0d34-0410-b5e6-
96231b3b80d8
Steven Wu [Fri, 13 May 2016 20:10:51 +0000 (20:10 +0000)]
Disable test from r269436 on unsupported platforms
Fixing bots failure. test/ExecutionEngine/RuntimeDyld/SystemZ/cfi-relo-pc64.s
requires SystemZ backend. Mark the test as unsupported if the backend is not
available.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269470
91177308-0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Fri, 13 May 2016 20:09:39 +0000 (20:09 +0000)]
Revert "(HEAD -> master, origin/master, origin/HEAD) [ProfileData] (llvm) Use Error in InstrProf and Coverage, NFC"
This reverts commit r269462. It fails two llvm-profdata tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269466
91177308-0d34-0410-b5e6-
96231b3b80d8
Vedant Kumar [Fri, 13 May 2016 20:01:27 +0000 (20:01 +0000)]
[ProfileData] (llvm) Use Error in InstrProf and Coverage, NFC
Transition InstrProf and Coverage over to the stricter Error/Expected
interface.
Differential Revision: http://reviews.llvm.org/D19901
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269462
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Kleckner [Fri, 13 May 2016 19:37:07 +0000 (19:37 +0000)]
[codeview] Align class and print names of types
Summary: This way we can get rid of one of the fields in the .def file.
Reviewers: llvm-commits
Subscribers: zturner
Differential Revision: http://reviews.llvm.org/D20251
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269461
91177308-0d34-0410-b5e6-
96231b3b80d8
Tim Northover [Fri, 13 May 2016 19:16:14 +0000 (19:16 +0000)]
ARM: use callee-saved list in the order they're actually saved.
When setting the frame pointer, the offset from SP is calculated based on the
stack slot it gets allocated, but this slot is in turn based on the order of
the CSR list so that list should match the order we actually save the registers
in. Mostly it did, but in the edge-case of MachO AAPCS targets it was wrong.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269459
91177308-0d34-0410-b5e6-
96231b3b80d8
Krzysztof Parzyszek [Fri, 13 May 2016 18:48:15 +0000 (18:48 +0000)]
[Hexagon] Remove dead nodes from SelectionDAG to avoid cycles
Recent changes to the instruction selection code exposed a problem where
a dead node was not removed on time. This node had both input and output
chains, which lead to an apparent cycle.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269458
91177308-0d34-0410-b5e6-
96231b3b80d8
Jun Bum Lim [Fri, 13 May 2016 18:38:35 +0000 (18:38 +0000)]
Rename getLargestLegalIntTypeSize to getLargestLegalIntTypeSizeInBits(). NFC.
Summary: Rename DataLayout::getLargestLegalIntTypeSize to DataLayout::getLargestLegalIntTypeSizeInBits() to prevent similar mistakes fixed in r269433.
Reviewers: joker.eph, mcrosier
Subscribers: mcrosier, llvm-commits
Differential Revision: http://reviews.llvm.org/D20248
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269456
91177308-0d34-0410-b5e6-
96231b3b80d8
Konstantin Zhuravlyov [Fri, 13 May 2016 18:21:28 +0000 (18:21 +0000)]
[AMDGPU] Update nop insertion for debugger usage
- Insert one nop for each high level statement instead of two
- Do not insert nop before prologue
Differential Revision: http://reviews.llvm.org/D20215
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269452
91177308-0d34-0410-b5e6-
96231b3b80d8
Renato Golin [Fri, 13 May 2016 18:19:42 +0000 (18:19 +0000)]
Revert "[ARM,AArch64] NFC. Add extra test cases for bswap lowering."
This reverts commit r269425, as it fails on Windows (Thumb only).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269451
91177308-0d34-0410-b5e6-
96231b3b80d8
Kostya Serebryany [Fri, 13 May 2016 18:10:33 +0000 (18:10 +0000)]
[libFuzzer] print the file name before executing the input so that if there is a crash we know which files has caused it
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269450
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Fri, 13 May 2016 18:04:39 +0000 (18:04 +0000)]
regenerate checks and add a run to show missed shrinkage
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269449
91177308-0d34-0410-b5e6-
96231b3b80d8
Kostya Serebryany [Fri, 13 May 2016 18:04:35 +0000 (18:04 +0000)]
[libFuzzer] simplify FuzzerInterface.h
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269448
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Fri, 13 May 2016 18:02:16 +0000 (18:02 +0000)]
regenerate checks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269447
91177308-0d34-0410-b5e6-
96231b3b80d8
Paul Osmialowski [Fri, 13 May 2016 18:00:09 +0000 (18:00 +0000)]
add support for -print-imm-hex for AArch64
Most immediates are printed in Aarch64InstPrinter using 'formatImm' macro,
but not all of them.
Implementation contains following rules:
- floating point immediates are always printed as decimal
- signed integer immediates are printed depends on flag settings
(for negative values 'formatImm' macro prints the value as i.e -0x01
which may be convenient when imm is an address or offset)
- logical immediates are always printed as hex
- the 64-bit immediate for advSIMD, encoded in "a:b:c:d:e:f:g:h" is always printed as hex
- the 64-bit immedaite in exception generation instructions like:
brk, dcps1, dcps2, dcps3, hlt, hvc, smc, svc is always printed as hex
- the rest of immediates is printed depends on availability
of -print-imm-hex
Signed-off-by: Maciej Gabka <maciej.gabka@arm.com>
Signed-off-by: Paul Osmialowski <pawel.osmialowski@arm.com>
Differential Revision: http://reviews.llvm.org/D16929
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269446
91177308-0d34-0410-b5e6-
96231b3b80d8
Geoff Berry [Fri, 13 May 2016 17:54:58 +0000 (17:54 +0000)]
[EarlyCSE] Change key type of AvailableCalls to Instruction*. NFCI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269445
91177308-0d34-0410-b5e6-
96231b3b80d8
Reid Kleckner [Fri, 13 May 2016 17:48:24 +0000 (17:48 +0000)]
[codeview] Dump the type index on the first line of each record
This will make it easier to write FileCheck tests.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269444
91177308-0d34-0410-b5e6-
96231b3b80d8
Chris Bieneman [Fri, 13 May 2016 17:41:41 +0000 (17:41 +0000)]
[obj2yaml] [yaml2obj] Basic support for MachO::load_command
This patch adds basic support for MachO::load_command. Load command types and sizes are encoded in the YAML and expanded back into MachO.
The YAML doesn't yet support load command structs, that is coming next. In the meantime as a temporary measure when writing MachO files the load commands are padded with zeros so that the generated binary is valid.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269442
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Fri, 13 May 2016 17:28:12 +0000 (17:28 +0000)]
[InstCombine] handle zero constant vectors for LE/GE comparisons too
Enhancement to: http://reviews.llvm.org/rL269426
With discussion in: http://reviews.llvm.org/D17859
This should complete the fixes for: PR26701, PR26819:
https://llvm.org/bugs/show_bug.cgi?id=26701
https://llvm.org/bugs/show_bug.cgi?id=26819
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269439
91177308-0d34-0410-b5e6-
96231b3b80d8
Richard Smith [Fri, 13 May 2016 17:27:08 +0000 (17:27 +0000)]
Update module map for r269380.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269438
91177308-0d34-0410-b5e6-
96231b3b80d8
Rong Xu [Fri, 13 May 2016 17:26:06 +0000 (17:26 +0000)]
[PGO] Add flags to control IRPGO warnings.
Currently there is no reasonable way to control the warnings in the 'use' phase
of the IRPGO pass. This is problematic because the output can be somewhat
spammy. This patch adds some flags which allow us to optionally disable these
warnings. The current upstream behavior will remain the default.
Patch by Jake VanAdrighem (jvanadrighem@gmail.com)
Differential Revision: http://reviews.llvm.org/D20195
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269437
91177308-0d34-0410-b5e6-
96231b3b80d8
Bryan Chan [Fri, 13 May 2016 17:23:48 +0000 (17:23 +0000)]
[RuntimeDyld] Support R_390_PC64 relocation type
Summary: When the MCJIT generates ELF code, some DWARF data requires 64-bit PC-relative relocation (R_390_PC64). This patch adds support for R_390_PC64 relocation to RuntimeDyld::resolveSystemZRelocation, to avoid an assertion failure.
Reviewers: uweigand
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D20033
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269436
91177308-0d34-0410-b5e6-
96231b3b80d8
Jun Bum Lim [Fri, 13 May 2016 16:52:24 +0000 (16:52 +0000)]
[MemCpyOpt] Use MaxIntSize in byte instead of bit
Summary: This change fix the bug in isProfitableToUseMemset() where MaxIntSize shoule be in byte, not bit.
Reviewers: arsenm, joker.eph, mcrosier
Subscribers: mcrosier, llvm-commits
Differential Revision: http://reviews.llvm.org/D20176
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269433
91177308-0d34-0410-b5e6-
96231b3b80d8
Renato Golin [Fri, 13 May 2016 16:02:44 +0000 (16:02 +0000)]
Revert "[llc] New diagnostic handler"
This reverts commit r269428, as it breaks the LLDB build. We need to
understand how to change LLDB in the same way as LLC before landing this
again.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269432
91177308-0d34-0410-b5e6-
96231b3b80d8
Renato Golin [Fri, 13 May 2016 15:37:46 +0000 (15:37 +0000)]
[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.
Patch by Diana Picus.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269428
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Fri, 13 May 2016 15:10:46 +0000 (15:10 +0000)]
[InstCombine] canonicalize* LE/GE vector integer comparisons to LT/GT (PR26701, PR26819)
*We don't currently handle the edge case constants (min/max values), so it's not a complete
canonicalization.
To fully solve the motivating bugs, we need to enhance this to recognize a zero vector
too because that's a ConstantAggregateZero which is a ConstantData, not a ConstantVector
or a ConstantDataVector.
Differential Revision: http://reviews.llvm.org/D17859
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269426
91177308-0d34-0410-b5e6-
96231b3b80d8
Renato Golin [Fri, 13 May 2016 15:10:24 +0000 (15:10 +0000)]
[ARM,AArch64] NFC. Add extra test cases for bswap lowering.
These tests were sitting in Phab for many months. They're good tests and should be in.
Patch by Charlie Turner.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269425
91177308-0d34-0410-b5e6-
96231b3b80d8
Silviu Baranga [Fri, 13 May 2016 14:54:50 +0000 (14:54 +0000)]
[scan-build] fix warnings emiited on LLVM Analysis code base
Fix "Logic error" warnings of the type "Called C++ object pointer is
null" reported by Clang Static Analyzer on the following files:
lib/Analysis/ScalarEvolution.cpp,
lib/Analysis/LoopInfo.cpp.
Patch by Apelete Seketeli!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269424
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Fri, 13 May 2016 14:47:55 +0000 (14:47 +0000)]
[X86][AVX512] Moved CHECKs inside functions to stop update_llc_test_checks going haywire
I'm not going to regenerate these anytime soon but do have some diffs to apply that I'd like to do with update_llc_test_checks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269420
91177308-0d34-0410-b5e6-
96231b3b80d8
Krzysztof Parzyszek [Fri, 13 May 2016 13:13:59 +0000 (13:13 +0000)]
[scan-build] fix dead store warnings emitted on LLVM Hexagon code base
Patch by Apelete Seketeli.
Differential Revision: http://reviews.llvm.org/D19900
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269415
91177308-0d34-0410-b5e6-
96231b3b80d8
Krzysztof Parzyszek [Fri, 13 May 2016 13:01:19 +0000 (13:01 +0000)]
[MIB] Create a helper function getRegState to extract all register flags
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269414
91177308-0d34-0410-b5e6-
96231b3b80d8
Amjad Aboud [Fri, 13 May 2016 12:46:57 +0000 (12:46 +0000)]
Assure calling "cld" instruction in prologue of X86 interrupt handler function.
Differential Revision: http://reviews.llvm.org/D18725
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269413
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Sanders [Fri, 13 May 2016 12:07:14 +0000 (12:07 +0000)]
[mips][ias] Work around yet another incorrect microMIPS relocation evaluation exposed by r268900.
It's not entirely clear why R_MICROMIPS_(GOT|HI16|LO16) are evaluated
incorrectly in a small number of the LNT tests at this point. However, it's not
related to the STO_MIPS_MICROMIPS issue.
At this point all the microMIPS-related changes of r268900 have been reverted.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269410
91177308-0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Fri, 13 May 2016 11:39:37 +0000 (11:39 +0000)]
Yet another attempt to appease MSVC...
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269409
91177308-0d34-0410-b5e6-
96231b3b80d8
Hrvoje Varga [Fri, 13 May 2016 11:32:53 +0000 (11:32 +0000)]
[mips][microMIPS] Implement APPEND, BPOSGE32C, MODSUB, MULSA.W.PH and MULSAQ_S.W.PH instructions
Differential Revision: http://reviews.llvm.org/D14117
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269408
91177308-0d34-0410-b5e6-
96231b3b80d8
Chandler Carruth [Fri, 13 May 2016 10:55:23 +0000 (10:55 +0000)]
Try to fix MSVC by explicitly providing copy and move constructors so it
doesn't try to use the converting constructor template for those
operations.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269406
91177308-0d34-0410-b5e6-
96231b3b80d8
Daniel Sanders [Fri, 13 May 2016 10:23:04 +0000 (10:23 +0000)]
[llvm-mc-fuzzer] Use LLVMFuzzerInitialize() instead of a custom main() and FuzzerDriver()
Reviewers: kcc
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D20201
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@269405
91177308-0d34-0410-b5e6-
96231b3b80d8