- Sep 17, 2017
-
-
Eric Fiselier authored
llvm-svn: 313501
-
Eric Fiselier authored
Patch from Eddie Elizondo. Reviewed as D37830 (https://reviews.llvm.org/D37830). On MacOSX the following program: struct S { virtual void f() = delete; }; int main() { new S; } Fails with the following error: Undefined symbols for architecture x86_64: "___cxa_deleted_virtual" This adds a fix to export the needed symbols. Test: > lit -sv test/libcxx/language.support/cxa_deleted_virtual.pass.cpp > Testing Time: 0.21s > Expected Passes : 1 llvm-svn: 313500
-
Eric Fiselier authored
Clang recently changed the way it outputs static assert diagnostics. This patch fixes libc++'s -verify tests so they tolerate both the old and new message format. llvm-svn: 313499
-
Kuba Mracek authored
llvm-svn: 313498
-
Craig Topper authored
This arranges more of the Intel and AMD CPUs into fallthrough positions based on their features. We may be able to merge this new AMD set with the BTVER or BDVER sets but I didn't look that closely. Differential Revision: https://reviews.llvm.org/D37941 llvm-svn: 313497
-
Craig Topper authored
For some reason the SSE1 pattern expected a X86Movlhps pattern to have a v4f32 type, but AVX and AVX512 expected it to have a v4i32 type. I'm not even sure this pattern is even reachable post SSE1, but I'm starting with fixing this obvious bug. llvm-svn: 313495
-
Craig Topper authored
The memory patterns were near the MOVDDUP definition, but the non-memory patterns were near the broadcast instructions. llvm-svn: 313494
-
Craig Topper authored
llvm-svn: 313493
-
Craig Topper authored
[X86] Remove isel patterns for X86Movhlps and X86Movlhps with integer types. Lowering doesn't emit these. llvm-svn: 313492
-
Craig Topper authored
llvm-svn: 313491
-
Jatin Bhateja authored
Differential Revision: https://reviews.llvm.org/D37962 llvm-svn: 313490
-
Johan Engelen authored
This reverts commit r313488, because it breaks compilation on Android and breaks llvm-lto. llvm-svn: 313489
-
Johan Engelen authored
Summary: ld64 on OSX uses the old ThinLTOCodegenerator API. When two modules have the same name in an archive (valid archive), a name collision happens for the modules' buffer identifiers. This PR resolves this, by suffixing the module name with an increasing number such that the identifiers are guaranteed to be unique. For a similar fix in LLD, see https://reviews.llvm.org/D25495 Reviewers: mehdi_amini, tejohnson Reviewed By: mehdi_amini Subscribers: inglorion, eraman, llvm-commits Differential Revision: https://reviews.llvm.org/D37961 llvm-svn: 313488
-
Faisal Vali authored
Fix the second half of PR34266: Don't implicitly capture '*this' if the members are found in a class unrelated to the enclosing class. https://bugs.llvm.org/show_bug.cgi?id=34266 For e.g. struct A { void f(int); static void f(char); }; struct B { auto foo() { return [&] (auto a) { A::f(a); // this should not cause a capture of '*this' }; } }; The patch does the following: 1) It moves the check to attempt an implicit capture of '*this' by reference into the more logical location of when the call is actually built within ActOnCallExpr (as opposed to when the unresolved-member-lookup node is created). - Reminder: A capture of '*this' by value has to always be an explicit capture. 2) It additionally checks whether the naming class of the UnresolvedMemberExpr ('A' in the example above) is related to the enclosing class ('B' above). P.S. If you have access to ISO-C++'s CWG reflector, see this thread for some potentially related discussion: http://lists.isocpp.org/core/2017/08/2851.php llvm-svn: 313487
-
Alex Bradbury authored
This Disassembly support allows for 'round-trip' testing, and rv32i-valid.s has been updated appropriately. Differential Revision: https://reviews.llvm.org/D23567 llvm-svn: 313486
-
Alex Bradbury authored
This patch supports all RV32I instructions as described in the RISC-V manual. A future patch will add support for pseudoinstructions and other instruction expansions (e.g. 0-arg fence -> fence iorw, iorw). Differential Revision: https://reviews.llvm.org/D23566 llvm-svn: 313485
-
Igor Breger authored
llvm-svn: 313484
-
Igor Breger authored
llvm-svn: 313483
-
Benjamin Kramer authored
Lambdas are slightly more verbose, but also more readable. No functionality change intended. llvm-svn: 313482
-
Benjamin Kramer authored
It's removed in C++17. No functionality change intended. llvm-svn: 313481
-
Ulrich Weigand authored
Commit r313277 moved IsStackOverflow to inside the SignalContext class, but didn't update a code block in #ifdef s390x accordingly. llvm-svn: 313480
-
Igor Breger authored
llvm-svn: 313479
-
Igor Breger authored
Summary: G_FCONSTANT support, port the implementation from X86FastIsel. Reviewers: zvi, delena, guyblank Reviewed By: delena Subscribers: rovka, llvm-commits, kristof.beyls Differential Revision: https://reviews.llvm.org/D37734 llvm-svn: 313478
-
Craig Topper authored
llvm-svn: 313477
-
Craig Topper authored
llvm-svn: 313476
-
Craig Topper authored
llvm-svn: 313475
-
Lang Hames authored
This can be used to add a relocatable object to the JIT session. llvm-svn: 313474
-
Don Hinton authored
Summary: Fix a few typos and update names to match current source. Differential Revision: https://reviews.llvm.org/D37948 llvm-svn: 313473
-
Craig Topper authored
This adds new patterns and SDNodeXForm to enable the immediate to commuted. llvm-svn: 313472
-
Craig Topper authored
Previously we were just relying on pattern order to define precedence. Which works, but isn't the best way. llvm-svn: 313471
-
- Sep 16, 2017
-
-
Martin Storsjö authored
llvm-svn: 313470
-
Zachary Turner authored
It doesn't make sense to me why these bots are failing as the traceback does not agree with the source code. It's possible something is stale or there is some other mysterious error, but in any case hopefully this fixes it. llvm-svn: 313469
-
Zachary Turner authored
This was a bug in the test that was only exposed as a result of refactoring some code in lit configuration files. Previously, llvm's lit configuration would only set the target-windows feature if the system was also windows. Since cross-compilation is a thing, this isn't correct. target-windows should be set independently of system-windows. Adding to that bug, this particular test then checked for target-windows when it really meant "can I call a certain API on the host machine", which is what system-windows is for. Ultimately, this test only works if *both* the target and host are Windows, so I've updated the test to reflect that. llvm-svn: 313468
-
Zachary Turner authored
There were some issues surrounding Py2 / Py3 compatibility, but I've now tested with both Py2 and Py3 and everything seems to work. llvm-svn: 313467
-
Zachary Turner authored
llvm-svn: 313466
-
Craig Topper authored
The same code appears earlier in the function. This represents an earlier version of what became r313373 that I still had sitting in my local repo. llvm-svn: 313465
-
Adrian Prantl authored
This will print all children of a DIE when selectively printing only one DIE at a given offset. llvm-svn: 313464
-
Adrian Prantl authored
llvm-svn: 313463
-
Craig Topper authored
Summary: For a lot of older CPUs we have a 1:1 mapping between CPU name and enum name. But many of them are effectively aliases of each other and as a result are always repeated together at every usage This patch removes most of the duplication. It also uses StringSwitch::Cases to make the many to one mapping in the StringSwitch more obvious. Reviewers: RKSimon, spatel, zvi, igorb Reviewed By: RKSimon Subscribers: cfe-commits Differential Revision: https://reviews.llvm.org/D37938 llvm-svn: 313462
-
Zachary Turner authored
A few tests were manually constructing a LitConfig object, since I added a new argument to it this was triggering some failures I didn't detect. `ninja check-lit` passes now. llvm-svn: 313461
-