summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [clang-tidy] Refactor: Rename clang-tidy readability check files and classes ↵Alexander Kornienko2015-03-099-32/+31
| | | | | | | | | | | | | to follow naming conventions Classes are named WhateverCheck, files are WhateverCheck.cpp and` WhateverCheck.h` http://reviews.llvm.org/D8144 Patch by Richard Thomson! llvm-svn: 231650
* Add CloudABI locale names to platform_support.h.Ed Schouten2015-03-091-0/+10
| | | | | | | | On CloudABI we should append the timezone name to the end of the locale (e.g., nl_NL.UTF-8@Europe/Amsterdam). By fixing the locale names we can already let a lot of locale related tests pass. llvm-svn: 231649
* [clang-tidy] Refactor: Rename clang-tidy misc check files and classes to ↵Alexander Kornienko2015-03-0910-48/+48
| | | | | | | | | | | | | follow naming conventions Classes are named WhateverCheck, files are named WhateverCheck.cpp and WhateverCheck.h. http://reviews.llvm.org/D8145 Patch by Richard Thomson! llvm-svn: 231648
* At least on NetBSD, sys/errno.h and errno.h are different, so use theJoerg Sonnenberger2015-03-091-1/+1
| | | | | | correct header to get errno. llvm-svn: 231647
* [Mips] Remove unused includeSimon Atanasyan2015-03-091-1/+0
| | | | | | No functional changes. llvm-svn: 231646
* [Mips] Remove redundant namespace qualifiersSimon Atanasyan2015-03-092-41/+41
| | | | | | No functional changes. llvm-svn: 231645
* [Mips] Rename local variablesSimon Atanasyan2015-03-091-6/+5
| | | | | | No functional changes. llvm-svn: 231644
* [Mips] Implement R_MIPS_SUB relocation handlingSimon Atanasyan2015-03-092-0/+68
| | | | llvm-svn: 231643
* [Mips] Implement R_MIPS_64 relocation handlingSimon Atanasyan2015-03-094-32/+203
| | | | llvm-svn: 231642
* [Mips] Refactoring of relocation handling functionsSimon Atanasyan2015-03-094-239/+232
| | | | | | | | | | | 1. Move relocation addendum reading code to the MipsRelocationHandler class to reduce code duplication. 2. Factor out the relocations calculation code into the separate function to be ready to handle MIPS N64 ABI relocation chains. No functional changes. llvm-svn: 231641
* [Mips] Show error message and stop linking in case of cross mode jump errorsSimon Atanasyan2015-03-094-17/+23
| | | | llvm-svn: 231640
* [Mips] Fix incorrect handling of cross mode jumpsSimon Atanasyan2015-03-093-27/+43
| | | | | | | | We should not take in account a type of "source" symbol. Cross mode jump adjustment is requred when target symbol and relocation belong to different (regular/microMIPS) instruction sets. llvm-svn: 231639
* Report the actual user register count from NativeRegisterContextLinux_x86_64Tamas Berghammer2015-03-092-0/+16
| | | | | | | | | Thic change have effect wehn the AVX registers aren't available with reporting the count of user registers without them. Differential revision: http://reviews.llvm.org/D8111 llvm-svn: 231638
* Fix a menu issue. patch by Vassil VassilevSylvestre Ledru2015-03-091-1/+1
| | | | llvm-svn: 231637
* clang-format: Don't remove newline if macro ends in access specifier.Daniel Jasper2015-03-092-1/+26
| | | | | | | | | | | I.e.: #define A public: // The new line before this line would be removed. int a; llvm-svn: 231636
* Revert r231630 - Run LICM pass after loop unrolling pass.Kevin Qin2015-03-093-53/+7
| | | | | | As it broke llvm bootstrap. llvm-svn: 231635
* Fix a bug in the LLParser where we failed to diagnose landingpads with ↵Owen Anderson2015-03-092-6/+14
| | | | | | | | | | non-constant clause operands. Fixing this also exposed a related issue where the landingpad under construction was not cleaned up when an error was raised, which would cause bad reference errors before the error could actually be printed. llvm-svn: 231634
* Shorten user report message slightlyTobias Grosser2015-03-092-4/+3
| | | | llvm-svn: 231633
* [AArch64] Enable partial & runtime unrolling on cortex-a57Kevin Qin2015-03-094-0/+122
| | | | | | | | For inner one of nested loops, it is more likely to be a hot loop, and the runtime check can be promoted out from patch 0001, so the overhead is less, we can try a doubled threshold to unroll more loops. llvm-svn: 231632
* Introduce runtime unrolling disable matadata and use it to mark the scalar ↵Kevin Qin2015-03-096-4/+107
| | | | | | | | | | | loop from vectorization. Runtime unrolling is an expensive optimization which can bring benefit only if the loop is hot and iteration number is relatively large enough. For some loops, we know they are not worth to be runtime unrolled. The scalar loop from vectorization is one of the cases. llvm-svn: 231631
* Run LICM pass after loop unrolling pass.Kevin Qin2015-03-093-7/+53
| | | | | | | | | Runtime unrollng will introduce a runtime check in loop prologue. If the unrolled loop is a inner loop, then the proglogue will be inside the outer loop. LICM pass can help to promote the runtime check out if the checked value is loop invariant. llvm-svn: 231630
* [MachO] Use setter for globalsAreDeadStripRoots. NFC intended.Davide Italiano2015-03-091-2/+2
| | | | llvm-svn: 231629
* Warn when jumping out of a __finally block via goto.Nico Weber2015-03-092-10/+20
| | | | | | | | | | | | | | This only warns on direct gotos and indirect gotos with a unique label (`goto *&&label;`). Jumping out ith a true indirect goto is already an error. This isn't O(1), but goto statements are less common than continue, break, and return. Also, the GetDeepestCommonScope() call in the same function does the same amount of work, so this isn't worse than what's there in a complexity sense, and it should be pretty fast in practice. This is the last piece that was missing in r231623. llvm-svn: 231628
* Test: Use layout-after instead of layout-before.Rui Ueyama2015-03-094-28/+14
| | | | | | | Update the tests so that they use layout-after instead of layout-before. In all other places, we use layout-afters as primary edges. llvm-svn: 231627
* InstCombine: fix fold "fcmp x, undef" to account for NaNMehdi Amini2015-03-094-13/+67
| | | | | | | | | | | | | | | | | | | | | | | | Summary: See the two test cases. ; Can fold fcmp with undef on one side by choosing NaN for the undef ; Can fold fcmp with undef on both side ; fcmp u_pred undef, undef -> true ; fcmp o_pred undef, undef -> false ; because whatever you choose for the first undef ; you can choose NaN for the other undef Reviewers: hfinkel, chandlerc, majnemer Reviewed By: majnemer Subscribers: majnemer, llvm-commits Differential Revision: http://reviews.llvm.org/D7617 From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 231626
* Fix a theoretical bug when ParseCompoundStatement() returns StmtError.Nico Weber2015-03-093-1/+8
| | | | | | | | ParseCompoundStatement() currently never returns StmtError, but if it did, Sema would keep the __finally scope on its stack indefinitely. Explicitly add an error callback that clears it. llvm-svn: 231625
* DCE: isArrayMalloc() is not used neither in LLVM nor ClangMehdi Amini2015-03-092-23/+0
| | | | | From: Mehdi Amini <mehdi.amini@apple.com> llvm-svn: 231624
* Warn when jumping out of a __finally block via continue, break, return, __leave.Nico Weber2015-03-097-10/+116
| | | | | | | | | | | | | | | Since continue, break, return are much more common than __finally, this tries to keep the work for continue, break, return O(1). Sema keeps a stack of active __finally scopes (to do this, ActOnSEHFinally() is split into ActOnStartSEHFinally() and ActOnFinishSEHFinally()), and the various jump statements then check if the current __finally scope (if present) is deeper than then destination scope of the jump. The same warning for goto statements is still missing. This is the moral equivalent of MSVC's C4532. llvm-svn: 231623
* Fix typo in comment.Nico Weber2015-03-091-1/+1
| | | | llvm-svn: 231622
* Wrap to 80 columns. No behavior change.Nico Weber2015-03-091-3/+3
| | | | llvm-svn: 231621
* [clang-tidy] Fix assertion when a dependent expression is used in an assert.Alexander Kornienko2015-03-092-1/+5
| | | | llvm-svn: 231620
* Simplify boolean expressions in clang with clang-tidyDavid Blaikie2015-03-097-18/+9
| | | | | | | | Patch by Richard (legalize at xmission dot com). Differential Revision: http://reviews.llvm.org/D8155 llvm-svn: 231619
* Resolver: Fix incorrect DenseMap mapping info.Rui Ueyama2015-03-091-4/+6
| | | | | | | | | | | | Previously, getEmptyKey and getTombstoneKey return the same value in the sense of isEqual defined by the same class, although they need to be distinct values. This could confuse DenseMap. We didn't see any issue by this wrong code because we don't delete elements from the symbol table. We only add or replace elements. But this is a bug and needs to be fixed anyway. llvm-svn: 231618
* Simplify expressions involving boolean constants with clang-tidyDavid Blaikie2015-03-0915-20/+19
| | | | | | | | Patch by Richard (legalize at xmission dot com). Differential Revision: http://reviews.llvm.org/D8154 llvm-svn: 231617
* Remove unused function.Rui Ueyama2015-03-091-12/+0
| | | | llvm-svn: 231616
* PECOFF: Create layout-afters instead of layout-befores.Rui Ueyama2015-03-093-11/+11
| | | | | | | | | | | | | | | | All readers except PE/COFF reader create layout-after edges to preserve the original symbol order. PE/COFF uses layout-before edges as primary edges for no reason. This patch makes PE/COFF reader to create layout-after edges. Resolver is updated to recognize reverse edges of layout-after edges in the garbage collection pass. Now we can retire layout-before edges. I don't do that in this patch because if I do, I would have updated many tests to replace all occurrrences of "layout-before" with "layout-after". So that's a TODO. llvm-svn: 231615
* PECOFF: Define and use BaseReloc type instead of std::pair.Rui Ueyama2015-03-081-33/+29
| | | | | | | "first" and "second" are not easy to memorize. Define a type to use meaningful names. llvm-svn: 231614
* Teach DataLayout to infer a plausible alignment for things even when nothing ↵Owen Anderson2015-03-082-3/+24
| | | | | | is specified by the user. llvm-svn: 231613
* [Formating] Fix formatingJohannes Doerfert2015-03-081-3/+3
| | | | llvm-svn: 231612
* Revert r231552: Resolver: optimize fallback atoms.Rui Ueyama2015-03-081-4/+5
| | | | | | This patch broke a buildbot. llvm-svn: 231611
* Re-commit r231545: PECOFF: Do not add extraneous symbols to the dead strip rootRui Ueyama2015-03-081-5/+3
| | | | | | | That commit was reverted in r231582 as it was a culprit for buildbot breakage. Turned out it's not. llvm-svn: 231610
* Avoid warnings on !PowerPCJoerg Sonnenberger2015-03-081-1/+2
| | | | llvm-svn: 231609
* Don't produce warnings on !PowerPC.Joerg Sonnenberger2015-03-083-3/+6
| | | | llvm-svn: 231608
* [FIX] Add and force initialization for Pass * memberJohannes Doerfert2015-03-081-2/+2
| | | | | | | r231268 accidently dropped the initialization that is re-introduced here. The const will enforce initialization for the future. llvm-svn: 231607
* [FIX] Use the correct functions to extract the LB/UB from a rangeJohannes Doerfert2015-03-081-6/+14
| | | | | | | The current tests will continue to cover this code and more will be added when non-affine loops are supported. llvm-svn: 231606
* Properly initialize the parser_crash debug token.Benjamin Kramer2015-03-081-0/+2
| | | | | | Found by msan. llvm-svn: 231605
* Fix the MSVC build.Benjamin Kramer2015-03-081-2/+0
| | | | | | Type traits are hard. llvm-svn: 231604
* Make Token a real POD type.Benjamin Kramer2015-03-082-5/+10
| | | | | | | We copy them around a lot and skip construction in favor of startToken, make the default construction trivial to reflect that. llvm-svn: 231603
* Skip all lldb-mi tests on LinuxVince Harron2015-03-085-0/+26
| | | | | | | lldb-mi tests have been failing for a while on the buildbots. Disabling until someone has a chance to fix. llvm-svn: 231602
* [X86][AVX] Fix wrong lowering of VPERM2X128 nodesAndrea Di Biagio2015-03-083-9/+86
| | | | | | | | | | | | | | | | | | | | | | There were cases where the backend computed a wrong permute mask for a VPERM2X128 node. Example: \code define <8 x float> @foo(<8 x float> %a, <8 x float> %b) { %shuffle = shufflevector <8 x float> %a, <8 x float> %b, <8 x i32> <i32 undef, i32 undef, i32 6, i32 7, i32 undef, i32 undef, i32 6, i32 7> ret <8 x float> %shuffle } \code end Before this patch, llc (with -mattr=+avx) emitted the following vperm2f128: vperm2f128 $0, %ymm0, %ymm0, %ymm0 # ymm0 = ymm0[0,1,0,1] With this patch, llc emits a vperm2f128 with a correct permute mask: vperm2f128 $17, %ymm0, %ymm0, %ymm0 # ymm0 = ymm0[2,3,2,3] Differential Revision: http://reviews.llvm.org/D8119 llvm-svn: 231601
OpenPOWER on IntegriCloud