summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Patch to accept '_' in addition to '.' as versionFariborz Jahanian2014-10-022-3/+100
| | | | | | | number separator in "availability" attribute. rdar://18490958 llvm-svn: 218884
* Align copied load/store instructions as the original.Johannes Doerfert2014-10-026-6/+112
| | | | | | | | | | This also forbids the json importer to access other memory locations than the original instruction as we to reuse the alignment of the original load/store. Differential Revision: http://reviews.llvm.org/D5560 llvm-svn: 218883
* Revert "InstrProf: Update for the LLVM API change in r218879"Justin Bogner2014-10-023-7/+15
| | | | | | | | r218879 has been reverted for now, this needs to go to match. This reverts commit r218880. llvm-svn: 218882
* Revert "InstrProf: Don't keep a large sparse list around just to zero it"Justin Bogner2014-10-022-45/+32
| | | | | | | | This seems to be crashing on some buildbots. Reverting to investigate. This reverts commit r218879. llvm-svn: 218881
* InstrProf: Update for the LLVM API change in r218879Justin Bogner2014-10-023-15/+7
| | | | llvm-svn: 218880
* InstrProf: Don't keep a large sparse list around just to zero itJustin Bogner2014-10-022-32/+45
| | | | | | | | | | | | | | | | | | | | The Terms vector here represented a polynomial of of all possible counters, and is used to simplify expressions when generating coverage mapping. There are a few problems with this: 1. Keeping the vector as a member is wasteful, since we clear it every time we use it. 2. Most expressions refer to a subset of the counters, so we end up iterating over a large number of zeros doing nothing a lot of the time. This updates the user of the vector to store the terms locally, and uses a sort and combine approach so that we only operate on counters that are actually used in a given expression. For small cases this makes very little difference, but in cases with a very large number of counted regions this is a significant performance fix. llvm-svn: 218879
* [Refactor] Rename LoopAnnotator to ScopAnnotatorJohannes Doerfert2014-10-025-19/+19
| | | | | | | | | The LoopAnnotator doesn't annotate only loops any more, thus it is called ScopAnnotator from now on. This also removes unnecessary polly:: namespace tags. llvm-svn: 218878
* Allow to annotate alias scopes in the new SCoP.Johannes Doerfert2014-10-028-34/+225
| | | | | | | | | The command line flag -polly-annotate-alias-scopes controls whether or not Polly annotates alias scopes in the new SCoP (default ON). This can improve later optimizations as the new SCoP is basically an alias free environment for them. llvm-svn: 218877
* Use the local variable that other clauses around here are already using.Sanjay Patel2014-10-021-1/+1
| | | | llvm-svn: 218876
* Remove duplicate function names from comments. NFC.Sanjay Patel2014-10-021-43/+35
| | | | llvm-svn: 218875
* [NVPTX] Remove dead code.Tilmann Scheller2014-10-021-9/+3
| | | | | | Found by the Clang static analyzer. llvm-svn: 218874
* Fix up stale comments from last change.Todd Fiala2014-10-021-2/+2
| | | | llvm-svn: 218873
* thread state coordinator: requesting resume now signals error appropriately.Todd Fiala2014-10-022-8/+37
| | | | | | | | | | Added tests to verify that the coordinator signals an error if the given thread to resume is unknown, and if the thread is through to be running already. Modified resume handling code to match tests. llvm-svn: 218872
* gtest runner: now always does a clean step after running.Todd Fiala2014-10-021-13/+25
| | | | | | | | | | * Checks for any 'clean' arg, setting clean-only mode. * If clean-only mode, skip the make. * Adds the equivalent of os.devnull in a way that supports the file-like 'write' operation. * Uses a null sysout/syserr for the clean step so we don't see noise from cleaning. * Now always runs the clean step after a real test run so we don't have cruft left over after a test run. llvm-svn: 218871
* Support padding unaligned data in .text.Joerg Sonnenberger2014-10-022-1/+10
| | | | llvm-svn: 218870
* Support Cortex-m0Jonathan Roelofs2014-10-023-21/+70
| | | | | | | | | As the title says... also, fix all the ARM asm return sequences so that they work on processors without the BX instruction. http://reviews.llvm.org/D5314 llvm-svn: 218869
* Silence a -Wsign-compare warning. NFC.Aaron Ballman2014-10-021-2/+2
| | | | llvm-svn: 218868
* [BUG][INDVAR] Fix for PR21014: wrong SCEV operands commuting for ↵Zinovy Nis2014-10-022-5/+18
| | | | | | | | | | | | non-commutative instructions My commit rL216160 introduced a bug PR21014: IndVars widens code 'for (i = ; i < ...; i++) arr[ CONST - i]' into 'for (i = ; i < ...; i++) arr[ i - CONST]' thus inverting index expression. This patch fixes it. Thanks to Jörg Sonnenberger for pointing. Differential Revision: http://reviews.llvm.org/D5576 llvm-svn: 218867
* [Compiler-rt][MIPS][Profile] Adding support for MIPS32/64Daniel Sanders2014-10-021-3/+10
| | | | | | | | | | | | | | | | | | Summary: Changed cmake/config-ix.cmake to add support for different MIPS architectures: mips, mipsel, mips64, mips64el In profile code there is no target based dependencies, so just enabling mips flag does the work. Patch by Mohit Bhakkad Reviewers: dsanders, void, petarj, kcc, samsonov Reviewed By: samsonov Subscribers: llvm-commits, farazs, kumarsukhani Differential Revision: http://reviews.llvm.org/D4880 llvm-svn: 218866
* Emit lifetime.start / lifetime.end markers for unnamed temporary objects.Arnaud A. de Grandmaison2014-10-026-32/+414
| | | | | | | This will give more information to the optimizers so that they can reuse stack slots and reduce stack usage. llvm-svn: 218865
* Fix a broken test case.Asiri Rathnayake2014-10-021-2/+2
| | | | | | | | | | Summary: Commit r218863 broke this test case. This patch fixes it by updating the expected output line. Should've been updated with the original patch but for some reason it didn't fail during my local make check. Change-Id: I89ed28b37f67c34d1a5d28a3e47ae33d9a82a98f llvm-svn: 218864
* [ARM] Handle conflicts between -mfpu and -mfloat-abi options.Asiri Rathnayake2014-10-024-10/+172
| | | | | | | | | Summary: This patch implements warnings/downgradable errors for invalid -mfpu, -mfloat-abi option combinations (e.g. -mfpu=none -mfloat-abi=hard). Change-Id: I94fa664e1bc0b5855ad835abd7a50a3e0395632d llvm-svn: 218863
* [x86] Just delete the last combine test file.Chandler Carruth2014-10-021-448/+0
| | | | | | | | | | This file isn't really doing anything useful. Many of the tests that seem to be combined are also repeats from other test files. Many of the other tests, despite the comment that they should be combined into a single shuffle... well... aren't combined into a single shuffle. =/ llvm-svn: 218862
* [x86] Merge still more combine tests into the common file. These atChandler Carruth2014-10-022-237/+382
| | | | | | | least seem *slightly* more interesting test wise, although given how spotily we actually combine anything, I remain somewhat suspicious. llvm-svn: 218861
* [x86] Merge the third combining test into the generic one and add properChandler Carruth2014-10-022-380/+1001
| | | | | | | | | | | | | | | | checks for all the ISA variants. If the SSE2 checks here terrify you, good. This is (in large part) the kind of amazingly bad code that is holding LLVM back when vectorizing on older ISAs. At the same time, these tests seem increasingly dubious to me. There are a very large number of tests and it isn't clear that they are systematically covering a specific set of functionality. Anyways, I don't want to reduce testing during the transition, I just want to consolidate it to where it is easier to manage. llvm-svn: 218860
* [x86] Merge the second set of vector combining tests into a common testChandler Carruth2014-10-022-317/+470
| | | | | | | | | | | | | file. Some of these really don't make sense to test -- we're testing for the *lack* of combining two shuffles into one, presumably because the two would generate better shuffles in the end. But if you look at the generated code shown here, in many cases the generated code is, frankly, terrible. Or we combine any two generated shuffles back into a single instruction! I've left a FIXME to revisit these decisions. llvm-svn: 218859
* [x86] Merge the bitwise operation shuffle combining into the common testChandler Carruth2014-10-022-253/+468
| | | | | | file, adding assertions across the ISA variants for it. llvm-svn: 218858
* [x86] Update this test to run a full complement of the ISA extensions,Chandler Carruth2014-10-021-54/+92
| | | | | | | | | and use the new grouped FileCheck patterns to match them. No interesting changes yet, but this test is now in proper form to have the other shuffle combining tests merged into it. llvm-svn: 218857
* [x86] Minimize the parameters to this test for clarity.Chandler Carruth2014-10-021-2/+1
| | | | | | | | | | | The test has to do with DAG combines, and so it doesn't need the new vector shuffle lowering to be effective. Also, it has a nice in-IR triple string which we should really be using rather than command line flags (unless it varies form RUN-line to RUN-line). Finally, I much prefer letting LLVM synthesize the correct datalayout string from the triple rather than baking one in here that will just become stale. llvm-svn: 218856
* [x86] Add a comment clarifying that this test should span all manners ofChandler Carruth2014-10-021-0/+5
| | | | | | | | | | generic DAG combining of shuffles relevant to x86. My plan is to fold a bunch of the other DAG combining test cases into this one, while converting them to use the nice new FileCheck assertion syntax. llvm-svn: 218855
* [x86] Switch some of the new consolidated vector tests to useChandler Carruth2014-10-023-208/+239
| | | | | | | | | a bare-metal triple and have nice BB labels, etc. No significant change here, just tidying up to have a consistent set of OS-agnostic vector functionality here. llvm-svn: 218854
* Update to match strings output by lldb.Jason Molenda2014-10-021-1/+1
| | | | llvm-svn: 218853
* Add a couple of extra exepct strings so this test file keeps in sync with lldbJason Molenda2014-10-021-0/+2
| | | | | | a little better. llvm-svn: 218851
* Add SBExecutionContext.h to the list of headers to copy into the LLDB framework.Jason Molenda2014-10-021-0/+2
| | | | llvm-svn: 218850
* [PBQP] Update doxygen comment style to match the rest of the file. NFC.Lang Hames2014-10-021-28/+28
| | | | llvm-svn: 218849
* [PBQP] Add support for graph-level metadata to the PBQP graph. This will be usedLang Hames2014-10-022-0/+9
| | | | | | | | | in the future to attach useful information about the PBQP graph (e.g. the associated MachineFunction, pointers to regalloc passes) to the graph itself, making that information accessible to the solver. This should also allow the PBQPBuilder interface to be simplified. llvm-svn: 218848
* [ELF] Never mark the dynamic linker as DT_NEEDEDRafael Auler2014-10-021-0/+3
| | | | | | | | | | | | This patch adds logic to avoid putting the dynamic linker library (ld.so) as a DT_NEEDED entry in the dynamic table. It should only appear in PT_INTERP. This patch fixes SPEC programs 433, 445, 450, 453, 456, 462 when running on Ubuntu Linux x86_64 and when linking SPEC programs with LLD and glibc 2.19. http://reviews.llvm.org/D5573 llvm-svn: 218847
* [lld] [ELF] [MIPS] Remove duplicate logicRafael Auler2014-10-023-12/+0
| | | | | | | | | | | | | | Summary: With r218633, the logic that monitors which shared library symbols were used was copied from the MIPS lld backend to ELF classes, making it available to all ELF backends. However, this made the isDynSymEntryRequired() functions in MipsDynamicLibraryWriter.h/MipsELFWriters.h/MipsExecutableWriter.h to be duplicated logic, since this is already implemented in OutputELFWriter<>/DefaultLayout. This patch removes this duplicated code from MIPS. Reviewers: Bigcheese, shankarke Reviewed By: shankarke Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D5564 llvm-svn: 218846
* Add a mutex lock to StackFrame to protect race conditions forJason Molenda2014-10-022-3/+21
| | | | | | | | | updating its ivars. We've had a lot of crash reports and careful analysis shows that we've got multiple threads operating on the same StackFrame objects, changing their m_sc and m_flags ivars. <rdar://problem/18406111> llvm-svn: 218845
* Remove unused variable.Eric Christopher2014-10-021-1/+1
| | | | llvm-svn: 218844
* Remove test directories with no tests.Eric Christopher2014-10-022-0/+0
| | | | llvm-svn: 218843
* InstrProf: Simplify counting a file's regions when writing coverage (NFC)Justin Bogner2014-10-021-34/+24
| | | | | | | | | | | | When writing a coverage mapping we iterate through the mapping regions in order of FileID, but we were then repeatedly searching from the beginning of the list to count the number of regions with a given FileID. It is simpler and more efficient to search forward from the current iterator to find the number of regions. llvm-svn: 218842
* [asan] make new_array_cookie_test more robustKostya Serebryany2014-10-011-2/+7
| | | | llvm-svn: 218841
* Reduce the PR20399 test case.David Blaikie2014-10-014-79/+30
| | | | | | | | | I couldn't get something /really/ obvious, and I imagine Richard Smith might be able to provide some text explaining the sequence of steps that's demonstrated by these files - but at least it's a bit simpler now. llvm-svn: 218840
* [x86] Improve and correct how the new vector shuffle lowering wasChandler Carruth2014-10-012-23/+38
| | | | | | | | | | | | | | | | | | | matching and lowering 64-bit insertions. The first problem was that we weren't looking through bitcasts to discover that we *could* lower as insertions. Once fixed, we in turn weren't looking through bitcasts to discover that we could fold a load into the lowering. Once fixed, we weren't forming a SCALAR_TO_VECTOR node around the inserted element and instead were passing a scalar to a DAG node that expected a vector. It turns out there are some patterns that will "lower" this into the correct asm, but the rest of the X86 backend is very unhappy with such antics. This should fix a few more edge case regressions I've spotted going through the regression test suite to enable the new vector shuffle lowering. llvm-svn: 218839
* PR21101: tablegen's FastISel emitter should filter out unused functions.Bob Wilson2014-10-011-1/+16
| | | | | | | | | | | | | FastISel has a fixed set of virtual functions that are overridden by the tablegen-generated code for each target. These functions are distinguished by the kinds of operands, e.g., register + immediate = "ri". The FastISel emitter has been blindly emitting functions with different combinations of operand kinds, even for combinations that are completely unused by FastISel, e.g., "fastEmit_rrr". Change to filter out functions that will be irrelevant for FastISel and do not bother generating the code for them. Also add explicit "override" keywords for the virtual functions that are overridden. llvm-svn: 218838
* Add SBExecutionContext.cpp to this file as well, as the commentJim Ingham2014-10-011-0/+1
| | | | | | in source/API/CMakeLists.txt instructs... llvm-svn: 218837
* [MCJIT] Don't crash in debugging output for sections that aren't emitted.Lang Hames2014-10-011-0/+5
| | | | llvm-svn: 218836
* Add documentation about the new SBExecutionContext for Python commands ↵Enrico Granata2014-10-011-0/+20
| | | | | | feature. This marks the end of rdar://18142728 llvm-svn: 218835
* Allow Python commands to optionally take an SBExecutionContext argument in ↵Enrico Granata2014-10-0112-9/+46
| | | | | | case they need to handle 'where they want to act' separately from the notion of 'currently-selected entity' that is associated to the debugger. Do this in an (hopefully) non-breaking way by running an argcount check before passing in the new argument. Update the test case to also check for this new feature. www update to follow llvm-svn: 218834
OpenPOWER on IntegriCloud