summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* Let RecursiveASTVisitor visit array index VarDeclsNico Weber2016-01-223-0/+31
| | | | | | | | | | | | An implicit copy ctor creates loop VarDecls that hang off CXXCtorInitializer. RecursiveASTVisitor used to not visit them, so that they didn't show up in the parent map used by ASTMatchers, causing asserts() when the implicit DeclRefExpr() in a CXXCtorInitializer referred to one of these VarDecls. Fixes PR26227. http://reviews.llvm.org/D16413 llvm-svn: 258503
* [OpenMP] Sema for depend clause on target exit data directive.Arpith Chacko Jacob2016-01-223-2/+232
| | | | | | | | | | | Summary: Accept depend clause on target exit data directive in sema and add test cases. Reviewers: ABataev Differential Revision: http://reviews.llvm.org/D16401 llvm-svn: 258502
* Revert "Enable test log collection from remote debug servers"Pavel Labath2016-01-221-18/+6
| | | | | | | | Unfortunately, this turns out not to be working on the lldb-server tests, as there the server is started in a different way. Since this was a bit of a hack to start with, I am removing it until I can solve the problem more holistically. llvm-svn: 258501
* Replace some tabs with spaces.Nico Weber2016-01-221-4/+3
| | | | llvm-svn: 258500
* Use of llvm_unreachable instead of warning in ↵George Rimar2016-01-221-5/+2
| | | | | | EhFrameHeader<ELFT>::assignEhFrame(). llvm-svn: 258499
* ScopDetection: Do not detect regions with irreducible control as scopsTobias Grosser2016-01-225-0/+250
| | | | | | | | | | | | | | Polly currently does not support irreducible control and it is probably not worth supporting. This patch adds code that checks for irreducible control and refuses regions containing irreducible control. Polly traditionally had rather restrictive checks on the control flow structure which would have refused irregular control, but within the last couple of months most of the control flow restrictions have been removed. As part of this generalization we accidentally allowed irregular control flow. Contributed-by: Karthik Senthil and Ajith Pandel llvm-svn: 258497
* Remove irreducible control flow from test caseTobias Grosser2016-01-221-7/+13
| | | | | | | | | | | | | | | The test case we look at does not necessarily require irreducible control flow, but a normal loop is sufficient to create a non-affine region containing more than one basic block that dominates the exit node. We replace this irreducible control flow with a normal loop for the following reasons: 1) This is easier to understand 2) We will subsequently commit a patch that ensures Polly does not process irreducible control flow. Within non-affine regions, we could possibly handle irreducible control flow. llvm-svn: 258496
* [OPENMP] Generalize codegen for 'sections'-based directive.Alexey Bataev2016-01-2210-203/+183
| | | | | | If 'sections' directive has only one sub-section, the code for 'single'-based directive was emitted. Removed this codegen, because it causes crashes in different cases. llvm-svn: 258495
* www: Update links to LLVM bug trackerTobias Grosser2016-01-221-4/+4
| | | | | | | | Polly recently got its own product in LLVM's bug tracker, which will make it easier for people to file Polly bugs. This change updates the bugtracker links on the Polly website. llvm-svn: 258494
* [analyzer] Update SATestBuild.py to handle spaces in paths.Devin Coughlin2016-01-221-10/+10
| | | | | | | The Jenkins workspace on the new Green Dragon builder for the static analyzer has spaces in its path. llvm-svn: 258493
* 2 missing intrinsics _cvtss_sh and _mm_cvtps_ph were added to the intrinsics ↵Ekaterina Romanova2016-01-222-3/+28
| | | | | | | | header f16intrin.h Differential Revision: http://reviews.llvm.org/D16177 llvm-svn: 258492
* Add __uncvref type for use in later patchesEric Fiselier2016-01-221-0/+7
| | | | llvm-svn: 258491
* [TableGen] Make a class member local to the function that populates it and ↵Craig Topper2016-01-221-1/+2
| | | | | | consumes it later. NFC llvm-svn: 258490
* [TableGen] Reorder fields in AsmWriterOperand to remove padding and reduce ↵Craig Topper2016-01-221-6/+5
| | | | | | size. NFC llvm-svn: 258489
* [TableGen] Remove the CGIOpNo from AsmWriterOperand as its not used for ↵Craig Topper2016-01-222-8/+3
| | | | | | anything. NFC llvm-svn: 258488
* [PGO] eliminate use of static variableXinliang David Li2016-01-223-63/+71
| | | | llvm-svn: 258486
* Use "_$" prefix instead of "$" for dynamic checker function inserted by LLDB ↵Bhushan D. Attarde2016-01-221-2/+2
| | | | | | | | | | | | | | | during expression evaluation SUMMARY: The symbol "$" has a special meaning for MIPS i.e it is marker for temporary symbols for MIPS. So this patch uses additional _ prefix for "$__lldb_valid_pointer_check" so that it wont be marked as temporary symbol in case of MIPS. Reviewers: clayborg, spyffe Subscribers: dean, emaste, mohit.bhakkad, sagar, jaydeep, lldb-commits Differential http://reviews.llvm.org/D14111 llvm-svn: 258485
* NFC WebAssembly: update linksJF Bastien2016-01-221-2/+2
| | | | | | I got a vanity URL, and moved the github waterfall repo. llvm-svn: 258484
* [SelectionDAG] Fold more offsets into GlobalAddressesDan Gohman2016-01-228-86/+855
| | | | | | | | This reapplies r258296 and r258366, and also fixes an existing bug in SelectionDAG.cpp's isMemSrcFromString, neglecting to account for the offset in a GlobalAddressSDNode, which is uncovered by those patches. llvm-svn: 258482
* [opaque pointer types] [NFC] Fix fallout from DataLayout::getIndexedOffset ↵Eduard Burtescu2016-01-221-3/+5
| | | | | | changes (rL258478). llvm-svn: 258481
* Replace Type::getInt32Ty() and comparison by isIntegerTy(32). NFC.Manuel Jacob2016-01-221-3/+1
| | | | llvm-svn: 258480
* Revert r258473 as it's breaking the build with libc++Ivan Krasin2016-01-224-57/+17
| | | | | | | | Reviewers: kcc Differential Revision: http://reviews.llvm.org/D16441 llvm-svn: 258479
* [opaque pointer types] [NFC] DataLayout::getIndexedOffset: take source ↵Eduard Burtescu2016-01-225-32/+27
| | | | | | | | | | | | | | element type instead of pointer type and rename to getIndexedOffsetInType. Summary: Reviewers: mjacob, dblaikie Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16282 llvm-svn: 258478
* [opaque pointer types] [NFC] FindAvailableLoadedValue: take LoadInst instead ↵Eduard Burtescu2016-01-225-8/+8
| | | | | | | | | | | | of just the pointer. Reviewers: mjacob, dblaikie Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16422 llvm-svn: 258477
* [Docs] Slightly update LSan documentation.Alexey Samsonov2016-01-222-15/+50
| | | | llvm-svn: 258476
* [opaque pointer types] [NFC] gep_type_{begin,end} now take source element ↵Eduard Burtescu2016-01-223-11/+8
| | | | | | | | | | | | type and address space. Reviewers: mjacob, dblaikie Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16436 llvm-svn: 258474
* Use std::piecewise_constant_distribution instead of ad-hoc binary search.Ivan Krasin2016-01-224-17/+57
| | | | | | | | | | | | | | | | | | Summary: Fix the issue with the most recently discovered unit receiving much less attention. Note: I had to change the seed for one test to make it pass. Alternatively, the number of runs could be increased. I believe that the average time of 'foo' discovery is not increased, just seed=1 was particularly convenient for the previous PRNG scheme used. Reviewers: aizatsky, kcc Subscribers: llvm-commits, kcc Differential Revision: http://reviews.llvm.org/D16419 llvm-svn: 258473
* [opaque pointer types] [NFC] Add an explicit type argument to ↵Eduard Burtescu2016-01-227-29/+29
| | | | | | | | | | | | ConstantFoldLoadFromConstPtr. Reviewers: mjacob, dblaikie Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16418 llvm-svn: 258472
* Do not lower VSETCC if operand is an f16 vectorPirama Arumuga Nainar2016-01-223-0/+361
| | | | | | | | | | | | | | | | | Summary: SETCC with f16 vectors has OperationAction set to Expand but still gets lowered to FCM* intrinsics based on its result type. This patch skips lowering of VSETCC if the operand is an f16 vector. v4 and v8 tests included. Reviewers: ab, jmolloy Subscribers: srhines, llvm-commits Differential Revision: http://reviews.llvm.org/D15361 llvm-svn: 258471
* [OpenMP] Sema for depend clause on target enter data directive.Arpith Chacko Jacob2016-01-223-2/+232
| | | | | | | | | | | Summary: Accept depend clause on target enter data directive in sema and add test cases. Reviewers: ABataev Differential Revision: http://reviews.llvm.org/D16400 llvm-svn: 258466
* Revert "[SelectionDAG] Fold more offsets into GlobalAddresses"Reid Kleckner2016-01-227-828/+84
| | | | | | | | | | | | | | This reverts r258296 and the follow up r258366. With this change, we miscompiled the following program on Windows: #include <string> #include <iostream> static const char kData[] = "asdf jkl;"; int main() { std::string s(kData + 3, sizeof(kData) - 3); std::cout << s << '\n'; } llvm-svn: 258465
* [libFuzzer] don't do expensive memmem if the result will not be usedKostya Serebryany2016-01-221-0/+2
| | | | llvm-svn: 258462
* [analyzer] Suppress nullability warning for defensive super initializer idiom.Devin Coughlin2016-01-222-5/+84
| | | | | | | | | | | | | | | A common idiom in Objective-C initializers is for a defensive nil-check on the result of a call to a super initializer: if (self = [super init]) { ... } return self; To avoid warning on this idiom, the nullability checker now suppress diagnostics for returns of nil on syntactic 'return self' even in initializers with non-null return types. llvm-svn: 258461
* [OpenMP] Sema for depend clause on target directive.Arpith Chacko Jacob2016-01-223-0/+103
| | | | | | | | | | | Summary: Accept depend clause on target directive in sema and add test cases. Reviewers: ABataev Differential Revision: http://reviews.llvm.org/D16375 llvm-svn: 258460
* [OpenMP] Parsing + Sema for nowait clause on target exit data directive.Arpith Chacko Jacob2016-01-223-0/+82
| | | | | | | | | | | Summary: Accept nowait clause on target exit data directive in sema and add test cases. Reviewers: ABataev Differential Revision: http://reviews.llvm.org/D16362 llvm-svn: 258459
* [ThinLTO] Do metadata linking during batch function importingTeresa Johnson2016-01-222-29/+7
| | | | | | | | | | | | | | | | | | | | Summary: Since we are currently not doing incremental importing there is no need to link metadata as a postpass. The module linker will only link in the imported subroutines due to the functionality added by r256003. (Note that the metadata postpass linking functionalitiy is still used by llvm-link, and may be needed here in the future if a more incremental strategy is adopted.) Reviewers: joker.eph Subscribers: joker.eph, llvm-commits Differential Revision: http://reviews.llvm.org/D16424 llvm-svn: 258458
* [OpenMP] Parsing + Sema for nowait clause on target enter data directive.Arpith Chacko Jacob2016-01-223-0/+82
| | | | | | | | | | | Summary: Accept nowait clause on target enter data directive in sema and add test cases. Reviewers: ABataev Differential Revision: http://reviews.llvm.org/D16361 llvm-svn: 258457
* [opaque pointer types] [NFC] Take advantage of get{Source,Result}ElementType ↵Eduard Burtescu2016-01-211-45/+58
| | | | | | | | | | | | | | when folding GEPs. Summary: Reviewers: mjacob, dblaikie Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D16302 llvm-svn: 258456
* move function definitions so we don't need separate declarations ; NFCISanjay Patel2016-01-211-67/+63
| | | | llvm-svn: 258455
* .clang-tidy for sanitizer package to override root llvm styleMike Aizatsky2016-01-211-0/+12
| | | | | | | | | | Summary: sanitizer-common follows Google code style, override clang-tidy config. Differential Revision: http://reviews.llvm.org/D16373 llvm-svn: 258449
* Fix TestImport.py to work with Python 3.5.Adrian McCarthy2016-01-211-2/+4
| | | | | | Differential Revision: http://reviews.llvm.org/D16431 llvm-svn: 258448
* [MSVC Compat] Don't omit frame pointers if /Oy- is specified before /O2David Majnemer2016-01-212-1/+6
| | | | | | | | | Microsoft's documentation states that specifying /Oy- after the /O[12x] options disables frame-pointer omission. What it does *not* state is that it also disables frame-pointer omission if /Oy- is specified before /O[12x]. llvm-svn: 258447
* [LibCallSimplifier] refactor FP function signature checks ; NFCISanjay Patel2016-01-211-60/+24
| | | | | | | | | Use the helper function added in r258428. The check should really be hoisted to the caller of all of these optimize* functions, but that's another step. llvm-svn: 258446
* avoid variable shadowing; NFCSanjay Patel2016-01-211-2/+2
| | | | llvm-svn: 258445
* remove unnecessary variable; NFCSanjay Patel2016-01-211-2/+1
| | | | llvm-svn: 258444
* Always try to read DW_TAG_typedef types from DWO files first if we can. Greg Clayton2016-01-211-1/+24
| | | | | | | | | | | | | | | A lot of C code uses code like: typedef struct { int a; } FooType; This creates debug info with an anonymous struct (a DW_TAG_structure_type with no DW_AT_name) and then a DW_TAG_typedef that points to the anonymous structure type. When a typedef is from a module and clang uses -gmodules and -fmodules, then we can end up trying to resolve an anonymous structure type in a DWO symbol file. This doesn't work very well when the structuture has no name, so we now check if a typedef comes from a module, and we directly resolve the typedef type in the module and copy it over. The version we copy from the module of course is correctly able to find the structure in the DWO symbol file, so this fixes the issues we run into. <rdar://problem/24092915> llvm-svn: 258443
* Avoid unnecessary stack realignment in musttail thunks with SSE2 enabledReid Kleckner2016-01-213-2/+12
| | | | | | | | | | | The X86 musttail implementation finds register parameters to forward by running the calling convention algorithm until a non-register location is returned. However, assigning a vector memory location has the side effect of increasing the function's stack alignment. We shouldn't increase the stack alignment when we are only looking for register parameters, so this change conditionalizes it. llvm-svn: 258442
* [OpenMP] Parsing + Sema for nowait clause on target directiveArpith Chacko Jacob2016-01-213-0/+31
| | | | | | | | | | | Summary: Allow nowait clause on target directive in sema and add test cases. Reviewers: ABataev Differential Revision: http://reviews.llvm.org/D16358 llvm-svn: 258441
* [X86][SSE] Improve i16 splatting shufflesSimon Pilgrim2016-01-2110-212/+189
| | | | | | | | | | | | Better handling of the annoying pshuflw/pshufhw ops which only shuffle lower/upper halves of a vector. Added vXi16 unary shuffle support for cases where i16 elements (from the same half of the source) are being splatted to the whole of one of the halves. This avoids the general lowering case which must shuffle the 32-bit elements first - meaning that we used to end up with unnecessary duplicate pshuflw/pshufhw shuffles. Note this has the side effect of a lot of SSSE3 test cases no longer needing to use PSHUFB, as it falls below the 3 op combine threshold for when PSHUFB is typically worth it. I've raised PR26183 to discuss if the threshold should be changed and whether we need to make it more specific to the target CPU. Differential Revision: http://reviews.llvm.org/D14901 llvm-svn: 258440
* In test-release.sh, only run `uname -s` once. NFC.Dimitry Andric2016-01-211-3/+4
| | | | llvm-svn: 258439
OpenPOWER on IntegriCloud