Rafael Espindola [Tue, 17 Feb 2015 23:21:46 +0000 (23:21 +0000)]
Add a test showing the problem in r228939.
If an EH table is printed in between the function and the jump table we would
fail to switch back to the text section to print the jump table.
llvm-svn: 229580
Duncan P. N. Exon Smith [Tue, 17 Feb 2015 23:10:13 +0000 (23:10 +0000)]
IR: Add missing clone() overloads
Add missing specialized node overloads for `MDNode::clone()` (they were
on most of the node types already, but missing from the others).
`MDNode::clone()` returns `TempMDNode` (`std::unique_ptr<MDNode,...>`),
while `TempMDSubrange::clone()` (for example) returns the more
convenient `TempMDSubrange` (`std::unique_ptr<TempMDSubrange,...>`).
llvm-svn: 229579
Oleksiy Vyalov [Tue, 17 Feb 2015 22:57:56 +0000 (22:57 +0000)]
Make PlatformPOSIX::KillProcess to delegate to a remote platform if connected.
http://reviews.llvm.org/D7660
llvm-svn: 229577
Reid Kleckner [Tue, 17 Feb 2015 22:40:42 +0000 (22:40 +0000)]
clang-cl: Disable frame pointer elimination at -O0
This wasn't kicking in because the _SLASH_O flag didn't match our check
for OPT_O0. Add an alias that does to keep the logic simple.
llvm-svn: 229575
Sanjay Patel [Tue, 17 Feb 2015 22:38:06 +0000 (22:38 +0000)]
rename variables again because these tables also deal with stores; NFC
Suggestion by Simon Pilgrim
llvm-svn: 229574
Duncan P. N. Exon Smith [Tue, 17 Feb 2015 22:34:15 +0000 (22:34 +0000)]
IR: fieldIsMDNode() should be false for MDString
Simplify the code. It has been a while since the schema has been so
"flexible".
llvm-svn: 229573
Duncan P. N. Exon Smith [Tue, 17 Feb 2015 22:30:56 +0000 (22:30 +0000)]
AsmPrinter: Take range in DwarfExpression::AddExpression(), NFC
Previously `DwarfExpression::AddExpression()` relied on
default-constructing the end iterators for `DIExpression` -- once the
operands are represented explicitly via `MDExpression` (instead of via
the strange `StringRef` navigator in `DIHeaderIterator`) this won't
work. Explicitly take an iterator for the end of the range.
llvm-svn: 229572
Simon Pilgrim [Tue, 17 Feb 2015 22:24:32 +0000 (22:24 +0000)]
[X86][SSE] Generalised unpckl/unpckh shuffle matching
Added commuted unpckl/unpckh shuffle matching patterns as many cases containing undefined lanes fail to commute by themselves.
Differential Revision: http://reviews.llvm.org/D7564
llvm-svn: 229571
Reid Kleckner [Tue, 17 Feb 2015 22:22:20 +0000 (22:22 +0000)]
WinASan: Fix escaping in dll_host.cc test to work with internal shell
llvm-svn: 229570
Zachary Turner [Tue, 17 Feb 2015 22:20:29 +0000 (22:20 +0000)]
[CMake] Create a custom target for generating extension module.
Previously we would create the extension module as a post-build
step of creating liblldb. As part of this process, we created
symlinks and did other stuff.
This had several longstanding issues related to target
dependencies, such as not re-creating the symlink if liblldb.dll
failed to link, or if the build was Ctrl+C'ed from.
Then, the script that creates the symlinks began to grow to
include other things, such as argdumper, and it would try to
create symlinks before it had finished building the targets it
needed to symlink to.
This patches addresses all of these problems by creating an
explicit target for the script to run, and making it have a
dependency on all the targets it needs to create symlinks from/to.
llvm-svn: 229569
Zachary Turner [Tue, 17 Feb 2015 22:20:20 +0000 (22:20 +0000)]
Remove the CMake duplication for liblldb.
Previously the CMake had a lot of duplication for the public API
due to some differences regarding how we link on Windows. This
fixes the issue, so making changes to the public API should be
much easier now.
llvm-svn: 229568
Sanjay Patel [Tue, 17 Feb 2015 22:09:54 +0000 (22:09 +0000)]
Add comment to explain a non-obvious setting; NFC.
This is paraphrased from Simon Pilgrim's comment in:
http://reviews.llvm.org/D7492
llvm-svn: 229566
Sanjay Patel [Tue, 17 Feb 2015 21:59:54 +0000 (21:59 +0000)]
use a triple instead of a cpu; less builbot sadness
llvm-svn: 229563
Reid Kleckner [Tue, 17 Feb 2015 21:57:42 +0000 (21:57 +0000)]
Silence an MSVC warning about testing a function for truth without calling it
In general, this is a reasonable warning, except real_pthread_create is
weak and can be null. The existing usage is correct as it the function
is declared with SANITIZER_WEAK, but MSVC can't know that because it is
defined to nothing on Windows.
llvm-svn: 229562
Reid Kleckner [Tue, 17 Feb 2015 21:57:10 +0000 (21:57 +0000)]
Use lit's internal shell when running tests on Windows
The internal shell is faster and more predictable than any copy of
bash.exe on the user's system.
LLVM and Clang use the internal shell by default, and have an
environment variable to disable it. I don't think compiler-rt needs that
complexity, so I left it out.
llvm-svn: 229560
Sanjay Patel [Tue, 17 Feb 2015 21:55:20 +0000 (21:55 +0000)]
remove function names from comments; NFC
llvm-svn: 229558
Benjamin Kramer [Tue, 17 Feb 2015 21:55:18 +0000 (21:55 +0000)]
Sema: Replace some push_backs of expensive to move objects with emplace_back.
NFC.
llvm-svn: 229557
Alexey Samsonov [Tue, 17 Feb 2015 21:53:45 +0000 (21:53 +0000)]
Remove support for building sanitizers from Makefile/autoconf build.
They autotools build has a number of missing features, supports less
OS, architectures, build configurations, doesn't have any tests and
is hard to support in sync with CMake build.
llvm-svn: 229556
Alexey Samsonov [Tue, 17 Feb 2015 21:53:22 +0000 (21:53 +0000)]
Remove support for building sanitizers from Makefile/autoconf build.
They autotools build has a number of missing features, supports less
OS, architectures, build configurations, doesn't have any tests and
is hard to support in sync with CMake build.
llvm-svn: 229554
Gabor Horvath [Tue, 17 Feb 2015 21:45:38 +0000 (21:45 +0000)]
[clang-tidy] Fixed two wrong fix-it cases in misc-inefficient-algorithm checker.
llvm-svn: 229552
Meador Inge [Tue, 17 Feb 2015 21:42:45 +0000 (21:42 +0000)]
Revert r229543.
Reverting this while build bot failures are investigated.
llvm-svn: 229550
Sanjay Patel [Tue, 17 Feb 2015 21:37:28 +0000 (21:37 +0000)]
replace meaningless variable names; NFCI
llvm-svn: 229549
Kevin Enderby [Tue, 17 Feb 2015 21:35:48 +0000 (21:35 +0000)]
Add code to llvm-objdump so the -section option with -macho will dump literal pointer sections
with the Mach-O S_LITERAL_POINTERS section type.
Also fix the printing of the leading addresses for literal sections to be consistent and
not print the 0x prefix. Updated test cases to match.
llvm-svn: 229548
Justin Bogner [Tue, 17 Feb 2015 21:33:43 +0000 (21:33 +0000)]
Re-apply "InstrProf: Use a test fixture in the coverage mapping tests"
This time we use a helper to format the assertion so we can just use
ASSERT_TRUE instead of relying on ASSERT_EQ being able to deal with
conversions between enum types.
This reverts r229496, re-applying r229473.
llvm-svn: 229547
Meador Inge [Tue, 17 Feb 2015 21:02:56 +0000 (21:02 +0000)]
Sema: Allow 'constexpr' variables in range loops
This fixes PR22492, which is in response to CWG issue #1204.
Per the CWG issue 'contexpr' variables are now allowed in
for range loops.
llvm-svn: 229543
Rafael Espindola [Tue, 17 Feb 2015 20:50:39 +0000 (20:50 +0000)]
Add testcases I missed in r229541.
llvm-svn: 229542
Rafael Espindola [Tue, 17 Feb 2015 20:48:01 +0000 (20:48 +0000)]
Add r228980 back.
Add support for having multiple sections with the same name and comdat.
Using this in combination with -ffunction-sections allows LLVM to output a .o
file with mulitple sections named .text. This saves space by avoiding long
unique names of the form .text.<C++ mangled name>.
llvm-svn: 229541
John Thompson [Tue, 17 Feb 2015 20:43:47 +0000 (20:43 +0000)]
Add canonical path conversion function and use it so paths are consistent.
llvm-svn: 229540
Rafael Espindola [Tue, 17 Feb 2015 20:40:59 +0000 (20:40 +0000)]
Add r228889 back.
Original message:
Invert the section relocation map.
It now points from rel section to section. Use it to set sh_info, avoiding
a brittle name lookup.
llvm-svn: 229539
Rafael Espindola [Tue, 17 Feb 2015 20:37:50 +0000 (20:37 +0000)]
Add r228888 back.
Original message:
Use the existing SymbolTableIndex instead of doing a lookup. NFC.
llvm-svn: 229538
Rafael Espindola [Tue, 17 Feb 2015 20:31:13 +0000 (20:31 +0000)]
Add r228886 back now that r229530 fixed the issue lldb was hitting.
Original message:
Create the Seciton -> Rel Section map when it is first needed. NFC.
Saves a walk over every section.
llvm-svn: 229536
Sanjay Patel [Tue, 17 Feb 2015 20:29:31 +0000 (20:29 +0000)]
make basic block label matching more flexible for less sad buildbots
llvm-svn: 229535
Tom Stellard [Tue, 17 Feb 2015 20:11:54 +0000 (20:11 +0000)]
R600/SI: Fix asam errors in SIFoldOperands
We were trying to fold into implicit uses, which led to out of bounds
access of the MCInstrDesc::OpInfo arrray.
llvm-svn: 229533
Nico Weber [Tue, 17 Feb 2015 20:09:39 +0000 (20:09 +0000)]
Remove a recovery attempt that was untested and crashed when used.
Found by SLi's bot.
llvm-svn: 229532
Sanjay Patel [Tue, 17 Feb 2015 20:08:21 +0000 (20:08 +0000)]
prevent folding a scalar FP load into a packed logical FP instruction (PR22371)
Change the memory operands in sse12_fp_packed_scalar_logical_alias from scalars to vectors.
That's what the hardware packed logical FP instructions define: 128-bit memory operands.
There are no scalar versions of these instructions...because this is x86.
Generating the wrong code (folding a scalar load into a 128-bit load) is still possible
using the peephole optimization pass and the load folding tables. We won't completely
solve this bug until we either fix the lowering in fabs/fneg/fcopysign and any other
places where scalar FP logic is created or fix the load folding in foldMemoryOperandImpl()
to make sure it isn't changing the size of the load.
Differential Revision: http://reviews.llvm.org/D7474
llvm-svn: 229531
Rafael Espindola [Tue, 17 Feb 2015 20:07:28 +0000 (20:07 +0000)]
Don't deference the section_end() iterator.
Hard to test given the undefined behavior nature.
llvm-svn: 229530
Reid Kleckner [Tue, 17 Feb 2015 20:02:34 +0000 (20:02 +0000)]
Expose LLVM_VERSION_PATCH in llvm-config.h
There was no reason to keep this private in config.h, and users
requested that it be available in PR22615.
Also fix a bug where patch versions of '0' would cause the macro to
remain undefined. The "#cmakedefine" command only creates a macro if the
named variable would be considered true in the context of an if().
llvm-svn: 229529
Eric Christopher [Tue, 17 Feb 2015 20:02:32 +0000 (20:02 +0000)]
Make the ARM AsmPrinter independent of global subtarget
initialization. Initialize the subtarget once per function and
migrate Emit{Start|End}OfAsmFile to either use attributes on the
TargetMachine or get information from the subtarget we'd use
for assembling. One bit (getISAEncoding) touched the general
AsmPrinter and the debug output. Handle this one by passing
the function for the subprogram down and updating all callers
and users.
The top-level-ness of the ARM attribute output for assembly is,
by nature, contrary to how we'd want to do this for an LTO
situation where we have multiple cpu architectures so this
solution is good enough for now.
llvm-svn: 229528
Eric Christopher [Tue, 17 Feb 2015 20:02:28 +0000 (20:02 +0000)]
80-column fixups.
llvm-svn: 229527
Eric Christopher [Tue, 17 Feb 2015 19:51:15 +0000 (19:51 +0000)]
Remove the ABI from the target features. It's obsoleted by
the -target-abi use and those features don't exist anymore.
llvm-svn: 229526
Colin LeMahieu [Tue, 17 Feb 2015 19:46:23 +0000 (19:46 +0000)]
[MC] Constifying MCInst::size()
llvm-svn: 229524
Zachary Turner [Tue, 17 Feb 2015 19:36:25 +0000 (19:36 +0000)]
Add LLDB_API to all of the public API class definitions.
You cannot export a class from a DLL without this on
Windows, so it was causing lldb-mi to fail to link
after recent changes.
Please make sure to include this at the start of every
public type in the future.
llvm-svn: 229523
Adrian Prantl [Tue, 17 Feb 2015 19:17:56 +0000 (19:17 +0000)]
Add a testcase that exercises DIBuilder's handling of cyclic debug info nodes.
rdar://problem/
19839612
llvm-svn: 229522
Adrian Prantl [Tue, 17 Feb 2015 19:17:39 +0000 (19:17 +0000)]
DIBuilder: add trackIfUnresolved() to all nodes that may be cyclic.
Tested in clang/test/CodeGenObjCCXX/debug-info-cyclic.mm
rdar://problem/
19839612
llvm-svn: 229521
Simon Atanasyan [Tue, 17 Feb 2015 18:54:22 +0000 (18:54 +0000)]
[Object] Support reading 64-bit MIPS ELF archives
The 64-bit MIPS ELF archive file format is used by MIPS64 targets.
The main difference from a regular archive file is the symbol table format:
1. ar_name is equal to "/SYM64/"
2. number of symbols and offsets are 64-bit integers
http://techpubs.sgi.com/library/manuals/4000/007-4658-001/pdf/007-4658-001.pdf
Page 96
The patch allows reading of such archive files by llvm-nm, llvm-objdump
and other tools. But it does not support archive files with number of symbols
and/or offsets exceed 2^32. I think it is a rather rare case requires more
significant modification of `Archive` class code.
http://reviews.llvm.org/D7546
llvm-svn: 229520
Alexey Samsonov [Tue, 17 Feb 2015 18:50:30 +0000 (18:50 +0000)]
[LSan] Make parent tool responsible for initializing LSan flags.
Summary:
LSan can be combined with a parent tool (for now it's only ASan).
Also, we allow LSAN_OPTIONS to override certain common flags. It means
we have to parse LSAN_OPTIONS early enough, before the rest of the
parent tool (including chunks of sanitizer_common) is initialized.
In future, we can use the same approach for UBSan, after we embed it
into ASan runtime in a similar way.
Test Plan: regression test suite
Reviewers: earthdok, eugenis
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D7577
llvm-svn: 229519
Dimitry Andric [Tue, 17 Feb 2015 18:27:39 +0000 (18:27 +0000)]
Remove inclusion of netinet/ip_compat.h for FreeBSD. This header is not
always available, and nothing in sanitizer_platform_limits_posix.cc uses
any of its definitions.
See also: https://svnweb.freebsd.org/changeset/base/277201
Reviewers: kcc, kutuzov.viktor.84, samsonov
Reviewed By: samsonov
Differential Revision: http://reviews.llvm.org/D7486
llvm-svn: 229518
Ilia K [Tue, 17 Feb 2015 18:25:27 +0000 (18:25 +0000)]
Fix argdumper build in cmake (OS X) after r228636
Previos version of this patch (see r229148) contained two errors:
* make_symlink_darwin_debug passes 2 arguments into make_symlink, but it required 4 arguments (was fixed by r229159)
* make_symlink doesn't work on OS X
As a quick fix, the r229148 and the r229159 were reverted. Now these errors are fixed.
Summary:
This patch fixes the following tests on OS X:
```
FAIL: test_with_dsym (TestLaunchWithGlob.LaunchWithGlobTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/lldbtest.py", line 456, in wrapper
return func(self, *args, **kwargs)
File "/Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/functionalities/launch_with_glob/TestLaunchWithGlob.py", line 21, in test_with_dsym
self.do_test ()
File "/Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/functionalities/launch_with_glob/TestLaunchWithGlob.py", line 42, in do_test
self.runCmd("process launch -G true -w %s -- fi*.tx?" % (os.getcwd()))
File "/Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/lldbtest.py", line 1953, in runCmd
msg if msg else CMD_MSG(cmd))
AssertionError: False is not True : Command 'process launch -G true -w /Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/functionalities/launch_with_glob -- fi*.tx?' returns successfully
Config=x86_64-clang
======================================================================
FAIL: test_with_dwarf (TestLaunchWithGlob.LaunchWithGlobTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
File "/Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/lldbtest.py", line 473, in wrapper
return func(self, *args, **kwargs)
File "/Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/functionalities/launch_with_glob/TestLaunchWithGlob.py", line 28, in test_with_dwarf
self.do_test ()
File "/Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/functionalities/launch_with_glob/TestLaunchWithGlob.py", line 42, in do_test
self.runCmd("process launch -G true -w %s -- fi*.tx?" % (os.getcwd()))
File "/Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/lldbtest.py", line 1953, in runCmd
msg if msg else CMD_MSG(cmd))
AssertionError: False is not True : Command 'process launch -G true -w /Users/testuser/build/workspace/LLDB_master_release_OSX/llvm_master/tools/lldb/test/functionalities/launch_with_glob -- fi*.tx?' returns successfully
```
Reviewers: epertoso, emaste, abidh, clayborg, zturner
Reviewed By: clayborg
Subscribers: abidh, lldb-commits, emaste, epertoso, zturner, clayborg
Differential Revision: http://reviews.llvm.org/D7550
llvm-svn: 229517
Zachary Turner [Tue, 17 Feb 2015 17:55:50 +0000 (17:55 +0000)]
Revert "Revert "I had recently added a new SBFrame::GetVariables() overload with yet another bool argument""
Reverting this commit led to other failures which I did not see at
first. This turned out to be an easy problem to fix, so I added
SBVariablesOptions.cpp to the CMakeLists.txt. In the future please
try to make sure new files are added to CMake.
llvm-svn: 229516
Aaron Ballman [Tue, 17 Feb 2015 17:44:07 +0000 (17:44 +0000)]
Correcting the ArrayRef test to not cause use-after-free bugs with initializer lists. Should also silence a -Wsign-compare warning accidentally introduced.
llvm-svn: 229515
Zachary Turner [Tue, 17 Feb 2015 17:42:05 +0000 (17:42 +0000)]
Revert "I had recently added a new SBFrame::GetVariables() overload with yet another bool argument"
This reverts commit r228975. It was causing link errors
on the Windows bots, since last Thursday.
http://lab.llvm.org:8011/builders/lldb-x86-win7-msvc/builds/725
Conflicts:
lldb.xcodeproj/project.pbxproj
llvm-svn: 229514
Aaron Ballman [Tue, 17 Feb 2015 17:08:08 +0000 (17:08 +0000)]
Adding additional tests to ensure that initializer lists created from return values and as function arguments also work as expected.
llvm-svn: 229513
Aaron Ballman [Tue, 17 Feb 2015 16:57:05 +0000 (16:57 +0000)]
Addressing a post-commit review comment suggesting to avoid using direct initialization.
llvm-svn: 229512
Sanjay Patel [Tue, 17 Feb 2015 16:54:32 +0000 (16:54 +0000)]
Canonicalize splats as build_vectors (PR22283)
This is a follow-on patch to:
http://reviews.llvm.org/D7093
That patch canonicalized constant splats as build_vectors,
and this patch removes the constant check so we can canonicalize
all splats as build_vectors.
This fixes the 2nd test case in PR22283:
http://llvm.org/bugs/show_bug.cgi?id=22283
The unfortunate code duplication between SelectionDAG and DAGCombiner
is discussed in the earlier patch review. At least this patch is just
removing code...
This improves an existing x86 AVX test and changes codegen in an ARM test.
Differential Revision: http://reviews.llvm.org/D7389
llvm-svn: 229511
Benjamin Kramer [Tue, 17 Feb 2015 16:53:08 +0000 (16:53 +0000)]
Revert accidental commit.
llvm-svn: 229510
Eric Fiselier [Tue, 17 Feb 2015 16:52:03 +0000 (16:52 +0000)]
[libcxx] Add <experimental/ratio>
Summary:
This patch is pretty simple. It just adds the _v traits from <ratio>.
The draft can be found here.
Reviewers: jroelofs, K-ballo, mclow.lists
Reviewed By: mclow.lists
Subscribers: cfe-commits
Differential Revision: http://reviews.llvm.org/D7351
llvm-svn: 229509
Benjamin Kramer [Tue, 17 Feb 2015 16:48:30 +0000 (16:48 +0000)]
Prefer SmallVector::append/insert over push_back loops. Clang edition.
Same functionality, but hoists the vector growth out of the loop.
llvm-svn: 229508
Tom Stellard [Tue, 17 Feb 2015 16:36:00 +0000 (16:36 +0000)]
R600/SI: Extend private extload pattern to include zext loads
llvm-svn: 229507
Pavel Labath [Tue, 17 Feb 2015 16:07:52 +0000 (16:07 +0000)]
Use CloseOnExec in Platform::PutFile
Summary:
This does not fix any outstanding issue that I know of, but there is no reason these files should
_not_ have CloseOnExec.
Reviewers: clayborg
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D7694
llvm-svn: 229506
Chaoren Lin [Tue, 17 Feb 2015 15:41:28 +0000 (15:41 +0000)]
Send default register number instead of GDB register number in StopReplyPacket.
Summary:
Using GDB register numbers confuses ProcessGDBRemote since the rest of
LLGS (qRegisterInfo, p, P) uses the default register numbers instead.
Test Plan: dosep.py --options --arch x86 ...
Reviewers: ovyalov, vharron, sivachandra
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D7635
llvm-svn: 229505
Chaoren Lin [Tue, 17 Feb 2015 15:41:26 +0000 (15:41 +0000)]
Watchpoint debug registers should work in i386 as well.
llvm-svn: 229504
Chaoren Lin [Tue, 17 Feb 2015 15:41:23 +0000 (15:41 +0000)]
Fix small assignment mistake.
llvm-svn: 229503
Aaron Ballman [Tue, 17 Feb 2015 15:37:53 +0000 (15:37 +0000)]
I believe we no longer require LLVM_HAS_INITIALIZER_LISTS; it's supported in MSVC 2013 and GCC. Added a trivial test to ensure the ArrayRef initializer list constructor is called and behaves as expected.
If any of the bots complain (perhaps due to an antiquated version of an STL implementation), I will revert.
llvm-svn: 229502
NAKAMURA Takumi [Tue, 17 Feb 2015 15:36:01 +0000 (15:36 +0000)]
ADT/PointerIntPairTest.cpp: Prune obsolete #if. We don't support msc17 anymore.
llvm-svn: 229501
Benjamin Kramer [Tue, 17 Feb 2015 15:29:18 +0000 (15:29 +0000)]
Prefer SmallVector::append/insert over push_back loops.
Same functionality, but hoists the vector growth out of the loop.
llvm-svn: 229500
Sergey Matveev [Tue, 17 Feb 2015 15:09:33 +0000 (15:09 +0000)]
Append -fno-assume-sane-operator-new in ASan builds.
This should help LSan detect leaks where operator new would otherwise be
optimized out.
llvm-svn: 229498
Aaron Ballman [Tue, 17 Feb 2015 13:18:43 +0000 (13:18 +0000)]
Reverting r229473; it does not compile with MSVC 2013, and I suspect it was meant to be reverted in r229483.
llvm-svn: 229496
Elena Demikhovsky [Tue, 17 Feb 2015 13:10:05 +0000 (13:10 +0000)]
Fixed a bug in store sinking.
The problem was in store-sink barrier check.
Store sink barrier should be checked for ModRef (read-write) mode.
http://llvm.org/bugs/show_bug.cgi?id=22613
llvm-svn: 229495
NAKAMURA Takumi [Tue, 17 Feb 2015 12:53:16 +0000 (12:53 +0000)]
OrcJIT: Appease msc18 not to be confused on executeCompileCallback<OrcX86_64>.
llvm-svn: 229494
NAKAMURA Takumi [Tue, 17 Feb 2015 12:53:05 +0000 (12:53 +0000)]
Reformat.
llvm-svn: 229493
NAKAMURA Takumi [Tue, 17 Feb 2015 12:52:58 +0000 (12:52 +0000)]
OrcJIT: Try to appease msc18 to add move constructor in FullyPartitionedModule .
llvm-svn: 229492
Viktor Kutuzov [Tue, 17 Feb 2015 12:52:08 +0000 (12:52 +0000)]
[Msan] Fix the unit tests' PathToLoadable() to work on FreeBSD
Differential Revision: http://reviews.llvm.org/D7587
llvm-svn: 229491
Manuel Klimek [Tue, 17 Feb 2015 12:42:14 +0000 (12:42 +0000)]
Fix problem with uninitialized bool found by asan.
llvm-svn: 229490
Andrea Di Biagio [Tue, 17 Feb 2015 12:25:49 +0000 (12:25 +0000)]
[X86][FastISel] Add missing flag -fast-isel-abort to run lines in test fast-isel-fptrunc-fpext.ll.
Flag -fast-isel-abort is required in order to verify that X86FastISel
never fails to select FPExt (float-to-double) and FPTrunc (double-to-float).
No Functional change intended.
llvm-svn: 229489
Andrea Di Biagio [Tue, 17 Feb 2015 11:20:11 +0000 (11:20 +0000)]
[X86] Silence -Wsign-compare warnings.
GCC 4.8 reported two new warnings due to comparisons
between signed and unsigned integer expressions. The new warnings were
accidentally introduced by revision 229480.
Added explicit casts to silence the warnings. No functional change intended.
llvm-svn: 229488
Will Newton [Tue, 17 Feb 2015 11:16:54 +0000 (11:16 +0000)]
Fix AArhc64 ELF test failure on Windows
The atoms may be processed in different orders on different systems
based on allocated addresses. This is a bit unfortunate as it would
be nice to have error messages emitted in order of file contents.
However we are emitting errors inside a parallel_for_each so even if
we stabilize the order of atom processing we would need to do some
further work in order to ensure that thread scheduling doesn't perturb
the order of errors. For now switch to using CHECK-DAG instead of CHECK.
llvm-svn: 229487
Daniel Jasper [Tue, 17 Feb 2015 10:05:15 +0000 (10:05 +0000)]
clang-format: Don't force a break after "endl" if everything fits on one line.
llvm-svn: 229486
Daniel Jasper [Tue, 17 Feb 2015 09:58:03 +0000 (09:58 +0000)]
clang-format: Fix crasher.
llvm-svn: 229485
Manuel Klimek [Tue, 17 Feb 2015 09:49:31 +0000 (09:49 +0000)]
Make tests independent of llvm variable naming.
llvm-svn: 229484
Justin Bogner [Tue, 17 Feb 2015 09:21:43 +0000 (09:21 +0000)]
Revert "InstrProf: Add unit tests for the profile reader and writer"
This added API to the InstrProfWriter to write to a string so I could
write unittests without using temp files. This doesn't really work,
since the format has tighter alignment requirements than a char.
This reverts r229478 and its follow-up, r229481.
llvm-svn: 229483
Elena Demikhovsky [Tue, 17 Feb 2015 09:20:12 +0000 (09:20 +0000)]
AVX-512: changes in intel_ocl_bi calling conventions
- added mask types v8i1 and v16i1 to possible function parameters
- enabled passing 512-bit vectors in standard CC
- added a test for KNL intel_ocl_bi conventions
llvm-svn: 229482
Justin Bogner [Tue, 17 Feb 2015 08:26:06 +0000 (08:26 +0000)]
InstrProf: Add missing header from r229478
llvm-svn: 229481
Michael Kuperstein [Tue, 17 Feb 2015 08:22:51 +0000 (08:22 +0000)]
[X86] Combine vector anyext + and into a vector zext
Vector zext tends to get legalized into a vector anyext, represented as a vector shuffle with an undef vector + a bitcast, that gets ANDed with a mask that zeroes the undef elements.
Combine this into an explicit shuffle with a zero vector instead. This allows shuffle lowering to match it as a zext, instead of matching it as an anyext and emitting an explicit AND.
This combine only covers a subset of the cases, but it's a start.
Differential Revision: http://reviews.llvm.org/D7666
llvm-svn: 229480
Tobias Grosser [Tue, 17 Feb 2015 08:15:14 +0000 (08:15 +0000)]
Add missing files to autoconf build
llvm-svn: 229479
Justin Bogner [Tue, 17 Feb 2015 07:50:59 +0000 (07:50 +0000)]
Re-apply "InstrProf: Add unit tests for the profile reader and writer"
Add these tests again, but use va_list instead of initializer lists.
This reverts r229456, reapplying r229455.
llvm-svn: 229478
Jonas Paulsson [Tue, 17 Feb 2015 07:45:06 +0000 (07:45 +0000)]
[PBQP] NDEBUG guards added around code needed for assert.
wasConservativelyAllocatable() is only called to assert that a conservatively
allocatable node wasn't forced to spill.
llvm-svn: 229477
Tobias Grosser [Tue, 17 Feb 2015 07:39:25 +0000 (07:39 +0000)]
Update isl to 0ae2b02 "isl_seq_combine: optimize for common case"
This is just a single commit that includes a performance optimization that
should improve dependence analysis time. Our performance bots should measure
this difference.
llvm-svn: 229476
Eric Christopher [Tue, 17 Feb 2015 07:21:21 +0000 (07:21 +0000)]
Make the PowerPC AsmPrinter independent of global subtarget
initialization. Initialize the subtarget once per function and
migrate EmitStartOfAsmFile to either use attributes on the
TargetMachine or get information from all of the various
subtargets.
llvm-svn: 229475
Craig Topper [Tue, 17 Feb 2015 07:18:01 +0000 (07:18 +0000)]
[X86] Convert palignr builtin handling to use shuffle form of right shift instead of intrinsics. This should allow the instrinsics to removed from the backend.
llvm-svn: 229474
Justin Bogner [Tue, 17 Feb 2015 06:56:49 +0000 (06:56 +0000)]
InstrProf: Use a test fixture in the coverage mapping tests
llvm-svn: 229473
Eric Christopher [Tue, 17 Feb 2015 06:45:17 +0000 (06:45 +0000)]
Add a FIXME to move IsLittleEndian to the target machine.
llvm-svn: 229472
Eric Christopher [Tue, 17 Feb 2015 06:45:15 +0000 (06:45 +0000)]
Move ABI handling and 64-bitness to the PowerPC target machine.
This required changing how the computation of the ABI is handled
and how some of the checks for ABI/target are done.
llvm-svn: 229471
Alex Denisov [Tue, 17 Feb 2015 06:43:10 +0000 (06:43 +0000)]
Add more tests for NSArray/NSDictionary literals
llvm-svn: 229470
Craig Topper [Tue, 17 Feb 2015 06:37:58 +0000 (06:37 +0000)]
[X86] Merge the 2 separate builtin handlers for PALIGNR into a single one that handles both.
llvm-svn: 229469
Craig Topper [Tue, 17 Feb 2015 06:22:50 +0000 (06:22 +0000)]
[X86] Remove code that does custom handling of the builtin for MMX palignr. This code is unreachable since its already marked for non-custom handling in llvm's IntrinsicsX86.td file.
llvm-svn: 229468
Lang Hames [Tue, 17 Feb 2015 05:53:28 +0000 (05:53 +0000)]
[Orc][Kaleidoscope] Fix misnumbered steps in comments, plus tidy one
explanation up a little.
llvm-svn: 229467
Lang Hames [Tue, 17 Feb 2015 05:40:42 +0000 (05:40 +0000)]
[Orc][Kaleidoscope] Add an example of extreme-laziness in Orc.
The version of the tutorial uses the new compile callbacks API to inject stubs
that trigger IRGen & Codegen of their respective function bodies when they are
first called.
llvm-svn: 229466
Lang Hames [Tue, 17 Feb 2015 05:36:59 +0000 (05:36 +0000)]
[Orc][Kaleidoscope] Update the MainLoop code of the orc/kaleidoscope tutorials
to get rid of the duplicate prompt. NFC.
llvm-svn: 229465
Duncan P. N. Exon Smith [Tue, 17 Feb 2015 02:42:45 +0000 (02:42 +0000)]
AsmPrinter: Use DIExpression default constructor, NFC
llvm-svn: 229464
Chandler Carruth [Tue, 17 Feb 2015 02:12:24 +0000 (02:12 +0000)]
[x86] Teach the unpack lowering to try wider element unpacks.
This allows it to match still more places where previously we would have
to fall back on floating point shuffles or other more complex lowering
strategies.
I'm hoping to replace some of the hand-rolled unpack matching with this
routine is it gets more and more clever.
llvm-svn: 229463