- Nov 09, 2015
-
-
Chris Bieneman authored
As per the very positive feedback from llvm-dev (http://lists.llvm.org/pipermail/llvm-dev/2015-November/092150.html), this commit officially deprecates the LLVM autoconf-based build system. Anyone still using it should switch to CMake. llvm-svn: 252520
-
Sanjay Patel authored
llvm-svn: 252519
-
Rafael Espindola authored
llvm-svn: 252518
-
Rafael Espindola authored
Expose read and write functions that take endianess as a template parameter. llvm-svn: 252517
-
Enrico Granata authored
Extend the TypeSystem's ShouldPrintAsOneLiner implementation so that the ValueObject itself also gets a say in the process; NFC llvm-svn: 252516
-
Sanjay Patel authored
The motivation for this patch starts with the epic fail example in PR18007: https://llvm.org/bugs/show_bug.cgi?id=18007 ...unfortunately, this patch makes no difference for that case, but it solves some simpler cases. We'll get there some day. :) The current 'or' matching code was using computeKnownBits() via isBaseWithConstantOffset() -> MaskedValueIsZero(), but that's an unnecessarily limited use. We can do more by copying the logic in ValueTracking's haveNoCommonBitsSet(), so we can treat the 'or' as if it was an 'add'. There's a TODO comment here because we should lift the bit-checking logic into a helper function, so it's not duplicated in DAGCombiner. An example of the better LEA matching: leal (%rdi,%rdi), %eax andl $1, %esi orl %esi, %eax Becomes: andl $1, %esi leal (%rsi,%rdi,2), %eax Differential Revision: http://reviews.llvm.org/D13956 llvm-svn: 252515
-
Evgeniy Stepanov authored
llvm-svn: 252514
-
Colin LeMahieu authored
llvm-svn: 252513
-
Reid Kleckner authored
For some reason we'd never run MachineVerifier on WinEH code, and you explicitly have to ask for it with llc. I added it to a few test cases to get some coverage. Fixes PR25461. llvm-svn: 252512
-
Marshall Clow authored
llvm-svn: 252509
-
Andrew Kaylor authored
[WinEH] Re-committing r252249 (Clone funclets with multiple parents) with additional fixes for determinism problems Differential Revision: http://reviews.llvm.org/D14454 llvm-svn: 252508
-
Tim Northover authored
When a struct's size is not a power of 2, the corresponding _Atomic() type is promoted to the nearest. We already correctly handled normal C++ expressions of this form, but direct calls to the __c11_atomic_whatever builtins ended up performing dodgy operations on the smaller non-atomic types (e.g. memcpy too much). Later optimisations removed this as undefined behaviour. This patch converts EmitAtomicExpr to allocate its temporaries at the full atomic width, sidestepping the issue. llvm-svn: 252507
-
Devin Coughlin authored
We now return early when the 'this' value cannot be converted to a MemRegion. llvm-svn: 252506
-
Reid Kleckner authored
llvm-svn: 252505
-
Mike Aizatsky authored
Differential Revision: http://reviews.llvm.org/D14503 llvm-svn: 252504
-
Enrico Granata authored
In this way, when a language needs to tell itself things that are not bound to a type but to a value (imagine a base-class relation, this is not about the type, but about the ValueObject), it can do so in a clean and general fashion The interpretation of the values of the flags is, of course, up to the language that owns the value (the value object's runtime language, that is) llvm-svn: 252503
-
Sanjay Patel authored
llvm-svn: 252502
-
Mike Aizatsky authored
Differential Revision: http://reviews.llvm.org/D14394 llvm-svn: 252501
-
Sanjay Patel authored
llvm-svn: 252500
-
Mike Aizatsky authored
Differential Revision: http://reviews.llvm.org/D14393 llvm-svn: 252499
-
Todd Fiala authored
This commit closes the following review: http://reviews.llvm.org/D14488 llvm-svn: 252498
-
Adhemerval Zanella authored
This patch makes ASAN for aarch64 use the same shadow offset for all currently supported VMAs (39 and 42 bits). The shadow offset is the same for 39-bit (36). llvm-svn: 252497
-
Aaron Ballman authored
Rewording some of this documentation to describe the check instead of try to rationalize the behavior of the check. The links already provide sufficient rationale. llvm-svn: 252496
-
Adhemerval Zanella authored
This patch makes ASAN for aarch64 use the same shadow offset for all currently supported VMAs (39 and 42 bits). The shadow offset is the same for 39-bit (36). Similar to ppc64 port, aarch64 transformation also requires to use an add instead of 'or' for 42-bit VMA. llvm-svn: 252495
-
Alexander Kornienko authored
Summary: Use "auto" when the type name is redundant Reviewers: aaron.ballman Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D14501 llvm-svn: 252494
-
Rafael Espindola authored
For now, just don't follow edges leaving from it to mark other sections live. llvm-svn: 252493
-
Dehao Chen authored
Summary: Call instructions that are from the same line and same basic block needs to have separate discriminators to distinguish between different callsites. Reviewers: davidxl, dnovillo, dblaikie Subscribers: dblaikie, probinson, llvm-commits Differential Revision: http://reviews.llvm.org/D14464 llvm-svn: 252492
-
Chad Rosier authored
llvm-svn: 252491
-
Oliver Stannard authored
When GlobalOpt splits an internal, global variable with an aggregate type, it should propagate the externally_initialized flag to the newly created globals. This makes the pass safe for our downstream use of this flag, while still allowing some useful optimisations (such as removing dead parts of the split aggregate) to be performed. Differential Revision: http://reviews.llvm.org/D13382 llvm-svn: 252490
-
Jon Roelofs authored
llvm-svn: 252489
-
Alexander Kornienko authored
Patch by Sterling Augustine! Differential revision: http://reviews.llvm.org/D14459 llvm-svn: 252488
-
Jonathan Peyton authored
1) Add get_ptr_type() method to all wait flag types. 2) Flag in sleep_loc may change type by the time the resume is called from __kmp_null_resume_wrapper. We use get_ptr_type to obtain the real type and compare it to the casted object received. If they don't match, we know the flag has changed (already resumed and replaced by another flag). If they match, it doesn't hurt to go ahead and resume it. Differential Revision: http://reviews.llvm.org/D14458 llvm-svn: 252487
-
Jonathan Peyton authored
1) When the number of threads in a team increases, new threads need to have all their barrier struct fields initialized. We were missing the parent_bar and team fields. 2) For non-forkjoin barriers, we now do the __kmp_task_team_setup before the gather. The setup now sets up the task_team that all the threads will switch to after the barrier, but it needs to be done before other threads do the switch. 3) Remove an unneeded assignment of tt_found_tasks in task team free function. Differential Revision: http://reviews.llvm.org/D14456 llvm-svn: 252486
-
Alexander Kornienko authored
Summary: This patch depends on http://reviews.llvm.org/D14191 Reviewers: djasper, klimek Subscribers: cfe-commits Differential Revision: http://reviews.llvm.org/D14192 llvm-svn: 252485
-
Jonathan Peyton authored
These changes include: 1) Machine hierarchy now uses the base_num_threads field to indicate the maximum number of threads the current hierarchy can handle without a resize. 2) In __kmp_get_hierarchy, we need to get depth after any potential resize is done. 3) Cleanup of hierarchy resize code to support 1 above. Differential Revision: http://reviews.llvm.org/D14455 llvm-svn: 252475
-
Jon Roelofs authored
http://reviews.llvm.org/D14403 llvm-svn: 252474
-
Jon Roelofs authored
in preparation for a Clang commit. http://reviews.llvm.org/D14405 llvm-svn: 252473
-
Jonathan Peyton authored
llvm-svn: 252472
-
Alexander Kornienko authored
llvm-svn: 252471
-
Aaron Ballman authored
llvm-svn: 252470
-