This project is mirrored from https://github.com/llvm-doe-org/llvm-project.git. Pull mirroring updated .
  1. 24 Oct, 2019 1 commit
  2. 23 Oct, 2019 33 commits
    • Chandler Carruth's avatar
      Improve Clang's getting involved document and make it more inclusive in wording. · dc1499b9
      Chandler Carruth authored
      Summary: Working with Meike and others to improve the wording in this document.
      
      Reviewers: klimek
      
      Subscribers: mcrosier, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D69351
      dc1499b9
    • David Tenty's avatar
      Use portable flag with nm in extract_symbols.py · bf869683
      David Tenty authored
      Summary:
      nm is one of the tools that extract_symbols.py can use to extract
      symbols from llvm libraries as part of the build process. This patch
      updates the invocation of nm to use the -P POSIX option for "portable
      output" so we get a consistently parsable output format on all
      platforms.
      
      A link to the relevant nm format: https://pubs.opengroup.org/onlinepubs/9699919799/utilities/nm.html
      
      Reviewers: hubert.reinterpretcast, stevewan, sfertile
      
      Reviewed By: stevewan
      
      Subscribers: llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D69004
      bf869683
    • Meike Baumgärtner's avatar
      Improve language in GettingStarted.rst · 23fdd513
      Meike Baumgärtner authored
      This patch was reviewed and approved by chandlerc.
      
      "Getting Started with the LLVM System" is the first point of contact for many newcomers in the LLVM community.
       * Make the first two paragraphs more welcoming
       * Use more inclusive language
      23fdd513
    • Stephan T. Lavavej's avatar
      7c9844b6
    • Chandler Carruth's avatar
      Remove a no longer accurate sentence from the coding standards. · bf2975ec
      Chandler Carruth authored
      (And test my commit access. We're working on larger changes here.)
      bf2975ec
    • Louis Dionne's avatar
      [NFC] Strip trailing whitespace from libc++ · 6b77ebdc
      Louis Dionne authored
      6b77ebdc
    • Hans Wennborg's avatar
      Revert 4334892e "[DAGCombine][ARM] x ==/!= c -> (x - c) ==/!= 0 iff '-c'... · 684ebc60
      Hans Wennborg authored
      Revert 4334892e "[DAGCombine][ARM] x ==/!= c  ->  (x - c) ==/!= 0  iff '-c' can be folded into the x node."
      
      This broke various Windows builds, see comments on the Phabricator
      review.
      
      This also reverts the follow-up 20bf0cf2.
      
      > Summary:
      > This fold, helps recover from the rest of the D62266 ARM regressions.
      > https://rise4fun.com/Alive/TvpC
      >
      > Note that while the fold is quite flexible, i've restricted it
      > to the single interesting pattern at the moment.
      >
      > Reviewers: efriedma, craig.topper, spatel, RKSimon, deadalnix
      >
      > Reviewed By: deadalnix
      >
      > Subscribers: javed.absar, kristof.beyls, llvm-commits
      >
      > Tags: #llvm
      >
      > Differential Revision: https://reviews.llvm.org/D62450
      684ebc60
    • Raphael Isemann's avatar
      [lldb] Add nodebug attribute to import-std-module/sysroot test · d01fd2f3
      Raphael Isemann authored
      Summary:
      So far we rely on the default argument and the fact that we don't call this
      inline function in our actual `main.cpp` to make sure that this function can only
      be called if LLDB loads this header as a C++ module. This patch just adds
      the nodebug attribute as yet another measure to make sure LLDB can't call this
      function without the standard module loaded. Note that the test is already
      requiring clang for the sysroot setup, so its fine that this is a Clang specific attribute.
      
      Reviewers: friss, labath
      
      Subscribers: JDevlieghere, lldb-commits
      
      Tags: #lldb
      
      Differential Revision: https://reviews.llvm.org/D68861
      d01fd2f3
    • Kevin P. Neal's avatar
      Minor movement of one function with now-correct strictfp attribute to pass · b689cc64
      Kevin P. Neal authored
      against the latest version of D68233.
      b689cc64
    • Sam McCall's avatar
      [clangd] abort if shutdown takes more than a minute. · 8bda5f20
      Sam McCall authored
      Summary:
      A certain class of bug (e.g. infloop on an AST worker thread) currently means
      clangd never terminates, even if the editor shuts down the protocol and closes
      our stdin, and the main thread recognizes that.
      
      Instead, let's wait 60 seconds for threads to finish cleanly, and then crash
      if they haven't.
      
      (Obviously, we should still fix these bugs).
      
      Reviewers: kadircet
      
      Subscribers: MaskRay, jkorous, arphaman, jfb, usaxena95, cfe-commits, ilya-biryukov
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D69329
      8bda5f20
    • Roman Lebedev's avatar
      [Analysis] Update Analysis/LazyValueAnalysis/lvi-after-jumpthreading.ll · 60286818
      Roman Lebedev authored
      I should have updated it in 1f665046
      but i didn't even realize those tests were there.
      60286818
    • stevewan's avatar
      Fix non-portable GNU diff option · 342c02d0
      stevewan authored
      Summary: This is a fix to revision D68839 and rL375023. This patch substitutes POSIX option "-b" for the non-portable GNU option "--strip-trailing-cr".
      
      Reviewers: daltenty, hubert.reinterpretcast
      
      Reviewed By: daltenty
      
      Subscribers: mehdi_amini, hiraditya, steven_wu, dexonsmith, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D69342
      342c02d0
    • Roman Lebedev's avatar
      [LVI][NFC] Factor solveBlockValueSaturatingIntrinsic() out of solveBlockValueIntrinsic() · 8eda8f8c
      Roman Lebedev authored
      Now that there's SaturatingInst class, this is cleaner.
      8eda8f8c
    • Roman Lebedev's avatar
      [LVI][CVP] LazyValueInfoImpl::solveBlockValueBinaryOp(): use no-wrap flags from `add` op · 1f665046
      Roman Lebedev authored
      Summary:
      This was suggested in https://reviews.llvm.org/D69277#1717210
      In this form (this is what was suggested, right?), the results aren't staggering
      (especially since given LVI cross-block focus)
      this does catch some things (as per test-suite), but not too much:
      
      | statistic                                        |       old |       new | delta | % change |
      | correlated-value-propagation.NumAddNSW           |      4981 |      4982 |     1 |  0.0201% |
      | correlated-value-propagation.NumAddNW            |     12125 |     12126 |     1 |  0.0082% |
      | correlated-value-propagation.NumCmps             |      1199 |      1202 |     3 |  0.2502% |
      | correlated-value-propagation.NumDeadCases        |       112 |       111 |    -1 | -0.8929% |
      | correlated-value-propagation.NumMulNSW           |       275 |       278 |     3 |  1.0909% |
      | correlated-value-propagation.NumMulNUW           |      1323 |      1326 |     3 |  0.2268% |
      | correlated-value-propagation.NumMulNW            |      1598 |      1604 |     6 |  0.3755% |
      | correlated-value-propagation.NumNSW              |      7158 |      7167 |     9 |  0.1257% |
      | correlated-value-propagation.NumNUW              |     13304 |     13310 |     6 |  0.0451% |
      | correlated-value-propagation.NumNW               |     20462 |     20477 |    15 |  0.0733% |
      | correlated-value-propagation.NumOverflows        |         4 |         7 |     3 | 75.0000% |
      | correlated-value-propagation.NumPhis             |     15366 |     15381 |    15 |  0.0976% |
      | correlated-value-propagation.NumSExt             |      6273 |      6277 |     4 |  0.0638% |
      | correlated-value-propagation.NumShlNSW           |      1172 |      1171 |    -1 | -0.0853% |
      | correlated-value-propagation.NumShlNUW           |      2793 |      2794 |     1 |  0.0358% |
      | correlated-value-propagation.NumSubNSW           |       730 |       736 |     6 |  0.8219% |
      | correlated-value-propagation.NumSubNUW           |      2044 |      2046 |     2 |  0.0978% |
      | correlated-value-propagation.NumSubNW            |      2774 |      2782 |     8 |  0.2884% |
      | instcount.NumAddInst                             |    277586 |    277569 |   -17 | -0.0061% |
      | instcount.NumAndInst                             |     66056 |     66054 |    -2 | -0.0030% |
      | instcount.NumBrInst                              |    709147 |    709146 |    -1 | -0.0001% |
      | instcount.NumCallInst                            |    528579 |    528576 |    -3 | -0.0006% |
      | instcount.NumExtractValueInst                    |     18307 |     18301 |    -6 | -0.0328% |
      | instcount.NumOrInst                              |    102660 |    102665 |     5 |  0.0049% |
      | instcount.NumPHIInst                             |    318008 |    318007 |    -1 | -0.0003% |
      | instcount.NumSelectInst                          |     46373 |     46370 |    -3 | -0.0065% |
      | instcount.NumSExtInst                            |     79496 |     79488 |    -8 | -0.0101% |
      | instcount.NumShlInst                             |     40654 |     40657 |     3 |  0.0074% |
      | instcount.NumTruncInst                           |     62251 |     62249 |    -2 | -0.0032% |
      | instcount.NumZExtInst                            |     68211 |     68221 |    10 |  0.0147% |
      | instcount.TotalBlocks                            |    843910 |    843909 |    -1 | -0.0001% |
      | instcount.TotalInsts                             |   7387448 |   7387423 |   -25 | -0.0003% |
      
      Reviewers: nikic, reames
      
      Reviewed By: nikic
      
      Subscribers: hiraditya, llvm-commits
      
      Tags: #llvm
      
      Differential Revision: https://reviews.llvm.org/D69321
      1f665046
    • Artem Dergachev's avatar
      [analyzer] Fix off-by-one in operator call parameter binding. · be86fdb8
      Artem Dergachev authored
      Member operator declarations and member operator expressions
      have different numbering of parameters and arguments respectively:
      one of them includes "this", the other does not.
      
      Account for this inconsistency when figuring out whether
      the parameter needs to be manually rebound from the Environment
      to the Store when entering a stack frame of an operator call,
      as opposed to being constructed with a constructor and as such
      already having the necessary Store bindings.
      
      Differential Revision: https://reviews.llvm.org/D69155
      be86fdb8
    • Casey Carter's avatar
      [libc++][NFC] Remove excess trailing newlines from most files · 689ce810
      Casey Carter authored
      Testing git commit access.
      689ce810
    • Simon Atanasyan's avatar
      [mips] Use `expandLoadAddress` for JAL expansion · 8e574e56
      Simon Atanasyan authored
      - Reduce code duplication
      - Get partial support of JAL expansion for XGOT.
      8e574e56
    • Simon Atanasyan's avatar
      c470a9b5
    • Simon Atanasyan's avatar
    • Simon Atanasyan's avatar
      82b1b39b
    • Simon Pilgrim's avatar
    • Sam McCall's avatar
      Reland "[Support] Add a way to run a function on a detached thread"" · a9c3c176
      Sam McCall authored
      This reverts commit 7bc7fe6b.
      The immediate callers have been fixed to pass nullopt where appropriate.
      a9c3c176
    • Kadir Cetinkaya's avatar
      [clangd] Propogate context in TUScheduler::run · 10c8dbcb
      Kadir Cetinkaya authored
      Reviewers: sammccall
      
      Subscribers: ilya-biryukov, javed.absar, MaskRay, jkorous, arphaman, usaxena95, cfe-commits
      
      Tags: #clang
      
      Differential Revision: https://reviews.llvm.org/D69328
      10c8dbcb
    • Sam Elliott's avatar
      [Sanitizers] Add support for RISC-V 64-bit · 977205b5
      Sam Elliott authored
      Summary:
      This has been tested with gcc trunk on openSUSE Tumbleweed on the HiFive Unleashed.
      
      Patch by Andreas Schwab (schwab)
      
      Reviewers: luismarques
      
      Reviewed By: luismarques
      
      Subscribers: mhorne, emaste, luismarques, asb, mgorny, fedor.sergeev, simoncook, kito-cheng, shiva0217, rogfer01, rkruppe, lenary, s.egerton, #sanitizers, llvm-commits
      
      Tags: #llvm, #sanitizers
      
      Differential Revision: https://reviews.llvm.org/D66870
      977205b5
    • Sam McCall's avatar
      Revert "[Support] Add a way to run a function on a detached thread" · 7bc7fe6b
      Sam McCall authored
      This reverts commit 40668abc.
      This causes clang tests to fail, as stacksize=0 is being explicitly passed and
      is no longer a no-op.
      7bc7fe6b
    • Sam McCall's avatar
      [Support] Add a way to run a function on a detached thread · 40668abc
      Sam McCall authored
      This roughly mimics `std::thread(...).detach()` except it allows to
      customize the stack size. Required for https://reviews.llvm.org/D50993.
      
      I've decided against reusing the existing `llvm_execute_on_thread` because
      it's not obvious what to do with the ownership of the passed
      function/arguments:
      
      1. If we pass possibly owning functions data to `llvm_execute_on_thread`,
         we'll lose the ability to pass small non-owning non-allocating functions
         for the joining case (as it's used now). Is it important enough?
      2. If we use the non-owning interface in the new use case, we'll force
         clients to transfer ownership to the spawned thread manually, but
         similar code would still have to exist inside
         `llvm_execute_on_thread(_async)` anyway (as we can't just pass the same
         non-owning pointer to pthreads and Windows implementations, and would be
         forced to wrap it in some structure, and deal with its ownership.
      
      Patch by Dmitry Kozhevnikov!
      
      Differential Revision: https://reviews.llvm.org/D51103
      40668abc
    • Mirko Brkusanin's avatar
      [Mips] Use appropriate private label prefix based on Mips ABI · 4b63ca13
      Mirko Brkusanin authored
      MipsMCAsmInfo was using '$' prefix for Mips32 and '.L' for Mips64
      regardless of -target-abi option. By passing MCTargetOptions to MCAsmInfo
      we can find out Mips ABI and pick appropriate prefix.
      
      Tags: #llvm, #clang, #lldb
      
      Differential Revision: https://reviews.llvm.org/D66795
      4b63ca13
    • David Stenberg's avatar
      [DebugInfo] Stop describing imms in TargetInstrInfo's describeLoadedValue() impl · 74a72e68
      David Stenberg authored
      Summary:
      The default implementation of the describeLoadedValue() hook uses the
      MoveImm property to determine if an instruction moves an immediate. If
      an instruction has that property the function returns the second
      operand, assuming that that is the immediate value the instruction
      moves. As far as I can tell, the MoveImm property does not imply that
      the second operand is the immediate value, nor that any other operand
      necessarily holds the immediate value; it just means that the
      instruction moves some immediate value.
      
      One example where the second operand is not the immediate is SystemZ's
      LZER instruction, which moves a zero immediate implicitly: $f0S = LZER.
      
      That case triggered an out-of-bound assertion when getting the operand.
      I have added a test case for that instruction.
      
      Another example is ARM's MVN instruction, which holds the logical
      bitwise NOT'd value of the immediate that is moved. For the following
      reproducer:
      
        extern void foo(int);
        int main() { foo(-11); }
      
      an incorrect call site value would be emitted:
      
        $ clang --target=arm foo.c -O1 -g -Xclang -femit-debug-entry-values \
            -c -o - | ./build/bin/llvm-dwarfdump  - | \
            grep -A2 call_site_parameter
      
        0x00000058:       DW_TAG_GNU_call_site_parameter
                            DW_AT_location (DW_OP_reg0 R0)
                            DW_AT_GNU_call_site_value (DW_OP_lit10)
      
      Another example is the A2_combineii instruction on Hexagon which moves
      two immediates to a super-register: $d0 = A2_combineii 20, 10.
      
      Perhaps these are rare exceptions, and most MoveImm instructions hold
      the immediate in the second operand, but in my opinion the default
      implementation of the hook should only describe values that it can, by
      some contract, guarantee are safe to describe, rather than leaving it up
      to the targets to override the exceptions, as that can silently result
      in incorrect call site values.
      
      This patch adds X86's relevant move immediate instructions to the
      target's hook implementation, so this commit should be a NFC for that
      target. We need to do the same for ARM and AArch64.
      
      Reviewers: djtodoro, NikolaPrica, aprantl, vsk
      
      Reviewed By: vsk
      
      Subscribers: kristof.beyls, hiraditya, llvm-commits
      
      Tags: #debug-info, #llvm
      
      Differential Revision: https://reviews.llvm.org/D69109
      74a72e68
    • georgerim's avatar
      [lib/ObjectYAML] - Add a full stop to the comment. NFC. · 64df7084
      georgerim authored
      A test commit.
      64df7084
    • Petar Avramovic's avatar
      [MIPS GlobalISel] Select MSA vector generic and builtin mul · d1815dac
      Petar Avramovic authored
      Select vector G_MUL for MIPS32 with MSA. We have to set bank
      for vector operands to fprb and selectImpl will do the rest.
      Manual selection of G_MUL is now done for gprb only.
      __builtin_msa_mulv_<format> will be transformed into G_MUL
      in legalizeIntrinsic and selected in the same way.
      
      Differential Revision: https://reviews.llvm.org/D69310
      d1815dac
    • Petar Avramovic's avatar
      [MIPS GlobalISel] Select MSA vector generic and builtin sub · c46d24f5
      Petar Avramovic authored
      Select vector G_SUB for MIPS32 with MSA. We have to set bank
      for vector operands to fprb and selectImpl will do the rest.
      __builtin_msa_subv_<format> will be transformed into G_SUB
      in legalizeIntrinsic and selected in the same way.
      __builtin_msa_subvi_<format> will be directly selected into
      SUBVI_<format> in legalizeIntrinsic.
      
      Differential Revision: https://reviews.llvm.org/D69306
      c46d24f5
    • Roman Lebedev's avatar
      [TargetLowering] optimizeSetCCToComparisonWithZero(): add extra sanity checks (PR43769) · 20bf0cf2
      Roman Lebedev authored
      We should do the fold only if both constants are plain,
      non-opaque constants, at least that is the DAG.FoldConstantArithmetic()
      requirement.
      And if the constant we are comparing with is zero - we shouldn't be
      trying to do this fold in the first place.
      
      Fixes https://bugs.llvm.org/show_bug.cgi?id=43769
      20bf0cf2
    • Richard Smith's avatar
      [c++2a] Allow comparison functions to be explicitly defaulted. · d052a578
      Richard Smith authored
      This adds some initial syntactic checking that only the appropriate
      function signatures can be defaulted. No implicit definitions are
      generated yet.
      d052a578
  3. 22 Oct, 2019 6 commits