summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [Orc] Qualify call to make_unique to avoid ambiguity with std::make_unique.Lang Hames2016-01-191-4/+4
| | | | | | This should fix some of the bot failures associated with r258185. llvm-svn: 258204
* [Orc] #undef a MACRO after I'm done with it.Lang Hames2016-01-191-7/+10
| | | | | | | | Suggested by Philip Reames in review of r257951. Thanks Philip! llvm-svn: 258203
* Fix another -Wexpansion-to-defined warning in compiler-rt.Nico Weber2016-01-191-1/+5
| | | | llvm-svn: 258202
* Add missing license headersEric Fiselier2016-01-192-1/+18
| | | | llvm-svn: 258201
* Fix -Wexpansion-to-defined warnings in compiler-rt.Nico Weber2016-01-192-3/+15
| | | | llvm-svn: 258200
* [Process] Remove dead code. All the switch cases are already covered.Davide Italiano2016-01-192-4/+0
| | | | llvm-svn: 258199
* Add more missing license headersEric Fiselier2016-01-1911-0/+95
| | | | llvm-svn: 258198
* Add an ObjCPass to the MachO linker.Pete Cooper2016-01-1910-32/+204
| | | | | | | | | This pass currently emits an objc image info section if one is required. This section contains the aggregated version and flags for all of the input files. llvm-svn: 258197
* Add missing license headersEric Fiselier2016-01-1917-0/+148
| | | | llvm-svn: 258196
* Mark slow ASAN/MSAN tests as XFAIL for now.Eric Fiselier2016-01-193-0/+10
| | | | llvm-svn: 258195
* Removed a bunch of spurious files from the man page Copy Files build phase.Sean Callanan2016-01-191-18/+0
| | | | | | | | | A few files were accidentally added to the Copy Files build phase for our man page, and they would appear when 'xcodebuild install' was invoked. This removes those files – they continue to be built correctly, but they aren't installed with our man page. llvm-svn: 258194
* [AArch64] Remove a bunch of useless FIXME comments.Chad Rosier2016-01-191-4/+0
| | | | llvm-svn: 258193
* [WebAssembly] Remove an unused data member. NFC.Dan Gohman2016-01-193-10/+7
| | | | llvm-svn: 258192
* [AArch64] Remove more dead code after r258093.Chad Rosier2016-01-191-12/+4
| | | | llvm-svn: 258191
* Fix undefined behavior in llvm's local changes to googletest.Nico Weber2016-01-192-1/+5
| | | | | | | | | r100895 landed an llvm-only change to add minix support to googletest. It did that by putting "defined()" in a macro, which has undefined behavior. Slightly reshuffle things to remove that undefined behavior. Also mention in README.LLVM that minix support is a local change. llvm-svn: 258190
* Rename IgnoredWeak to Ignored.Rafael Espindola2016-01-194-9/+8
| | | | | | Thanks to Rui for the suggestion. llvm-svn: 258189
* Fix a coverage reading bug Xinliang David Li2016-01-191-1/+3
| | | | | | | | | function record pointer is not advanced when duplicate entry is found. Test case to be added. llvm-svn: 258188
* [Orc] Fix a stale comment.Lang Hames2016-01-191-8/+2
| | | | llvm-svn: 258187
* [Orc] Refactor ObjectLinkingLayer::addObjectSet to defer loading objects untilLang Hames2016-01-195-107/+278
| | | | | | | | | | | | | | | | they're needed. Prior to this patch objects were loaded (via RuntimeDyld::loadObject) when they were added to the ObjectLinkingLayer, but were not relocated and finalized until a symbol address was requested. In the interim, another object could be loaded and finalized with the same memory manager, causing relocation/finalization of the first object to fail (as the first finalization call may have marked the allocated memory for the first object read-only). By deferring the loadObject call (and subsequent memory allocations) until an object file is needed we can avoid prematurely finalizing memory. llvm-svn: 258185
* [SCEV] Fix PR26207Sanjoy Das2016-01-193-1/+33
| | | | | | | | | | | | | | | | | | | | | | | In some cases, the max backedge taken count can be more conservative than the exact backedge taken count (for instance, because ScalarEvolution::getRange is not control-flow sensitive whereas computeExitLimitFromICmp can be). In these cases, computeExitLimitFromCond (specifically the bit that deals with `and` and `or` instructions) can create an ExitLimit instance with a `SCEVCouldNotCompute` max backedge count expression, but a computable exact backedge count expression. This violates an implicit SCEV assumption: a computable exact BE count should imply a computable max BE count. This change - Makes the above implicit invariant explicit by adding an assert to ExitLimit's constructor - Changes `computeExitLimitFromCond` to be more robust around conservative max backedge counts llvm-svn: 258184
* [SCEV] Use range-for; NFCSanjoy Das2016-01-191-5/+4
| | | | llvm-svn: 258183
* WebAssembly: mark known failure caused by r258125JF Bastien2016-01-191-0/+3
| | | | | | | The following test program triggers the assertion: https://github.com/gcc-mirror/gcc/blob/master/gcc/testsuite/gcc.c-torture/execute/20030916-1.c llvm-svn: 258182
* Fix bootstrap -Werror builds after clang r258128Nico Weber2016-01-191-0/+3
| | | | llvm-svn: 258181
* [OpenMP] Detect implicit map type to report unspecified map type for target ↵Samuel Antao2016-01-198-44/+76
| | | | | | | | | | | | | | | | | | | | enter/exit data directives. Support for the following OpenMP 4.5 restriction on 'target enter data' and 'target exit data': - A map-type must be specified in all map clauses. I have to save 'IsMapTypeImplicit' when parsing a map clause to support this constraint and for more informative error messages. This helps me support the following case: #pragma omp target enter data map(r) // expected-error {{map type must be specified for '#pragma omp target enter data'}} and distinguish it from: #pragma omp target enter data map(tofrom: r) // expected-error {{map type 'tofrom' is not allowed for '#pragma omp target enter data'}} Patch by Arpith Jacob. Thanks! llvm-svn: 258179
* [libFuzzer] use std::mt19937 for generating random numbers by default. Fix ↵Kostya Serebryany2016-01-195-8/+43
| | | | | | MyStoll to handle negative values. Use std::any_of instead of std::find_if llvm-svn: 258178
* [OpenMP] Parsing + sema for "target exit data" directive.Samuel Antao2016-01-1927-5/+646
| | | | | | Patch by Arpith Jacob. Thanks! llvm-svn: 258177
* getParent()->getParent() == getModule() ; NFCSanjay Patel2016-01-191-15/+15
| | | | llvm-svn: 258176
* [CUDA] Handle -O options (more) correctly.Justin Lebar2016-01-192-5/+49
| | | | | | | | | | | | | | Summary: Previously we'd crash the driver if you passed -O0. Now we try to handle all of clang's various optimization flags in a sane way. Reviewers: tra Subscribers: cfe-commits, echristo, jhen Differential Revision: http://reviews.llvm.org/D16307 llvm-svn: 258174
* Set the objc constraint on the context based on the parsed files.Pete Cooper2016-01-193-0/+81
| | | | | | | | | | | | Like arch, os, etc, when we know we are going to use a file, we check that the file has compatible objc constraints to the context, throw appropriate errors where that is not the case, and hopefully set the objc constraints on the context for use later. Added 2 tests to ensure that we don't have incompatibilities between host and simulator code as both will get x86 based architectures. llvm-svn: 258173
* function names start with a lowercase letter; NFCSanjay Patel2016-01-193-90/+90
| | | | | | | | Note: There are no uses of these functions outside of SimplifyLibCalls, so they could be static functions in that file. llvm-svn: 258172
* lit.cfg: Pass -isysroot to the SDK on DarwinHans Wennborg2016-01-191-0/+11
| | | | | | | Newly-built Clangs don't automatically find the SDK, and newer versions of Mac OS X don't provide it under /usr/include etc. llvm-svn: 258169
* test-release.sh: Use CMake also for DarwinHans Wennborg2016-01-191-5/+0
| | | | | | This didn't work for 3.7, but hopefully it should work now. llvm-svn: 258168
* fix formatting; NFCSanjay Patel2016-01-191-3/+4
| | | | llvm-svn: 258167
* don't repeat documentation comments in implementation file; NFCSanjay Patel2016-01-191-36/+0
| | | | llvm-svn: 258166
* [OpenMP] Parsing + sema for "target enter data" directive.Samuel Antao2016-01-1928-10/+666
| | | | | | Patch by Arpith Jacob. Thanks! llvm-svn: 258165
* don't repeat function names in documentation comments; NFCSanjay Patel2016-01-191-41/+36
| | | | llvm-svn: 258164
* Move part of an if condition into an assertion. NFC.Manuel Jacob2016-01-191-2/+2
| | | | llvm-svn: 258163
* [AVX512] Adding VPERMT2B and VPERMI2B instruction .Michael Zuckerman2016-01-192-12/+261
| | | | | | Differential Revision: http://reviews.llvm.org/D16297 llvm-svn: 258161
* Cache the objc image info constraints in file.Pete Cooper2016-01-194-11/+34
| | | | | | | | | | Image info flags describe the objc constraint which is GC/retain/release/etc. These need to be parsed and stored in the file so that we can do error checking. That will come in a later commit. llvm-svn: 258160
* Revert 258157Philip Reames2016-01-193-17/+8
| | | | | | According the build bots, clang is using the Registry class somewhere as well. Will reapply with appropriate clang changes at a later point. llvm-svn: 258159
* [LibCallSimplifier] use instruction-level fast-math-flags to shrink callsSanjay Patel2016-01-192-39/+20
| | | | | | | This is a continuation of adding FMF to call instructions: http://reviews.llvm.org/rL255555 llvm-svn: 258158
* [GC] Registry initialization and linkage interactionsPhilip Reames2016-01-193-8/+17
| | | | | | | | | | | | | | The Registry class constructs a linked list of nodes whose storage is inside static variables and nodes are added via static initializers. The trick is that those static initializers are in both the LLVM code base, and some random plugin that might get loaded in at runtime. The existing code tries to use C++ templates and their ODR rules to get a single definition of the registry for each type, but, experimentally, this doesn't quite work as designed. (Well, the entire structure doesn't. It might not actually be an ODR problem.) Previously, when I tried moving the GCStrategy class (along with it's registry) from CodeGen to IR, I ran into a problem where asking the GCStrategyRegistry a question would return inconsistent results depending on whether you asked from CodeGen (where the static initializers still were) or Transforms. My best guess is that this is a result of either a) an order of initialization error, or b) we ended up with two copies of the registry being created. I remember at the time having convinced myself it was probably (b), but I don't have any of my notes around from that investigation any more. See http://reviews.llvm.org/rL226311 for the original patch in question. This patch tries to remove the possibility of (b) above. (a) was already fixed in change 258109. Differential Revision: http://reviews.llvm.org/D16170 llvm-svn: 258157
* [PGO] Create the profile data variable before the loweringRong Xu2016-01-191-3/+12
| | | | | | | | | | This patch creates the profile data variable before lowering the profile intrinsics. Reviewers: davidxl, silvas Differential Revision: http://reviews.llvm.org/D16015 llvm-svn: 258156
* Add clarifying comments defining what a Loop isPhilip Reames2016-01-191-0/+9
| | | | | | | | Our loop construct is not a way to identify cycles in the CFG. This wasn't immediately obvious from the header, so clarify that fact. The motivation for this was that I just fixed a out of tree bug due to a mistaken assumption (on my part) on what a Loop actually was. While it was fresh in my mind, I wanted to document the key point. llvm-svn: 258154
* [LibCallSimplifier] use instruction-level fast-math-flags to transform ↵Sanjay Patel2016-01-192-25/+23
| | | | | | | | | | | | | | | | | | pow(x, [small integer]) calls This is a continuation of adding FMF to call instructions: http://reviews.llvm.org/rL255555 As with D15937, the intent of the patch is to preserve the current behavior of the transform except that we use the pow call's 'fast' attribute as a trigger rather than a function-level attribute. The TODO comment notes a potential follow-on patch that would propagate FMF to the new instructions. Differential Revision: http://reviews.llvm.org/D16122 llvm-svn: 258153
* Module Debugging: Defer the emission of anonymous tag declsAdrian Prantl2016-01-194-0/+31
| | | | | | | | | | | | | until we are visiting their declcontext. This fixes a regression introduced in r256962: When building debug info for a typdef'd anonymous tag type, we would be visiting the inner anonymous type first thus creating a "typedef changes linkage of anonymous type, but linkage was already computed" error. rdar://problem/24199640 llvm-svn: 258152
* NFC Test Commit whitespace change in a commentChris Ray2016-01-191-1/+1
| | | | | | Changed whitespace so comments line up. llvm-svn: 258151
* Implementing the method Target::TargetEventData::Dump (Stream *s) so that ↵Oleksiy Vyalov2016-01-191-0/+6
| | | | | | | | | | its clients can easily dump it out for informational messages. http://reviews.llvm.org/D16244 Submitting on behalf of vishwesh@google.com. llvm-svn: 258150
* Use larger write sizes for MCFillFragment.Rafael Espindola2016-01-191-3/+14
| | | | | | | This brings the pr26208 testcase down to 3.2 seconds. Not checking it in since it does create a 4GB .o file. llvm-svn: 258149
* [cmake] Fix add_version_info_from_vcs git svn version bug.Geoff Berry2016-01-191-17/+9
| | | | | | | | | | | | | | | | | | | | Summary: add_version_info_from_vcs was setting SVN_REVISION to the last fetched svn revision when using git svn instead of the svn revision corresponding to HEAD. This leads to conflicts with the definition of SVN_REVISION in SVNVersion.inc generated by GetSVN.cmake when HEAD is not the most recently fetched svn revision. Use 'git svn info' to determine SVN_REVISION when git svn is being used instead (as is done in GetSVN.cmake). Reviewers: beanz Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16299 llvm-svn: 258148
OpenPOWER on IntegriCloud