Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clang 11 upgrade #984

Merged
merged 10,000 commits into from
Feb 20, 2021
Merged

Clang 11 upgrade #984

merged 10,000 commits into from
Feb 20, 2021
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jul 14, 2020

  1. [DWARFYAML] Replace Is64bit with Is64BitAddrSize. NFC.

    Is64bit is ambiguous. In this patch, we replace it with Is64BitAddrSize
    to make it clearer.
    higuoxing committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    830a7c2 View commit details
    Browse the repository at this point in the history
  2. [AArch64][GlobalISel] Add post-legalize combine for sext_inreg(trunc(…

    …sextload)) -> copy
    
    On AArch64 we generate redundant G_SEXTs or G_SEXT_INREGs because of this.
    
    Differential Revision: https://reviews.llvm.org/D81993
    aemerson committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    64eb3a4 View commit details
    Browse the repository at this point in the history
  3. [PowerPC][Power10] Implement Test LSB by Byte Builtins in LLVM/Clang

    This patch implements builtins for the Test LSB by Byte instruction introduced
    in Power10.
    
    Differential Revision: https://reviews.llvm.org/D82431
    amy-kwan committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    62f5ba6 View commit details
    Browse the repository at this point in the history
  4. [AMDGPU] Propagate dead flag during pre-RA exec mask optimizations

    Preserve SCC dead flags in SIOptimizeExecMaskingPreRA.
    This helps with removing redundant s_andn2 instructions later.
    
    Reviewed By: rampitec
    
    Differential Revision: https://reviews.llvm.org/D83637
    perlfu committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    74c1420 View commit details
    Browse the repository at this point in the history
  5. [deadargelim] Attach dbg info to the insert/extractvalue instructions

    Attach DbgLoc on insertvalue/extractvalue instructions created by
    DeadArgumentElimination.
    
    This fixes the PR46350.
    
    Differential Revision: https://reviews.llvm.org/D81939
    djtodoro authored and djolertrk committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    1af8c93 View commit details
    Browse the repository at this point in the history
  6. [AMDGPU][NFC] Tidy sgpr-control-flow.ll whitespace

    Pre-commit clean up for D83641.
    perlfu committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    e5f022c View commit details
    Browse the repository at this point in the history
  7. [SVE][CodeGen] Fix implicit TypeSize->uint64_t conversion in Transfor…

    …mFPLoadStorePair
    
    In DAGCombiner::TransformFPLoadStorePair we were dropping the scalable
    property of TypeSize when trying to create an integer type of equivalent
    size. In fact, this optimisation makes no sense for scalable types
    since we don't know the size at compile time. I have changed the code
    to bail out when encountering scalable type sizes.
    
    I've added a test to
    
      llvm/test/CodeGen/AArch64/sve-fp.ll
    
    that exercises this code path. The test already emits an error if it
    encounters warnings due to implicit TypeSize->uint64_t conversions.
    
    Differential Revision: https://reviews.llvm.org/D83572
    david-arm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3b8eaf2 View commit details
    Browse the repository at this point in the history
  8. [SVE] Fix implicit TypeSize->uint64_t conversion getCastInstrCost

    In getCastInstrCost() when comparing different sizes for src and
    dst types we should be using the TypeSize comparison operators
    instead of relying upon TypeSize being converted a uin64_t.
    Previously this meant we were dropping the scalable property and
    treating fixed and scalable vector types the same.
    
    Differential Revision: https://reviews.llvm.org/D83461
    david-arm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    c06b7e2 View commit details
    Browse the repository at this point in the history
  9. [clangd] Implement textDocument/foldingRange

    Summary:
    This patch introduces basic textDocument/foldingRange support. It relies on
    textDocument/documentSymbols to collect all symbols and uses takes ranges
    to create folds.
    
    The next steps for textDocument/foldingRange support would be:
    
    * Implementing FoldingRangeClientCapabilities and respecting respect client
      preferences
    * Specifying folding range kind
    * Migrating from DocumentSymbol implementation to custom RecursiveASTVisitor flow that will allow more flexibility
    * Supporting more folding range types: comments, PP conditional regions, includes and other code regions (e.g. public/private/protected sections of classes, control flow statement bodies)
    
    Tested: (Neo)Vim (coc-clangd) and VSCode.
    
    Related issue: clangd/clangd#310
    
    Reviewers: sammccall
    
    Reviewed By: sammccall
    
    Subscribers: nridge, ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D82436
    kirillbobyrev committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    7a514c9 View commit details
    Browse the repository at this point in the history
  10. [SVE][CodeGen] Add README for SVE-related warnings in tests

    I have added a new file:
    
      llvm/test/CodeGen/AArch64/README
    
    that describes what to do in the event one of the SVE codegen tests
    fails the warnings check. In addition, I've added comments to all
    the relevant SVE tests pointing users at the README file.
    
    Differential Revision: https://reviews.llvm.org/D83467
    david-arm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    02650ac View commit details
    Browse the repository at this point in the history
  11. [NFCI][InstCombine] Move store merging from visitStoreInst() into `…

    …visitUnconditionalBranchInst()`
    
    Summary:
    As @nikic is pointing out in https://bugs.llvm.org/show_bug.cgi?id=46680#c5,
    InstCombine should not have forward instruction scans,
    so let's move this transform into the proper place.
    
    This is pretty much NFCI.
    
    Reviewers: nikic, spatel
    
    Reviewed By: nikic
    
    Subscribers: hiraditya, llvm-commits, nikic
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83670
    LebedevRI committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    e2b75ca View commit details
    Browse the repository at this point in the history
  12. Double check that passes correctly set their Modified status

    The approach is simple: if a pass reports that it's not modifying a
    Function/Module, compute a loose hash of that Function/Module and compare it
    with the original one. If we report no change but there's a hash change, then we
    have an error.
    
    This approach misses a lot of change but it's not super intrusive and can
    detect most of the simple mistakes.
    
    Differential Revision: https://reviews.llvm.org/D80916
    serge-sans-paille committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3667d87 View commit details
    Browse the repository at this point in the history
  13. [AMDGPU] Avoid using s_cmpk when src0 is not register

    The hardware spec require src0 of s_cmpk should be a register. So, we
    should not optimize s_cmp to s_cmpk if src0 is not register.
    
    Patch by Ruiling Song!
    jayfoad committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    1658b8d View commit details
    Browse the repository at this point in the history
  14. Revert "[compiler-rt] [test] Allow expanding lit substitutions recurs…

    …ively"
    
    This reverts commit 8372d50.
    
    It broke the TestCases/Darwin/asan-symbolize-partial-report-with-module-map.cpp test on green dragon.
    aemerson committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    eafeb8a View commit details
    Browse the repository at this point in the history
  15. [AArch64][SVE] Remove erroneous assert in resolveFrameOffsetReference

    The code already supports addressing a fixed-size stack object from
    the frame-pointer, by first subtracting sizeof(SVE area) from FP.
    
    Reviewers: efriedma, cameron.mcinally, david-arm, rengolin
    
    Reviewed By: david-arm
    
    Differential Revision: https://reviews.llvm.org/D83125
    sdesmalen-arm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    a8f4f85 View commit details
    Browse the repository at this point in the history
  16. Revert "Revert "[compiler-rt] [test] Use the parent process env as ba…

    …se env in tests""
    
    This reverts commit 979c502.
    
    The underlying issue has been fixed in https://reviews.llvm.org/D83719.
    broadwaylamb committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    faa7e30 View commit details
    Browse the repository at this point in the history
  17. [analyzer][tests] Introduce analyzer benchmarking framework

    Summary:
    This commit includes a couple of changes:
      * Benchmark selected projects by analyzing them multiple times
      * Compare two benchmarking results and visualizing them on one chart
      * Organize project build logging, so we can use the same code
        in benchmarks
    
    Differential Revision: https://reviews.llvm.org/D83539
    SavchenkoValeriy committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    5b4f143 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    089a0ad View commit details
    Browse the repository at this point in the history
  19. [ARM][MVE] Only tail-fold integer add reductions

    If a vector body has live-out values, it is probably a reduction, which needs a
    final reduction step after the loop. MVE has a VADDV instruction to reduce
    integer vectors, but doesn't have an equivalent one for float vectors. A
    live-out value that is not recognised as reduction later in the optimisation
    pipeline will result in the tail-predicated loop to be reverted to a
    non-predicated loop and this is very expensive, i.e. it has a significant
    performance impact, which is what we hope to avoid with fine tuning the ARM TTI
    hook preferPredicateOverEpilogue implementation.
    
    Differential Revision: https://reviews.llvm.org/D82953
    Sjoerd Meijer committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    959eaa5 View commit details
    Browse the repository at this point in the history
  20. [AMDGPU] Fix typos in performCtlz_CttzCombine()

    Fix two obvious errors in the code and also update the test check.
    Also add one test to catch the failure.
    
    Patch by Ruiling Song!
    
    Differential Revision: https://reviews.llvm.org/D83280
    jayfoad committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    5ab2e14 View commit details
    Browse the repository at this point in the history
  21. [DebugInfo] Add unit test for compact expression printer

    Add a unit test for the compact DWARF expression printer which will be
    used by the llvm-objdump --debug-vars option.
    
    Differential revision: https://reviews.llvm.org/D75250
    ostannard committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    c15e04e View commit details
    Browse the repository at this point in the history
  22. [llvm-objdump] Add simple memory expressions to variable display

    Add the DW_OP_breg0..DW_OP_breg31 and DW_OP_bregx opcodes to the DWARF
    expression printer.
    
    Differential revision: https://reviews.llvm.org/D74841
    ostannard committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    1d7311e View commit details
    Browse the repository at this point in the history
  23. [llvm-objdump] Add entry_value and stack_value opcodes

    Add the DW_OP_entry_value and DW_OP_stack_value opcodes to the DWARF
    expression printer.
    
    Differential revision: https://reviews.llvm.org/D74843
    ostannard committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    57909b0 View commit details
    Browse the repository at this point in the history
  24. [llvm][unittests] Fix ProgramEnvTest.TestExecuteAndWaitStatistics on …

    …Solaris
    
    The new `LLVM-Unit :: Support/./SupportTests/ProgramEnvTest.TestExecuteAndWaitStatistics` test currently FAILs on Solaris:
    
      [ RUN      ] ProgramEnvTest.TestExecuteAndWaitStatistics
      /vol/llvm/src/llvm-project/local/llvm/unittests/Support/ProgramTest.cpp:360: Failure
      Expected: (ProcStat->PeakMemory) > (0U), actual: 0 vs 0
      [  FAILED  ] ProgramEnvTest.TestExecuteAndWaitStatistics (22 ms)
    
    According to `llvm/lib/Support/Unix/Program.inc (llvm::sys::Wait)`, `PeakMemory`
    corresponds to `struct rusage.ru_maxrss`.
    
    However, Solaris `getrusage(3C)` documents
    
      NOTES
             The ru_maxrss, ru_ixrss, ru_idrss, and ru_isrss members of  the  rusage
             structure are set to 0 in this implementation.
    
    Since changing the test to check for `PeakMemory >= 0` instead is pointless
    and would generate a warning on targets where `ru_maxrss` is unsigned, this
    patch removes the check.
    
    Tested on `amd64-pc-solaris2.11`.
    
    Differential Revision: https://reviews.llvm.org/D83661
    rorth committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    2d1fe0c View commit details
    Browse the repository at this point in the history
  25. [gn build] Port c15e04e

    llvmgnsyncbot committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    242a736 View commit details
    Browse the repository at this point in the history
  26. [ELF] Do not leave undefined symbols (specified by -init and -fini) i…

    …f they are defined in non-fetched archive members
    
    After D69985, symbols for "-init" and "-fini" were unconditionally
    marked as used even if they were just lazy symbols seen when scanning
    archives. That resulted in exposing them in the symbol table of an
    output file, as Undefined, which added unwanted dependencies. The patch
    fixes the issue by checking the kind of the symbols before the marking.
    
    Differential Revision: https://reviews.llvm.org/D83549
    igorkudrin committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    c4fc26b View commit details
    Browse the repository at this point in the history
  27. [DebugInfo] Add unit tests for DWARFListTableHeader::length().

    This adds unit tests to check the expected behavior of the method in
    case the unit length field is truncated.
    
    Differential Revision: https://reviews.llvm.org/D83673
    igorkudrin committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    dd6faf1 View commit details
    Browse the repository at this point in the history
  28. [DebugInfo] Fix a possible crash when reading a malformed .debug_*lis…

    …ts section.
    
    DWARFListTableHeader::length() handles the zero value of HeaderData.Length
    in a special way, which makes the result different from the calculated
    value of FullLength, which leads to triggering an assertion. The patch
    moves the assertion a bit later when `FullLength` is already checked for
    minimal allowed value.
    
    Differential Revision: https://reviews.llvm.org/D82886
    igorkudrin committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    ec9f0c7 View commit details
    Browse the repository at this point in the history
  29. [gn build] Port dd6faf1

    llvmgnsyncbot committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3ae9f5d View commit details
    Browse the repository at this point in the history
  30. [AArch64][AsmParser] Add rcpc support in .arch_extension

    AArch64 does not support enabling rcpc via .arch_extension in assembly.
    GCC, on the other hand, does.
    
    This patch adds 'rcpc' as a valid value to .arch_extension handling.
    
    Differential Revision: https://reviews.llvm.org/D83685
    vhscampos committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    dad1868 View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    bcedc4f View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    1ee0d22 View commit details
    Browse the repository at this point in the history
  33. Configuration menu
    Copy the full SHA
    a5405a2 View commit details
    Browse the repository at this point in the history
  34. Revert "[RISCV] Avoid Splitting MBB in RISCVExpandPseudo"

    This reverts commit 97106f9.
    
    This is based on feedback from https://reviews.llvm.org/D82988#2147105
    lenary committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    1d15bbb View commit details
    Browse the repository at this point in the history
  35. [yaml2obj] - Add a syntax to override e_phoff, e_phentsize and e_phnu…

    …m fields.
    
    This adds `EPhOff`, `EPhEntSize` and `EPhNum` keys.
    Will be useful for creating broken objects for testing llvm-readelf.
    
    Differential revision: https://reviews.llvm.org/D83482
    Georgii Rymar committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3001569 View commit details
    Browse the repository at this point in the history
  36. [compiler-rt][sanitizers] Fix GetPcSpBp determination of SP on 32-bit…

    … Solaris/x86
    
    A dozen 32-bit `AddressSanitizer` testcases FAIL on the latest beta of Solaris 11.4/x86, e.g.
    `AddressSanitizer-i386-sunos :: TestCases/null_deref.cpp` produces
    
      AddressSanitizer:DEADLYSIGNAL
      =================================================================
      ==29274==ERROR: AddressSanitizer: stack-overflow on address 0x00000028 (pc 0x08135efd bp 0xfeffdfd8 sp 0x00000000 T0)
          #0 0x8135efd in NullDeref(int*) /vol/llvm/src/llvm-project/dist/compiler-rt/test/asan/TestCases/null_deref.cpp:15:10
          #1 0x8135ea6 in main /vol/llvm/src/llvm-project/dist/compiler-rt/test/asan/TestCases/null_deref.cpp:21:3
          #2 0x8084b85 in _start (null_deref.cpp.tmp+0x8084b85)
    
       SUMMARY: AddressSanitizer: stack-overflow /vol/llvm/src/llvm-project/dist/compiler-rt/test/asan/TestCases/null_deref.cpp:15:10 in NullDeref(int*)
      ==29274==ABORTING
    
    instead of the expected
    
      AddressSanitizer:DEADLYSIGNAL
      =================================================================
      ==29276==ERROR: AddressSanitizer: SEGV on unknown address 0x00000028 (pc 0x08135f1f bp 0xfeffdf48 sp 0xfeffdf40 T0)
      ==29276==The signal is caused by a WRITE memory access.
      ==29276==Hint: address points to the zero page.
          #0 0x8135f1f in NullDeref(int*) /vol/llvm/src/llvm-project/local/compiler-rt/test/asan/TestCases/null_deref.cpp:15:10
          #1 0x8135efa in main /vol/llvm/src/llvm-project/local/compiler-rt/test/asan/TestCases/null_deref.cpp:21:3
          #2 0x8084be5 in _start (null_deref.cpp.tmp+0x8084be5)
    
      AddressSanitizer can not provide additional info.
       SUMMARY: AddressSanitizer: SEGV /vol/llvm/src/llvm-project/local/compiler-rt/test/asan/TestCases/null_deref.cpp:15:10 in NullDeref(int*)
      ==29276==ABORTING
    
    I managed to trace this to a change in `<sys/regset.h>`: previously the header would
    primarily define the short register indices (like `UESP`). While they are required by the
    i386 psABI, they are only required in `<ucontext.h>` and could previously leak into
    unsuspecting user code, polluting the namespace and requiring elaborate workarounds
    like that in `llvm/include/llvm/Support/Solaris/sys/regset.h`. The change fixed that by restricting
    the definition of the short forms appropriately, at the same time defining all `REG_` prefixed
    forms for compatiblity with other systems.  This exposed a bug in `compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp`, however:
    Previously, the index for the user stack pointer would be hardcoded if `REG_ESP`
    wasn't defined. Now with that definition present, it turned out that `REG_ESP` was the wrong index to use: the previous value 17 (and `REG_SP`) corresponds to `REG_UESP`
    instead.
    
    With that change, the failures are all gone.
    
    Tested on `amd-pc-solaris2.11`.
    
    Differential Revision: https://reviews.llvm.org/D83664
    rorth committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    f0e9b76 View commit details
    Browse the repository at this point in the history
  37. [DWARFYAML] Add support for emitting value forms of strx, addrx, etc.

    This patch adds support for emitting value forms of DW_FORM_strx,
    DW_FORM_addrx, DW_FORM_loclistx and DW_FORM_rnglistx.
    
    Reviewed By: jhenderson
    
    Differential Revision: https://reviews.llvm.org/D83749
    higuoxing committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    b539f01 View commit details
    Browse the repository at this point in the history
  38. [lldb/test] Avoid globbing in log file handling code

    The glob expression for a test called "test" could match a log file for
    a the test "test_foo". Instead of globbing, maintain an explicit list of
    log files relevant to the current test.
    labath committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3cdbacc View commit details
    Browse the repository at this point in the history
  39. [SelectionDAG] Prevent warnings when extracting fixed length vector f…

    …rom scalable.
    
    ComputeNumSignBits and computeKnownBits both trigger "Scalable flag
    may be dropped" warnings when a fixed length vector is extracted
    from a scalable vector.  This patch assumes nothing about the
    demanded elements thus matching the behaviour when extracting a
    scalable vector from a scalable vector.
    
    Differential Revision: https://reviews.llvm.org/D83642
    paulwalker-arm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    6e198aa View commit details
    Browse the repository at this point in the history
  40. [llvm-readobj] - Stop using unwrapOrError() for all program_headers()…

    … calls.
    
    program_headers() returns the list of program headers. This change allows
    to continue attempt of dumping when something is wrong with program headers.
    
    Differential revision: https://reviews.llvm.org/D83554
    Georgii Rymar committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    7ef1763 View commit details
    Browse the repository at this point in the history
  41. [test/Object][llvm-objdump] - llvm-objdump: don't abort() when the e_…

    …phoff field is invalid and refine testing.
    
    llvm-objdump currently calls report_fatal_error() when the e_phoff field is invalid.
    
    This is tested by elf-invalid-phdr.test which has the following issues:
    1) It uses a precompiled object.
    2) it could be a part of invalid.test.
    3) It tests the Object lib, but we have no separate test for llvm-objdump.
    
    This patch addresses issues mentioned.
    
    Differential revision: https://reviews.llvm.org/D83559
    Georgii Rymar committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    84a1bc7 View commit details
    Browse the repository at this point in the history
  42. [InstCombine][InstSimplify] add tests for sign of maxnum; NFC

    More coverage for D83601.
    rotateright committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    9cc669d View commit details
    Browse the repository at this point in the history
  43. [ValueTracking] fix miscompile in maxnum case of cannotBeOrderedLessT…

    …hanZeroImpl (PR46627)
    
    A miscompile with -0.0 is shown in:
    http://bugs.llvm.org/PR46627
    
    This is because maxnum(-0.0, +0.0) does not specify a fixed result:
    http://llvm.org/docs/LangRef.html#llvm-maxnum-intrinsic
    
    So we need to tighten the constraints for when it is ok to say the
    result of maxnum is positive (including +0.0).
    
    Differential Revision: https://reviews.llvm.org/D83601
    rotateright committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    34d35d4 View commit details
    Browse the repository at this point in the history
  44. [yaml2obj] - Refine handling of the NoHeaders key.

    Imagine we have an YAML description for some object and we want to
    produce 2 outputs: with and without the section header.
    A natural way to do it would look like:
    
    ```
    --- !ELF
    FileHeader:
      Class:   ELFCLASS64
      Data:    ELFDATA2LSB
      Type:    ET_REL
      Machine: EM_X86_64
    Sections:
    ...
    SectionHeaderTable:
      NoHeaders: [[NOHEADERS]]
    
    ```
    But currently, we do not distinguish between no `NoHeaders` key case
    and `NoHeaders == false`. Because of this we can't simply specify
    `NOHEADERS = false`, as tool starts to complain.
    
    With this patch the behavior changed. When we have:
    
    ```
    SectionHeaderTable:
      NoHeaders: false
    
    ```
    it is the same as we have no `SectionHeaderTable` at all.
    (`NoHeaders` key still can't be used with `Sections/Excluded` keys)
    
    Differential revision: https://reviews.llvm.org/D83672
    Georgii Rymar committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    90e34b5 View commit details
    Browse the repository at this point in the history
  45. [lldb] Refactor character printing in DumpDataExtractor

    Summary: Just unifying all that copy-pasted code.
    
    Reviewers: JDevlieghere
    
    Reviewed By: JDevlieghere
    
    Differential Revision: https://reviews.llvm.org/D83662
    Teemperor committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    6f51cee View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    1cd1c1d View commit details
    Browse the repository at this point in the history
  47. [flang][OpenMP] upstream OpenMP lowering

    Summary:
    This patch implements lowering of OpenMP barrier construct from
    pft to OpenMPDialect.
    
    Patch is carved out of following merged PR's from fir-dev branch
    of https://github.com/flang-compiler/f18-llvm-project/
    
    PR's:
    flang-compiler/f18-llvm-project#248
    flang-compiler/f18-llvm-project#251
    
    Unfortunately primary tool `bbc` for functional validation is not
    yet upstreamed. So this patch includes a unittest for lowering
    `!OMP barrier` construct.
    
    Some part of the these PR's still remains downstream(functional test
    and dialect registration to legalizer) for obvious reasons.
    Will upstream them when the dependencies are upstreamed.
    
    Reviewed By: schweitz, kiranchandramohan
    
    Differential Revision: https://reviews.llvm.org/D83659
    SouraVX committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3d0b760 View commit details
    Browse the repository at this point in the history
  48. [NFC][RISCV] Test for D81805

    New test to show the changes after D81805 is committed.
    
    Differential Revision: https://reviews.llvm.org/D83750
    rofirrim committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    c1d021e View commit details
    Browse the repository at this point in the history
  49. [RISCV] Fix isStoreToStackSlot

    Because of the layout of stores (that don't have a destination operand)
    this check is exactly the same as the one in
    RISCVInstrInfo::isLoadFromStackSlot.
    
    Differential Revision: https://reviews.llvm.org/D81805
    rofirrim committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    0cbdd2a View commit details
    Browse the repository at this point in the history
  50. Prohibit use of _ExtInt in atomic intrinsic

    The _ExtInt type allows custom width integers, but the atomic memory
    access's operand must have a power-of-two size. _ExtInts with
    non-power-of-two size should not be allowed for atomic intrinsic.
    
    Before this change:
    
    $ cat test.c
    
    typedef unsigned _ExtInt(42) dtype;
    void verify_binary_op_nand(dtype* pval1, dtype val2)
    {    __sync_nand_and_fetch(pval1, val2); }
    
    $ clang test.c
    
    clang-11:
    /home/ubuntu/llvm_workspace/llvm/clang/lib/CodeGen/CGBuiltin.cpp:117:
    llvm::Value*
    EmitToInt(clang::CodeGen::CodeGenFunction&, llvm::Value*,
    clang::QualType, llvm::IntegerType*): Assertion `V->getType() ==
    IntType' failed.
    PLEASE submit a bug report to https://bugs.llvm.org/ and include the
    crash backtrace, preprocessed source, and associated run script.
    
    After this change:
    
    $ clang test.c
    
    test.c:3:30: error: Atomic memory operand must have a power-of-two size
    {    __sync_nand_and_fetch(pval1, val2); }
    ^
    
    List of the atomic intrinsics that have this
    problem:
    
    __sync_fetch_and_add
    __sync_fetch_and_sub
    __sync_fetch_and_or
    __sync_fetch_and_and
    __sync_fetch_and_xor
    __sync_fetch_and_nand
    __sync_nand_and_fetch
    __sync_and_and_fetch
    __sync_add_and_fetch
    __sync_sub_and_fetch
    __sync_or_and_fetch
    __sync_xor_and_fetch
    __sync_fetch_and_min
    __sync_fetch_and_max
    __sync_fetch_and_umin
    __sync_fetch_and_umax
    __sync_val_compare_and_swap
    __sync_bool_compare_and_swap
    
    Differential Revision: https://reviews.llvm.org/D83340
    jtmott-intel authored and Erich Keane committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    d083adb View commit details
    Browse the repository at this point in the history
  51. Configuration menu
    Copy the full SHA
    8a24208 View commit details
    Browse the repository at this point in the history
  52. [clangd] Add library to semantically strip flags by name.

    Summary:
    This is designed for tweaking compile commands by specifying flags to add/remove
    in a config file. Something like:
      CompileFlags: { Remove: -fcolor-diagnostics }
    
    Having users tweak raw argv (e.g. with a regex) is going to end in tears: bugs
    around clang-cl, xclang, aliases, joined-vs-separate args etc are inevitable.
    
    This isn't in tooling because of the performance choices: build a big table
    up-front to make subsequent actions fast. Maybe it should be though.
    
    Reviewers: adamcz, hokein
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D81958
    sam-mccall committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    8eb8c92 View commit details
    Browse the repository at this point in the history
  53. Fix test for the hasExternalFormalLinkage matcher

    Summary:
    Names of local variables have no linkage (see C++20 [basic.link] p8).
    
    Names of variables in unnamed namespace have internal linkage (see C++20
    [basic.link] p4).
    
    Reviewers: aaron.ballman, rsmith, ymandel
    
    Reviewed By: ymandel
    
    Subscribers: cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D83700
    gribozavr committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    8978032 View commit details
    Browse the repository at this point in the history
  54. [ods] Enable getting forward decls allow

    Summary: Currently forward decls are included with all the op classes. But there are cases (say when splitting up headers) where one wants the forward decls but not all the classes. Add an option to enable this. This does not change any current behavior (some further refactoring is probably due here).
    
    Differential Revision: https://reviews.llvm.org/D83727
    jpienaar committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3ae43a5 View commit details
    Browse the repository at this point in the history
  55. [libc++] Use a proper CMake target to represent libc++ headers

    Instead of having complex logic around how to include the libc++ headers
    and __config_site, handle that by defining cxx-headers as an INTERFACE
    library and linking against it. After this patch, linking against cxx-headers
    is sufficient to get the right __config_site include and include paths
    for libc++.
    
    Differential Revision: https://reviews.llvm.org/D82702
    ldionne committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    efa40eb View commit details
    Browse the repository at this point in the history
  56. [utils] New script check_ninja_deps.py

    Summary:
    This can be run after a ninja-based build, and analyzes the ninja
    build files and dependency database to spot any missing dependencies
    in the build scripts.
    
    I wrote it in the course of investigating D82659, and it seems likely
    to be useful again.
    
    Reviewers: thakis, chandlerc, theraven
    
    Reviewed By: thakis
    
    Subscribers: riccibruno, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83032
    statham-arm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    86d362f View commit details
    Browse the repository at this point in the history
  57. [clangd] Config: CompileFlags.Remove

    Summary: While here, add documentation to CompileFlags and CompileFlags.Add.
    
    Reviewers: hokein
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, kadircet, usaxena95, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D83705
    sam-mccall committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    6c16fbd View commit details
    Browse the repository at this point in the history
  58. Configuration menu
    Copy the full SHA
    9300de4 View commit details
    Browse the repository at this point in the history
  59. [ValueTracking] fix library to intrinsic mapping to respect 'nobuilti…

    …n' attribute
    
    This is another problem raised in:
    http://bugs.llvm.org/PR46627
    rotateright committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    e6c0164 View commit details
    Browse the repository at this point in the history
  60. [clangd] Cache config files for 5 seconds, without revalidating with …

    …stat.
    
    Summary:
    This is motivated by:
     - code completion: nice to do no i/o on the request path
     - background index: deciding whether to enqueue each file would stat the config
       file thousands of times in quick succession.
    
    Currently it's applied uniformly to all requests though.
    
    This gives up on performing stat() outside the lock, all this achieves is
    letting multiple threads stat concurrently (and thus finish without contention
    for nonexistent files).
    The ability to finish without IO (just mutex lock + integer check) should
    outweigh this, and is less sensitive to platform IO characteristics.
    
    Reviewers: kadircet
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D83755
    sam-mccall committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    ff616f7 View commit details
    Browse the repository at this point in the history
  61. Configuration menu
    Copy the full SHA
    50a5fa8 View commit details
    Browse the repository at this point in the history
  62. [lldb] Make process connect blocking in synchronous mode.

    In synchronous mode, the process connect command and its aliases should
    wait for the stop event before claiming the command is complete.
    Currently, the stop event is always handled asynchronously by the
    debugger.
    
    The implementation takes the same approach as Process::ResumeSynchronous
    which hijacks the event and handles it on the current thread. Similarly,
    after this patch, the stop event is part of the command return object,
    which is the property used by the test case.
    
    Differential revision: https://reviews.llvm.org/D83728
    JDevlieghere committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    706cccb View commit details
    Browse the repository at this point in the history
  63. [lldb/Module] Allow for the creation of memory-only modules

    Summary:
    This patch extends the ModuleSpec class to include a
    DataBufferSP which contains the module data. If this
    data is provided, LLDB won't try to hit the filesystem
    to create the Module, but use only the data stored in
    the ModuleSpec.
    
    Reviewers: labath, espindola
    
    Subscribers: emaste, MaskRay, lldb-commits
    
    Tags: #lldb
    
    Differential Revision: https://reviews.llvm.org/D83512
    fredriss committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    a4a00ce View commit details
    Browse the repository at this point in the history
  64. [libc++] Fix building the benchmarks after introducing a target for c…

    …xx-headers
    
    The libc++ headers were included twice, which broke the #include_next
    logic.
    ldionne committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    e1ca7a6 View commit details
    Browse the repository at this point in the history
  65. [clang][NFC] Add 'override' keyword to virtual function overrides

    This patch adds override to several overriding virtual functions that were missing the keyword within the clang/ directory. These were found by the new -Wsuggest-override.
    kepler-5 committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    2c2a297 View commit details
    Browse the repository at this point in the history
  66. [docs] Update llvm.loop metadata documentation.

    Loop metadata nodes do not adhere to the documented property:
    
    (a) LoopIDs are not unique: Any pass that duplicates IR will do it
        including its metadata (e.g. LoopVersioning) such that multiple
        loops are linked with the same LoopID. There is even a test case
        (Transforms/LoopUnroll/unroll-pragmas-disabled.ll) for multiple
        loops with the same LoopID.
    
    (b) LoopIDs are not persistent: Adding or removing an item from a LoopID
        can only be done by creating a new MDNode and assigning it to the
        loop's branch(es). Passes such as LoopUnroll (llvm.loop.unroll.disable)
        and LoopVectorize (llvm.loop.isvectorized) use this to mark loops to
        not be transformed multiple times or to avoid that a LoopVersioned
        original loop is transformed.
    
    Update the documentation according to how llvm.loop is used in practice.
    
    Differential Revision: https://reviews.llvm.org/D55290
    Meinersbur committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    322e7cf View commit details
    Browse the repository at this point in the history
  67. [MLIR] [TableGen] Avoid generating an assert which is always true.

    - Avoid generating "assert(resultTypes.size() >= 0u)" which is always true
    
    Differential Revision: https://reviews.llvm.org/D83735
    jurahul committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    256d448 View commit details
    Browse the repository at this point in the history
  68. [AIX] Remove diff -a option on llvm-cov.test

    Summary:
    llvm-cov.test generates .gcov files and compared with target
    sample files. Since the files do not contain any binary data
    (files are plain ASCII texts), remove -a from diff. And this
    fix will the error on AIX since the default diff tool on AIX
    does not support -a option.
    
    Reviewers: hubert.reinterpretcast, daltenty, stevewan
    
    Subscribers: llvm-commits
    
    Tags: #LLVM
    
    Differential Revision: https://reviews.llvm.org/D83711
    ShuhongLL committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    85bed2f View commit details
    Browse the repository at this point in the history
  69. [MLIR] Add argument related API to Region

    - Arguments of the first block of a region are considered region arguments.
    - Add API on Region class to deal with these arguments directly instead of
      using the front() block.
    - Changed several instances of existing code that can use this API
    - Fixes https://bugs.llvm.org/show_bug.cgi?id=46535
    
    Differential Revision: https://reviews.llvm.org/D83599
    jurahul committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    e2b7161 View commit details
    Browse the repository at this point in the history
  70. [clang] Add 'override' to virtual function overrides generated by Cla…

    …ngAttrEmitter
    
    ClangAttrEmitter.cpp generates ParsedAttr derived classes with virtual overrides in them (which end up in AttrParsedAttrImpl.inc); this patch ensures these generated functions are marked override, and not (redundantly) virtual.
    
    I hesitate to say NFC since this does of course affect the behavior of the generator code, but the generated code behaves the same as it did before, so it's NFC in that sense.
    
    Differential Revision: https://reviews.llvm.org/D83616
    kepler-5 committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    fbb30c3 View commit details
    Browse the repository at this point in the history
  71. [NFC] Add 'override' keyword where missing in include/ and lib/.

    This fixes warnings raised by Clang's new -Wsuggest-override, in preparation for enabling that warning in the LLVM build. This patch also removes the virtual keyword where redundant, but only in places where doing so improves consistency within a given file. It also removes a couple unnecessary virtual destructor declarations in derived classes where the destructor inherited from the base class is already virtual.
    
    Differential Revision: https://reviews.llvm.org/D83709
    kepler-5 committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    a19461d View commit details
    Browse the repository at this point in the history
  72. Fix merging of two arity-only pack deductions.

    If we deduced the arity of a pack in two different ways, but didn't
    deduce an element of the pack in either of those deductions, we'd merge
    that element to produce a null template argument, which we'd incorrectly
    interpret as the merge having failed.
    
    Testcase based on one supplied by Hubert Tong.
    zygoloid committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    bfd6433 View commit details
    Browse the repository at this point in the history
  73. [clangd] Config: Index.Background

    Summary:
    We only support Build/Skip for now, but with 'Load' or similar as an
    option for future (load existing shards but don't build new ones).
    
    This requires creating the config for each TU on startup. In LLVM, this
    is 4000 occurrences for a total of 800ms on my machine.
    But together with caching from D83755 it is only 25ms.
    
    Reviewers: kadircet
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D83768
    sam-mccall committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    dbf486c View commit details
    Browse the repository at this point in the history
  74. [lldb/Test] Skip TestProcessConnect.py on Windows

    Skip TestProcessConnect.py on Windows and Android (the same platforms as
    TestPlatformProcessConnect.py) and mark it as a NO_DEBUG_INFO test so we
    don't run all the variants.
    JDevlieghere committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    f5f15ac View commit details
    Browse the repository at this point in the history
  75. [flang] Turn off FLANG_ENABLE_WERROR by default

    Summary: This is a follow up to https://reviews.llvm.org/D78306
    
    Reviewers: DavidTruby, sscalpone, jdoerfert
    
    Reviewed By: DavidTruby
    
    Subscribers: tskeith, Meinersbur, ChinouneMehdi, richard.barton.arm, mehdi_amini, mgorny, llvm-commits
    
    Tags: #llvm, #flang
    
    Differential Revision: https://reviews.llvm.org/D81695
    isuruf committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    9017b9c View commit details
    Browse the repository at this point in the history
  76. [lit] Prevent hang when lit sees non-ASCII characters

    As per discussion in D69207, have lit ignore UnicodeDecodeErrors
    when running with python 2 in an ASCII shell.
    
    Differential Revision: https://reviews.llvm.org/D82754
    RichBarton-Arm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    f4476b7 View commit details
    Browse the repository at this point in the history
  77. [lldb] lldbinline and lldbtest gardening (NFC)

     - Make the open more Pythonic.
     - Remove the unused `cleanup` Make target.
     - Remove commented-out/obvious/low-value comments.
     - Cleanup the forked process PID list.
    JDevlieghere committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    9ecbad5 View commit details
    Browse the repository at this point in the history
  78. [lldb] Use runBuildCommands from buildGModules

    Use runBuildCommands, like all other builders, to raise a build-specific
    error when the command fails.
    JDevlieghere committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    5a62008 View commit details
    Browse the repository at this point in the history
  79. [clang][aarch64] Generate preprocessor macros for -march=armv8.6a+sve.

    Summary:
    The following preprocessor macros are implied when `-march=armv8.6a+sve`:
    
    ```
    __ARM_FEATURE_SVE 1
    __ARM_FEATURE_SVE_BF16 1
    __ARM_FEATURE_SVE_MATMUL_FP32 1
    __ARM_FEATURE_SVE_MATMUL_INT8 1
    ```
    
    Reviewers: sdesmalen, efriedma, SjoerdMeijer, rengolin
    
    Subscribers: tschuett, kristof.beyls, danielkiss, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D83079
    Francesco Petrogalli committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    438e95e View commit details
    Browse the repository at this point in the history
  80. [ORC] Don't take ownership of the trampoline pool in LazyReexportsMan…

    …ager.
    
    LazyReexportsManager instances use the trampoline pool, but they don't need to
    own it. Keeping TrampolinePool ownership separate allows re-use of the
    trampoline pool by other clients.
    lhames committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3d931e8 View commit details
    Browse the repository at this point in the history
  81. Update ubsan_interface.inc for D71491 (second try)

    I mistyped the ubsan objc_cast handler names on the first try.
    
    Testing:
    
    ./bin/llvm-lit projects/compiler-rt/test/asan/X86_64HDarwinConfig/TestCases/Darwin/interface_symbols_darwin.cpp
    vedantk committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    a8694eb View commit details
    Browse the repository at this point in the history
  82. [MLIR] [NFC] Buffer placement pass - clang tidy warnings

    Add missing const - addresses clang tidy warnings.
    
    Differential Revision: https://reviews.llvm.org/D83794
    bondhugula committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    9b974df View commit details
    Browse the repository at this point in the history
  83. [ObjC] Wrap namespace-global structs in an anonymous namespace to avo…

    …id ODR violations
    
    <rdar://problem/65537147>
    
    Differential Revision:  https://reviews.llvm.org/D83796
    Davide Italiano committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    3f2d880 View commit details
    Browse the repository at this point in the history
  84. TableGen/GlobalISel: Partially fix nontrivial, custom predicates

    Currently custom code predicates can only really be used for
    contextless checks tied to a single instruction (e.g. check the def
    for hasOneUse). If you do want to inspect the input instructions in
    the source pattern, you cannot without re-verifying the opcode and
    type checks implied by the patterns, since this check was emitted
    before any operand constraints. Really, these are pattern level
    predicates that implicitly depend on the instruction and operand
    checks.
    
    Introduce a filtering function so the custom predicate is emitted
    last. I'm not sure this is the most elegant solution. It seems like
    this is really a different thing from the InstructionMatcher/IPM_
    predicate kinds. I initially tried keeping this in a separate
    predicate list, but that also seemed awkward.
    
    This only half fixes the problem I'm trying to solve. The AMDGPU
    pattern I'm attempting to port also uses the PredicateCodeUsesOperands
    feature to allow checks on the source operands when the input pattern
    is commuted. Really the emitter should reject the pattern since it
    doesn't handle this case, but at this point it would be more
    productive to just implement this.
    arsenm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    1254f6d View commit details
    Browse the repository at this point in the history
  85. [flang][openacc] OpenACC 3.0 parser

    Summary:
    This patch introduce the parser for OpenACC 3.0 in Flang. It uses the same TableGen mechanism
    than OpenMP.
    
    Reviewers: nvdatian, sscalpone, tskeith, klausler, ichoyjx, jdoerfert, DavidTruby
    
    Reviewed By: klausler
    
    Subscribers: MaskRay, SouraVX, mgorny, hiraditya, jfb, sstefan1, llvm-commits
    
    Tags: #llvm, #flang
    
    Differential Revision: https://reviews.llvm.org/D83649
    clementval committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    0a90ffa View commit details
    Browse the repository at this point in the history
  86. Desugar class type for iterator lookup.

    Summary:
    Without this, printing sets and maps hidden behind
    using declarations fail.
    
    Reviewers: #libc!
    
    Subscribers: libcxx-commits
    
    Tags: #libc
    
    Differential Revision: https://reviews.llvm.org/D83732
    Sterling-Augustine committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    77ee4b4 View commit details
    Browse the repository at this point in the history
  87. [clangd] Make config::Provider::combine non-owning. NFC

    This is a prerequisite for having ClangdLSPServer inject its own.
    sam-mccall committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    f88ce07 View commit details
    Browse the repository at this point in the history
  88. [MLIR][StdToSPIRV] Fixed a typo in ops conversion tests

    Fixed a typo in `std-ops-to-spitv.mlir` test.
    
    Reviewed By: rriddle
    
    Differential Revision: https://reviews.llvm.org/D83791
    georgemitenkov committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    be15284 View commit details
    Browse the repository at this point in the history
  89. [Matrix] Intrinsic descriptions

    This changes the matrix load/store intrinsic definitions to load/store from/to
    a pointer, and not from/to a pointer to a vector, as discussed in D83477.
    
    This also includes the recommit of "[Matrix] Tighten LangRef definitions and
    Verifier checks" which adds improved language reference descriptions of the
    matrix intrinsics and verifier checks.
    
    Differential Revision: https://reviews.llvm.org/D83785
    Sjoerd Meijer committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    2b3c505 View commit details
    Browse the repository at this point in the history
  90. [flang] Change the default F18_FC to gfortran

    Summary: Changed default F18_FC from pgf90 to gfortran. Removed unnecessary references to pgf90 in favor of more generic naming.
    
    Reviewers: sscalpone, richard.barton.arm, DavidTruby, jdoerfert, clementval
    
    Reviewed By: sscalpone, richard.barton.arm, clementval
    
    Subscribers: sstefan1, tskeith, klausler, clementval, flang-commits, llvm-commits
    
    Tags: #llvm, #flang
    
    Differential Revision: https://reviews.llvm.org/D83488
    AlexisPerry committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    02c3f70 View commit details
    Browse the repository at this point in the history
  91. Restore "[WPD/LowerTypeTests] Delay lowering/removal of type tests un…

    …til after ICP"
    
    This restores commit 80d0a13, and the
    follow on fix in 873c0d0, with a new
    fix for test failures after a 2-stage clang bootstrap, and a more robust
    fix for the Chromium build failure that an earlier version partially
    fixed. See also discussion on D75201.
    
    Reviewers: evgeny777
    
    Subscribers: mehdi_amini, Prazek, hiraditya, steven_wu, dexonsmith, arphaman, davidxl, cfe-commits, llvm-commits
    
    Tags: #clang, #llvm
    
    Differential Revision: https://reviews.llvm.org/D73242
    teresajohnson committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    6014c46 View commit details
    Browse the repository at this point in the history
  92. llvm-link: Add support for archive files as inputs

    This patch adds support for archive files as inputs to llvm-link. One
    of the use-cases is for OpenMP, where device specific libraries need
    to be extracted from libraries containing bundled object files. The
    clang-offload-bundler will support extracting these archives, which
    will be passed into llvm-link, see https://reviews.llvm.org/D80816.
    
    Reviewed By: jdoerfert
    
    Differential Revision: https://reviews.llvm.org/D81109
    jsjodin committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    66b4095 View commit details
    Browse the repository at this point in the history
  93. Configuration menu
    Copy the full SHA
    368eb77 View commit details
    Browse the repository at this point in the history
  94. [clangd] Config: on by default

    Summary: (Possible to flip back on the branch if this breaks things)
    
    Reviewers: kadircet
    
    Subscribers: ilya-biryukov, MaskRay, jkorous, arphaman, usaxena95, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D83790
    sam-mccall committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    00d97b7 View commit details
    Browse the repository at this point in the history
  95. [NFC] Add debug and stat counters to assume queries and assume builder

    Summary:
    Add debug counter and stats counter to assume queries and assume builder
    here is the collected stats on a build of check-llvm + check-clang.
      "assume-builder.NumAssumeBuilt": 2720879,
      "assume-builder.NumAssumesMerged": 761396,
      "assume-builder.NumAssumesRemoved": 1576212,
      "assume-builder.NumBundlesInAssumes": 6518809,
      "assume-queries.NumAssumeQueries": 85566380,
      "assume-queries.NumUsefullAssumeQueries": 2727360,
    the NumUsefullAssumeQueries stat is actually pessimistic because in a few places queries
    ask to keep providing information to try to get better information. and this isn't counted
    as a usefull query evem tho it can be usefull
    
    Reviewers: jdoerfert
    
    Reviewed By: jdoerfert
    
    Subscribers: hiraditya, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83506
    Ralender committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    16f777f View commit details
    Browse the repository at this point in the history
  96. Call Frame Information (CFI) Handling for Basic Block Sections

    This patch handles CFI with basic block sections, which unlike DebugInfo does
    not support ranges. The DWARF standard explicitly requires emitting separate
    CFI Frame Descriptor Entries for each contiguous fragment of a function. Thus,
    the CFI information for all callee-saved registers (possibly including the
    frame pointer, if necessary) have to be emitted along with redefining the
    Call Frame Address (CFA), viz. where the current frame starts.
    
    CFI directives are emitted in FDE’s in the object file with a low_pc, high_pc
    specification. So, a single FDE must point to a contiguous code region unlike
    debug info which has the support for ranges. This is what complicates CFI for
    basic block sections.
    
    Now, what happens when we start placing individual basic blocks in unique
    sections:
    
    * Basic block sections allow the linker to randomly reorder basic blocks in the
    address space such that a given basic block can become non-contiguous with the
    original function.
    * The different basic block sections can no longer share the cfi_startproc and
    cfi_endproc directives. So, each basic block section should emit this
    independently.
    * Each (cfi_startproc, cfi_endproc) directive will result in a new FDE that
    caters to that basic block section.
    * Now, this basic block section needs to duplicate the information from the
    entry block to compute the CFA as it is an independent entity. It cannot refer
    to the FDE of the original function and hence must duplicate all the stuff that
    is needed to compute the CFA on its own.
    * We are working on a de-duplication patch that can share common information in
    FDEs in a CIE (Common Information Entry) and we will present this as a follow up
    patch. This can significantly reduce the duplication overhead and is
    particularly useful when several basic block sections are created.
    * The CFI directives are emitted similarly for registers that are pushed onto
    the stack, like callee saved registers in the prologue. There are cfi
    directives that emit how to retrieve the value of the register at that point
    when the push happened. This has to be duplicated too in a basic block that is
    floated as a separate section.
    
    Differential Revision: https://reviews.llvm.org/D79978
    amharc authored and tmsri committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    c3e6555 View commit details
    Browse the repository at this point in the history
  97. [mlir][DialectConversion] Emit an error if an operation marked as era…

    …sed has live users after conversion
    
    Up until now, there has been an implicit agreement that when an operation is marked as
    "erased" all uses of that operation's results are guaranteed to be removed during conversion. How this works in practice is that there is either an assert/crash/asan failure/etc. This revision adds support for properly detecting when an erased operation has dangling users, emits and error and fails the conversion.
    
    Differential Revision: https://reviews.llvm.org/D82830
    River707 committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    b98f414 View commit details
    Browse the repository at this point in the history
  98. [CallGraph] Ignore callback uses

    Summary:
    Ignore callback uses when adding a callback function
    in the CallGraph. Callback functions are typically
    created when outlining, e.g. for OpenMP, so they have
    internal scope and linkage. They should not be added
    to the ExternalCallingNode since they are only callable
    by the specified caller function at creation time.
    
    A CGSCC pass, such as OpenMPOpt, may need to update
    the CallGraph by adding a new outlined callback function.
    Without ignoring callback uses, adding breaks CGSCC
    pass restrictions and results to a broken CallGraph.
    
    Reviewers: jdoerfert
    
    Subscribers: hiraditya, sstefan1, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83370
    ggeorgakoudis committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    aef60af View commit details
    Browse the repository at this point in the history
  99. [mlir] Add support for parsing optional Attribute values.

    This adds a `parseOptionalAttribute` method to the OpAsmParser that allows for parsing optional attributes, in a similar fashion to how optional types are parsed. This also enables the use of attribute values as the first element of an assembly format optional group.
    
    Differential Revision: https://reviews.llvm.org/D83712
    River707 committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    6b476e2 View commit details
    Browse the repository at this point in the history
  100. [flang] Tuning up binary->decimal conversion

    Use short division of big-radix values by powers of two when
    converting values with negative unbiased exponents rather than
    multiplication by smaller powers of five; this reduces the overall
    outer iteration count. This change is a win across the entire range
    of inputs.
    
    Reviewed By: tskeith
    
    Differential Revision: https://reviews.llvm.org/D83806
    klausler committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    ce6f030 View commit details
    Browse the repository at this point in the history
  101. [MC] Support .reloc sym+constant, *, *

    For `.reloc offset, *, *`, currently offset can be a constant or symbol.
    This patch makes it support any expression which can be folded to sym+constant.
    
    Reviewed By: stefanp
    
    Differential Revision: https://reviews.llvm.org/D83751
    MaskRay committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    b71ef0c View commit details
    Browse the repository at this point in the history
  102. [libc++] Automatically detect whether RTTI is enabled

    Instead of detecting it automatically but also allowing for the setting
    to be specified explicitly, always detect whether exceptions are enabled
    based on whether -fno-rtti (or equivalent) is used. It's less confusing
    to have a single way of tweaking that knob.
    
    This change follows the lead of 71d88ce.
    ldionne committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    eaca1e4 View commit details
    Browse the repository at this point in the history
  103. Fix tests after 16f777f

    Ralender committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    0257ba5 View commit details
    Browse the repository at this point in the history
  104. [lldb/Test] Always set the cleanupSubprocesses tear down hook

    Always clean up subprocesses on tear down instead of relying on the
    caller to do so. This is not only less error prone but also means the
    tests can be more concise.
    
    Differential revision: https://reviews.llvm.org/D83787
    JDevlieghere committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    4aafc47 View commit details
    Browse the repository at this point in the history
  105. [lldb/Test] Skip TestProcessConnect.py on Windows

    Remote connections are not supported on Windows.
    JDevlieghere committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    c6e8bf7 View commit details
    Browse the repository at this point in the history
  106. [llvm][NFC] expose LLVM_HAVE_TF_API through llvm-config.h

    Summary:
    This allows users of the llvm library discover whether llvm was built
    with the tensorflow c API dependency, which helps if using the TFUtils
    wrapper, for example.
    
    We don't do the same for the LLVM_HAVE_TF_AOT flag, because that does
    not expose any API.
    
    Reviewers: mehdi_amini, davidxl
    
    Subscribers: mgorny, aaron.ballman, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83746
    mtrofin committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    c1e2f73 View commit details
    Browse the repository at this point in the history
  107. [flang] Refine CR handling

    We need to retain carriage return characters in source files
    that are not parts of multi-byte line endings; they are
    significant in CHARACTER literal constants.
    
    Reviewed By: tskeith
    
    Differential Revision: https://reviews.llvm.org/D83808
    klausler committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    af6b8d5 View commit details
    Browse the repository at this point in the history
  108. document -fpch-instantiate-templates in release notes

    This should have been included in D69585.
    
    Differential Revision: https://reviews.llvm.org/D83622
    llunak committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    d1ca996 View commit details
    Browse the repository at this point in the history
  109. [clang-tidy] OptionsView::store specialized on bool

    Following on fcf7cc2 and 672207c which granted checks the ability to read boolean configuration arguments as `true` or `false`.
    This enables storing the options back to the configuration file using `true` and `false`.
    This is in line with how clang-format dumps boolean options in its style config.
    
    Reviewed By: aaron.ballman
    
    Differential Revision: https://reviews.llvm.org/D83053
    njames93 committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    fcf0f75 View commit details
    Browse the repository at this point in the history
  110. [SVE] Make cstfp_pred_ty and cst_pred_ty work with scalable splats

    Reviewers: efriedma, lebedev.ri, fhahn, c-rhodes, david-arm
    
    Reviewed By: efriedma, david-arm
    
    Subscribers: tschuett, rkruppe, psnobl, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83001
    christetreault-llvm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    9c87c55 View commit details
    Browse the repository at this point in the history
  111. [libFuzzer] Separate platform related macros out from FuzzerDefs.h in…

    …to FuzzerPlatform.h, and adjust includes in other files.
    
    Summary: This patch separates platform related macros in lib/fuzzer/FuzzerDefs.h into lib/fuzzer/FuzzerPlatform.h, and use FuzzerPlatform.h where necessary. This separation helps when compiling libFuzzer's interceptor module (under review); an unnecessary include of standard headers (such as string.h) may produce conflicts/ambiguation with the interceptor's declarations/definitions of library functions, which complicates interceptor implementation.
    
    Reviewers: morehouse, hctim
    
    Reviewed By: morehouse
    
    Subscribers: krytarowski, #sanitizers
    
    Tags: #sanitizers
    
    Differential Revision: https://reviews.llvm.org/D83805
    dokyungs authored and morehouse committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    226866e View commit details
    Browse the repository at this point in the history
  112. [clang] Teach -fembed-bitcode option not to embed W_value Group

    Summary:
    -fembed-bitcode options doesn't embed warning options since they are
    useless to code generation. Make sure it handles the W_value group and
    not embed those options in the output.
    
    Reviewers: zixuw, arphaman
    
    Reviewed By: zixuw
    
    Subscribers: jkorous, dexonsmith, ributzka, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D83813
    cachemeifyoucan committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    2b42080 View commit details
    Browse the repository at this point in the history
  113. Configuration menu
    Copy the full SHA
    bef00b2 View commit details
    Browse the repository at this point in the history
  114. [flang] Fix a crash when an array constructor contains an unlimited p…

    …olymorphic value
    
    Summary:
    C7113 States that "An ac-value shall not be unlimited polymorphic."  We failed
    to detect this situation which resulted in a crash when trying to get the
    underlying derived type specification of the unlimited polymorphic value.
    
    I added code to avoid the crash, code to emit an error message, and a test.
    
    Reviewers: klausler, tskeith, DavidTruby
    
    Subscribers: llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83793
    psteinfeld committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    0c64cb6 View commit details
    Browse the repository at this point in the history
  115. [libFuzzer] Fix compilation error by including missing platform macro…

    … definitions.
    
    Summary: This patch fixes sanitizer-windows build errors.
    
    Reviewers: morehouse, hctim
    
    Reviewed By: morehouse, hctim
    
    Subscribers: #sanitizers
    
    Tags: #sanitizers
    
    Differential Revision: https://reviews.llvm.org/D83823
    dokyungs authored and morehouse committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    750369e View commit details
    Browse the repository at this point in the history
  116. AMDGPU: Add @line to assembler error test checks

    It was basically impossible to figure out where the failure point was
    arsenm committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    4c22f5f View commit details
    Browse the repository at this point in the history
  117. [flang] Implement anonymous units in the runtime

    I/O from/to an unopened unit number needs to open &/or create
    a "fort.$UNIT" file.
    
    Fixes FCVS test fm401.f.
    
    Reviewed By: tskeith
    
    Differential Revision: https://reviews.llvm.org/D83809
    klausler committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    bd43fa2 View commit details
    Browse the repository at this point in the history
  118. [lldb/Test] Create reproducer dir if necessary

    Create the reproducer directory under the build root if it doesn't
    exists. The reproducer will only create the top level directory.
    JDevlieghere committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    984e12a View commit details
    Browse the repository at this point in the history
  119. [flang] Fix list-directed input (repeated nulls and LOGICAL)

    Allow repeated nulls in list-directed input (e.g., "4*,") and
    ignore excess characters in list-directed LOGICAL input after the
    T or F.
    
    Fixes FCVS test fm923.f.
    
    Reviewed By: sscalpone
    
    Differential Revision: https://reviews.llvm.org/D83810
    klausler committed Jul 14, 2020
    Configuration menu
    Copy the full SHA
    8dbc86a View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2020

  1. Configuration menu
    Copy the full SHA
    f49edaf View commit details
    Browse the repository at this point in the history
  2. Fix undefined behavior due to deleting an object with a non-virtual

    destructor via a pointer of the wrong static type.
    
    This caused crashes during deallocation in C++14 builds when using a
    deallocator whose sized delete requires the size argument to be correct.
    
    Also make the LazyCallThroughManager destructor protected to catch this
    sort of bug in the future.
    zygoloid committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    099fd37 View commit details
    Browse the repository at this point in the history
  3. [gn build] (manually) merge c1e2f73

    nico committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    75c0f0d View commit details
    Browse the repository at this point in the history
  4. [flang][openacc] Semantic checks for OpenACC 3.0 clauses validity

    Summary: This patch adds semantic checking for the OpenACC 3.0 clauses validity.
    
    Reviewers: sscalpone, tskeith, klausler, ichoyjx, DavidTruby, jdoerfert
    
    Reviewed By: tskeith, klausler
    
    Subscribers: mgorny, llvm-commits
    
    Tags: #llvm, #flang
    
    Differential Revision: https://reviews.llvm.org/D83807
    clementval committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    9aa3dca View commit details
    Browse the repository at this point in the history
  5. [flang] Fix out-of-tree build with missing acc_gen target

    This pacth fix out-of-tree build of Flang after the introduction of acc_gen.
    
    Reviewed By: sscalpone
    
    Differential Revision: https://reviews.llvm.org/D83835
    clementval committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    8e9a505 View commit details
    Browse the repository at this point in the history
  6. Fix the skipIfRosetta decorator

    the form that takes func as an argument isn't compatible with the
    optional bugnumber argument. This means that only correct for to use it is now
    @skipIfRosetta(bugnumber='url')
    adrian-prantl committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    74c8d01 View commit details
    Browse the repository at this point in the history
  7. Make LazyCallThroughManager destructor virtual rather than arranging for

    all clients to delete it via the correct dynamic type.
    zygoloid committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    7129237 View commit details
    Browse the repository at this point in the history
  8. [IR] Add a few asserts to provide a better failure signature if you t…

    …ry to create a load/store/alloca with no alignment or insertion position
    
    If no alignment is specified we try to find the datalayout by using the insert position to get the module so we can get the datalayout. But if those are null, then we deference a null pointer.
    
    This patch adds asserts to make the failure a little more obvious than just seg faulting.
    
    Differential Revision: https://reviews.llvm.org/D83829
    topperc committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    81cfb90 View commit details
    Browse the repository at this point in the history
  9. [ObjectFilePECOFF] Try to avoid unaligned access.

    Fixes an UBSAN error.
    Davide Italiano committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    61cf9f4 View commit details
    Browse the repository at this point in the history
  10. [Attributor] Create getter function for the ID of the abstract attribute

    Summary: The `getIdAddr()` function returns the address of the ID of the abstract attribute
    
    Reviewers: jdoerfert, sstefan1, uenoku, homerdin, baziotis
    
    Reviewed By: jdoerfert
    
    Subscribers: okura, hiraditya, uenoku, kuter, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83172
    hellobbn committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    233af89 View commit details
    Browse the repository at this point in the history
  11. [AMDGPU] Apply pre-emit s_cbranch_vcc optimation to more patterns

    Add handling of s_andn2 and mask of 0.
    This eliminates redundant instructions from uniform control flow.
    
    Reviewed By: rampitec
    
    Differential Revision: https://reviews.llvm.org/D83641
    perlfu committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    6742261 View commit details
    Browse the repository at this point in the history
  12. [Attributor] Unittest for Attributor

    Summary: This patch introduces basic unittest interface for the Attributor and a simple test case for casting.
    
    Reviewers: jdoerfert, sstefan1, uenoku, homerdin, baziotis
    
    Reviewed By: jdoerfert
    
    Subscribers: mgorny, uenoku, kuter, okura, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83754
    hellobbn committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    0750757 View commit details
    Browse the repository at this point in the history
  13. [gn build] Port 0750757

    llvmgnsyncbot committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    670e837 View commit details
    Browse the repository at this point in the history
  14. [Attributor] [WIP] Track AA dependency using dependency graph

    Summary: This patch added dependency graph to the attributor so that we can dump the dependencies between AAs more easily. We can also apply general graph algorithms to the graph, making it easier for us to create deep wrappers.
    
    Reviewers: jdoerfert, sstefan1, uenoku, homerdin, baziotis
    
    Reviewed By: jdoerfert
    
    Subscribers: jfb, okura, mgrang, kuter, lebedev.ri, hiraditya, uenoku, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D78861
    hellobbn committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    6b78ed6 View commit details
    Browse the repository at this point in the history
  15. [CMake] Simplify CMake handling for zlib

    Rather than handling zlib handling manually, use find_package from CMake
    to find zlib properly. Use this to normalize the LLVM_ENABLE_ZLIB,
    HAVE_ZLIB, HAVE_ZLIB_H. Furthermore, require zlib if LLVM_ENABLE_ZLIB is
    set to YES, which requires the distributor to explicitly select whether
    zlib is enabled or not. This simplifies the CMake handling and usage in
    the rest of the tooling.
    
    This is a reland of abb0075 with all followup changes and fixes that
    should address issues that were reported in PR44780.
    
    Differential Revision: https://reviews.llvm.org/D79219
    petrhosek committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    8c1a79d View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    e21323a View commit details
    Browse the repository at this point in the history
  17. [Attributor] Track AA dependency using dependency graph

    Summary: This patch added dependency graph to the attributor so that we can dump the dependencies between AAs more easily. We can also apply general graph algorithms to the graph, making it easier for us to create deep wrappers.
    
    Reviewers: jdoerfert, sstefan1, uenoku, homerdin, baziotis
    
    Reviewed By: jdoerfert
    
    Subscribers: jfb, okura, mgrang, kuter, lebedev.ri, hiraditya, uenoku, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D78861
    hellobbn committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    8df7af5 View commit details
    Browse the repository at this point in the history
  18. Revert "[CMake] Simplify CMake handling for zlib"

    This reverts commit 8c1a79d because
    it fails when zlib isn't installed.
    petrhosek committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    bcd27d9 View commit details
    Browse the repository at this point in the history
  19. [OpenMP] Emit remarks during GPU state machine optimization

    Since D83271 we can optimize the GPU state machine to avoid spurious
    call edges that increase the register usage of kernels. With this patch
    we inform the user why and if this optimization is happening and when it
    is not.
    
    Reviewed By: ye-luo
    
    Differential Revision: https://reviews.llvm.org/D83707
    jdoerfert committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    fec1f21 View commit details
    Browse the repository at this point in the history
  20. [CallGraph] Update callback call sites in RefreshCallGraph

    Since D82572, we keep "reference" edges for callback call sites. While
    not strictly necessary they can improve the traversal order. However, we
    did not update them properly in case a pass removed the callback call
    site which caused a verification error (PR46687). With this patch we
    update these reference edges properly during the invocation of
    `CallGraphSCCPass::RefreshCallGraph` in non-checking mode.
    
    Reviewed By: sdmitriev
    
    Differential Revision: https://reviews.llvm.org/D83718
    jdoerfert committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    64d99a1 View commit details
    Browse the repository at this point in the history
  21. [OpenMP][IRBuilder] Support nested parallel regions

    During code generation we might change/add basic blocks so keeping a
    list of them is fairly easy to break. Nested parallel regions were
    enough. The new scheme does recompute the list of blocks to be outlined
    once it is needed.
    
    Reviewed By: anchu-rajendran
    
    Differential Revision: https://reviews.llvm.org/D82722
    jdoerfert committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    7af287d View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    6db99d1 View commit details
    Browse the repository at this point in the history
  23. Configuration menu
    Copy the full SHA
    d87c92e View commit details
    Browse the repository at this point in the history
  24. [Attributor] Fix build of unittest with DBUILD_SHARED_LIBS=True

    The dependencies in llvm/unittests/Transforms/IPO/CMakeLists.txt
    introduced in revision 0750757 were incomplete, leading to link errors
    for a DBUILD_SHARED_LIBS=True build.
    asb committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    5282a61 View commit details
    Browse the repository at this point in the history
  25. [llvm][NFC] Hide the tensorflow dependency from headers.

    Summary:
    This change avoids exposing tensorflow types when including TFUtils.h.
    They are just an implementation detail, and don't need to be used
    directly when implementing an analysis requiring ML model evaluation.
    
    The TFUtils APIs, while generically typed, are still not exposed unless
    the tensorflow C library is present, as they currently have no use
    otherwise.
    
    Reviewers: mehdi_amini, davidxl
    
    Subscribers: hiraditya, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D83843
    mtrofin committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    4f763b2 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    92f7bd3 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    694ded3 View commit details
    Browse the repository at this point in the history
  28. [mlir][Vector] Degrade masking information when forwarding linalg.cop…

    …y to vector.transfer
    
    Summary:
    linalg.copy + linalg.fill can be used to create a padded local buffer.
    The `masked` attribute is only valid on this padded buffer.
    When forwarding to vector.transfer ops, the attribute must be reset
    conservatively.
    
    Differential Revision: https://reviews.llvm.org/D83782
    Nicolas Vasilache committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    512da70 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    7f680be View commit details
    Browse the repository at this point in the history
  30. Configuration menu
    Copy the full SHA
    c86c1e9 View commit details
    Browse the repository at this point in the history
  31. Make linalg::ReshapeOp implement ViewLikeOpInterface

    Summary: A reshape aliases its input memref, so it acts like a view.
    
    Differential Revision: https://reviews.llvm.org/D83773
    Stephan Herhut committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    1919c8b View commit details
    Browse the repository at this point in the history
  32. [MLIR][SPIRVToLLVM] SPIRV function fix and nits

    This patch addresses the comments from https://reviews.llvm.org/D83030 and
    https://reviews.llvm.org/D82639. `this->` is removed when not inside the
    template. Also, type conversion for `spv.func` takes `convertRegionTypes()`
    in order to apply type conversion on all blocks within the function.
    
    Reviewed By: rriddle
    
    Differential Revision: https://reviews.llvm.org/D83786
    georgemitenkov committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    d431951 View commit details
    Browse the repository at this point in the history
  33. [NFC] Add tests for boolean comparisons

    They currently show that the not equal case may be improved.
    
    See PR42876
    
    Differential Revision: https://reviews.llvm.org/D65801
    rofirrim committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    2b6215f View commit details
    Browse the repository at this point in the history
  34. [DAGCombiner] Rebuild (setcc x, y, ==) from (xor (xor x, y), 1)

    The existing code already considered this case. Unfortunately a typo in
    the condition prevents it from triggering. Also the existing code, had
    it run, forgot to do the folding.
    
    This fixes PR42876.
    
    Differential Revision: https://reviews.llvm.org/D65802
    rofirrim committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    14bc5e1 View commit details
    Browse the repository at this point in the history
  35. [RISCV] Add error checking for extensions missing separating underscores

    Currently if two multi-letter extensions are provided in a -march=
    string, the verification code checks the version of the first and
    consumes the second, resulting in that part of the architecture
    string being ignored. This adds a test that when a version number has
    been parsed for an extension, there are no subsequent characters.
    
    Differential Revision: https://reviews.llvm.org/D83819
    simonpcook committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    de7bf72 View commit details
    Browse the repository at this point in the history
  36. [lldb][formatters] Add support for printing NSConstantDate and fix di…

    …stantPast value
    
    Summary:
    
    Certain `NSDate` constructors return a special `NSConstantDate` class which
    currently ends up being unformatted as it's not in the list of supported classes
    for the NSDate formatter. This patch adds that class to the supported class list
    so LLDB produces a summary for it.
    
    One of these special constructors is `[NSDate distantPast]` which returns the
    date for `0001-01-01 00:00:00 UTC`. LLDB has a special case for formatting this
    date but for some reason we did hardcode the wrong summary string in that
    special case. Maybe the summary string was correct back when the code was
    written but it isn't correct anymore (`distantPast` isn't actually defined to be
    a special date but just some 'a guaranteed temporal boundary.' so maybe someone
    changed the value in the last 10 years).
    
    If someone else is wondering why we even have this special case for
    `distantPast` but not for the future. The reason seems to be that our date
    formatting for really old dates is off by 24 hours. So for example, adding one
    second to `distantPast` will cause LLDB to print `0000-12-30 00:00:01 UTC`
    (which is 24 hours behind the expected result). So to make our code appear to be
    correct it seems we just hardcoded the most common NSDate result from that time
    span. I'll replace that logic with a generic solution in a probably more
    invasive follow up patch.
    
    I also took the freedom to replace the magic value `-63114076800` with some
    constant + documentation. I heard there are some people that don't know from the
    top of their head that there are 63114076800 seconds between 1. Jan 0001 and 1.
    January 2001 in whatever calendar system NSDate is using.
    
    Reviewers: mib, davide
    
    Reviewed By: mib
    
    Subscribers: JDevlieghere
    
    Differential Revision: https://reviews.llvm.org/D83217
    Teemperor committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    001c78d View commit details
    Browse the repository at this point in the history
  37. [clang][Driver] Fix tool path priority test failures

    Summary:
    Failure type 1:
    This test can fail when the path of the build includes the strings
    we're checking for. E.g "/gcc" is found in ".../gcc_7.3.0/..."
    
    To correct this look for '"' on the end of all matches. So that we
    only match the end of paths printed by clang -###.
    (which would be ".../gcc_7.3.0/.../gcc" for the example)
    
    Also look for other gcc names like gcc-x.y.z in the first check.
    This confirms that the copy of clang we made is isolated as expected.
    
    Failure type 2:
    If you use a triple like "powerpc64le-linux-gnu" clang actually reports
    "powerpc64le-unknown-linux-gnu". Then it searches for the
    former.
    
    That combined with Mac OS adding a version number to cmake's triple
    means we can't trust cmake or clang to give us the one default triple.
    To fix the test, write to both names. As they don't overlap with our
    fake triple, we're still showing that the lookup works.
    
    Reviewers: MaskRay, stevewan
    
    Reviewed By: stevewan
    
    Subscribers: miyuki, JDevlieghere, steven.zhang, stevewan, cfe-commits
    
    Tags: #clang
    
    Differential Revision: https://reviews.llvm.org/D83055
    DavidSpickett committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    fe59122 View commit details
    Browse the repository at this point in the history
  38. AArch64+ARM: make LLVM consider system registers volatile.

    Some of the system registers readable on AArch64 and ARM platforms
    return different values with each read (for example a timer counter),
    these shouldn't be hoisted outside loops or otherwise interfered with,
    but the normal @llvm.read_register intrinsic is only considered to read
    memory.
    
    This introduces a separate @llvm.read_volatile_register intrinsic and
    maps all system-registers on ARM platforms to use it for the
    __builtin_arm_rsr calls. Registers declared with asm("r9") or similar
    are unaffected.
    TNorthover committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    5165b2b View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    9697a9e View commit details
    Browse the repository at this point in the history
  40. Configuration menu
    Copy the full SHA
    f782d9c View commit details
    Browse the repository at this point in the history
  41. [Support] Fix Windows directory_iterator_construct out of bounds

    Fix incorrect use of the size of Path when accessing PathUTF16, as the
    UTF-16 path can be shorter. Added unit test for coverage of this test
    case.
    
    Thanks to Ding Fei (danix800) for the code fix, see
    https://reviews.llvm.org/D83321.
    
    Differential Revision: https://reviews.llvm.org/D83689
    nga888 committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    f6eb5da View commit details
    Browse the repository at this point in the history
  42. [llvm-readobj] - Verify the location of program headers better.

    This improves condition in the ELFFile::program_headers().
    Previously if was possible to read the headers from the wrong place when
    the value of e_phoff was so large that computation overflowed.
    
    Differential revision: https://reviews.llvm.org/D83774
    Georgii Rymar committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    327c445 View commit details
    Browse the repository at this point in the history
  43. [Matrix] Only pass vector arg as overloaded type in MatrixBuilder.

    In 2b3c505, the pointer arguments for the matrix load and store
    intrinsics was changed to always be the element type of the vector
    argument.
    
    This patch updates the MatrixBuilder to not add the pointer type to the
    overloaded types and adjusts the clang/mlir tests.
    
    This should fix a few build failures on GreenDragon, including
     http://green.lab.llvm.org/green/job/test-suite-verify-machineinstrs-x86_64-O0-g/7891/
    fhahn committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    c872e80 View commit details
    Browse the repository at this point in the history
  44. [yaml2obj] - Rename FileHeader::SH* fields.

    In D83482 we agreed to name e_* fields that are used for overriding
    values (like e_phoff) as EPh* (e.g. EPhOff).
    
    Currently we have a set of e_sh* fields that are named inconsistently
    with this rule. This patch renames all of them.
    
    Differential revision: https://reviews.llvm.org/D83766
    Georgii Rymar committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    7a587ca View commit details
    Browse the repository at this point in the history
  45. [RISCV] Fix RISCVInstrInfo::getInstSizeInBytes for atomics pseudos

    Summary:
    Without these, the generic branch relaxation pass will underestimate the
    range required for branches spanning these and we can end up with
    "fixup value out of range" errors rather than relaxing the branches.
    Some of the instructions in the expansion may end up being compressed
    but exactly determining that is awkward, and these conservative values
    should be safe, if slightly suboptimal in rare cases.
    
    Reviewers: asb, lenary, luismarques, lewis-revill
    
    Reviewed By: asb, luismarques
    
    Subscribers: hiraditya, rbar, johnrusso, simoncook, sabuasal, niosHD, kito-cheng, shiva0217, MaskRay, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, jfb, PkmX, jocewei, psnobl, benna, Jim, s.egerton, pzheng, sameer.abuasal, apazos, evandro, llvm-commits
    
    Tags: #llvm
    
    Differential Revision: https://reviews.llvm.org/D77443
    jrtc27 committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    3382c24 View commit details
    Browse the repository at this point in the history
  46. [RISCV] Duplicate pseudo expansion comment to RISCVMCCodeEmitter

    Follow-on from D77443. Although we're not fixing any of these
    pseudo-instructions, the potential for them to be out of sync still
    exists.
    jrtc27 committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    2dc16fb View commit details
    Browse the repository at this point in the history
  47. [LLD][ELF] - Update test after yaml2obj change. NFC.

    Names of YAML keys changed in rG7a587ca93200c49e47fe205ce037895c81c5a542
    Georgii Rymar committed Jul 15, 2020
    Configuration menu
    Copy the full SHA
    2e10b7a View commit details
    Browse the repository at this point in the history

Commits on Dec 15, 2020

  1. Merge remote-tracking branch 'origin/master' into updated-master-12-init

    # Conflicts:
    #	.gitignore
    #	README.md
    #	clang-tools-extra/clang-tidy-vs/ClangTidy/packages.config
    #	clang-tools-extra/clangd/CMakeLists.txt
    #	clang-tools-extra/clangd/ClangdLSPServer.cpp
    #	clang-tools-extra/clangd/ClangdLSPServer.h
    #	clang-tools-extra/clangd/ClangdServer.cpp
    #	clang-tools-extra/clangd/ClangdServer.h
    #	clang-tools-extra/clangd/Diagnostics.cpp
    #	clang-tools-extra/clangd/tool/ClangdMain.cpp
    #	clang/include/clang/AST/ASTContext.h
    #	clang/include/clang/AST/ASTNodeTraverser.h
    #	clang/include/clang/AST/Decl.h
    #	clang/include/clang/AST/DeclBase.h
    #	clang/include/clang/AST/Expr.h
    #	clang/include/clang/AST/Stmt.h
    #	clang/include/clang/AST/TextNodeDumper.h
    #	clang/include/clang/AST/Type.h
    #	clang/include/clang/AST/TypeNodes.def
    #	clang/include/clang/Basic/CodeGenOptions.def
    #	clang/include/clang/Basic/DiagnosticGroups.td
    #	clang/include/clang/Basic/DiagnosticParseKinds.td
    #	clang/include/clang/Basic/DiagnosticSemaKinds.td
    #	clang/include/clang/Basic/Specifiers.h
    #	clang/include/clang/Driver/Options.td
    #	clang/include/clang/Parse/Parser.h
    #	clang/include/clang/Sema/DeclSpec.h
    #	clang/include/clang/Serialization/ASTBitCodes.h
    #	clang/include/clang/Serialization/ASTReader.h
    #	clang/include/clang/Serialization/ASTWriter.h
    #	clang/lib/AST/ASTContext.cpp
    #	clang/lib/AST/ASTImporter.cpp
    #	clang/lib/AST/ASTStructuralEquivalence.cpp
    #	clang/lib/AST/CMakeLists.txt
    #	clang/lib/AST/Decl.cpp
    #	clang/lib/AST/Expr.cpp
    #	clang/lib/AST/ItaniumMangle.cpp
    #	clang/lib/AST/TextNodeDumper.cpp
    #	clang/lib/AST/Type.cpp
    #	clang/lib/AST/TypePrinter.cpp
    #	clang/lib/Basic/IdentifierTable.cpp
    #	clang/lib/CMakeLists.txt
    #	clang/lib/CodeGen/CGDebugInfo.h
    #	clang/lib/CodeGen/CGDecl.cpp
    #	clang/lib/CodeGen/CGExpr.cpp
    #	clang/lib/CodeGen/CodeGenFunction.cpp
    #	clang/lib/CodeGen/ItaniumCXXABI.cpp
    #	clang/lib/Frontend/CompilerInvocation.cpp
    #	clang/lib/Parse/ParseDecl.cpp
    #	clang/lib/Parse/ParseDeclCXX.cpp
    #	clang/lib/Parse/ParseExpr.cpp
    #	clang/lib/Parse/ParseExprCXX.cpp
    #	clang/lib/Parse/ParsePragma.cpp
    #	clang/lib/Sema/CMakeLists.txt
    #	clang/lib/Sema/DeclSpec.cpp
    #	clang/lib/Sema/Sema.cpp
    #	clang/lib/Sema/SemaCast.cpp
    #	clang/lib/Sema/SemaChecking.cpp
    #	clang/lib/Sema/SemaDecl.cpp
    #	clang/lib/Sema/SemaExceptionSpec.cpp
    #	clang/lib/Sema/SemaExpr.cpp
    #	clang/lib/Sema/SemaInit.cpp
    #	clang/lib/Sema/SemaTemplateDeduction.cpp
    #	clang/lib/Sema/SemaType.cpp
    #	clang/lib/Sema/TreeTransform.h
    #	clang/lib/Serialization/ASTReader.cpp
    #	clang/lib/Serialization/ASTReaderDecl.cpp
    #	clang/lib/Serialization/ASTReaderStmt.cpp
    #	clang/lib/Serialization/ASTWriter.cpp
    #	clang/lib/Serialization/ASTWriterStmt.cpp
    #	clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    #	clang/test/AST/ast-dump-attr.m
    #	clang/test/AST/ast-dump-c-attr.c
    #	clang/test/AST/sourceranges.cpp
    #	clang/test/Analysis/designated-initializer.c
    #	clang/test/lit.cfg.py
    #	clang/test/lit.site.cfg.py.in
    #	clang/tools/clang-format-vs/README.txt
    #	clang/tools/clang-import-test/clang-import-test.cpp
    #	llvm/CMakeLists.txt
    #	llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h
    #	llvm/unittests/ADT/CMakeLists.txt
    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    da3b31a View commit details
    Browse the repository at this point in the history
  2. Change DStmt to StmtNode

    (cherry picked from commit 44140eb)
    (cherry picked from commit f29b94c)
    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    26f18ec View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    16e7d7f View commit details
    Browse the repository at this point in the history
  4. Change NumCtorInitializers from 21 to 17

    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    f16a170 View commit details
    Browse the repository at this point in the history
  5. Define Checked C specific types TypeVariable and Existential (includi…

    …ng serialization information)
    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    726b606 View commit details
    Browse the repository at this point in the history
  6. Fix TypeVariable and Existential constructors

    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    3b7f388 View commit details
    Browse the repository at this point in the history
  7. Add ArraySubscriptExprBitfields to Stmt.h

    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    b3a01d3 View commit details
    Browse the repository at this point in the history
  8. Expr: remove Op initializer from CastExpr

    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    6180bed View commit details
    Browse the repository at this point in the history
  9. Expr: replace boolean dependence constructor arguments with setDepend…

    …ence calls for Checked C specific expressions
    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    b031aa9 View commit details
    Browse the repository at this point in the history
  10. Bump DIAG_SIZE_SEMA to 4500

    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    98ccad8 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    adb7bb3 View commit details
    Browse the repository at this point in the history
  12. Use BinaryOperator::Create and UnaryOperator::Create

    (cherry picked from commit 08939ad)
    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    79199c6 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    ce4b462 View commit details
    Browse the repository at this point in the history
  14. Make BinaryOperator constructor public (needed for SemaBounds inverti…

    …bility methods)
    kakje committed Dec 15, 2020
    Configuration menu
    Copy the full SHA
    2824c4c View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    63e08e1 View commit details
    Browse the repository at this point in the history

Commits on Dec 16, 2020

  1. Include TargetInfo.h from ASTContext.h

    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    a8fda06 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    01bc9fc View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8f98a1c View commit details
    Browse the repository at this point in the history
  4. Add ASTContext argument to Stmt::dump calls in DumpBoundsContext and …

    …DumpExprsSet
    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    cda81a8 View commit details
    Browse the repository at this point in the history
  5. Add argument to RebuildDeclRefExpr

    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    64462cb View commit details
    Browse the repository at this point in the history
  6. Use S rather than E in SemaExceptionSpec.cpp

    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    8a3f09c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1c93a27 View commit details
    Browse the repository at this point in the history
  8. Include <stack> from CheckedCSubst.cpp

    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    ccbe106 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    368ca14 View commit details
    Browse the repository at this point in the history
  10. Add CGF argument to code gen getAddress calls

    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    38892ae View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    86c1549 View commit details
    Browse the repository at this point in the history
  12. Add bounds annotations and bounds expr methods to ASTRecordReader and…

    … ASTRecordWriter
    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    3bbc6f2 View commit details
    Browse the repository at this point in the history
  13. Fix build failures in SimpleBoundsChecker.cpp

    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    d868277 View commit details
    Browse the repository at this point in the history
  14. SimpleBoundsChecker: use PathSensitiveBugReport rather than BugReport…

    … to generate a bug report
    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    5b281cb View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    ec3eb7b View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    343c698 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    260bc32 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    9d0eb90 View commit details
    Browse the repository at this point in the history
  19. Add VisitTypeVariableTypeLoc and VisitExistentialTypeLoc to ASTReader…

    … and ASTWriter
    kakje committed Dec 16, 2020
    Configuration menu
    Copy the full SHA
    d3a084f View commit details
    Browse the repository at this point in the history

Commits on Dec 17, 2020

  1. 3C: Replace clang/Tooling/Refactoring/SourceCode.h with clang/Tooling…

    …/Transformer/SourceCode.h
    kakje committed Dec 17, 2020
    Configuration menu
    Copy the full SHA
    6af282c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a964aa6 View commit details
    Browse the repository at this point in the history
  3. 3C: Add ASTContext argument to Stmt::dump call

    kakje committed Dec 17, 2020
    Configuration menu
    Copy the full SHA
    4ea1117 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6254f76 View commit details
    Browse the repository at this point in the history
  5. 3C: Include clang/AST/ParentMapContext.h to support ASTContext::getPa…

    …rents call in CheckedRegions.cpp
    kakje committed Dec 17, 2020
    Configuration menu
    Copy the full SHA
    0576be6 View commit details
    Browse the repository at this point in the history
  6. 3C: Return std::unique_ptr<FrontendAction> rather than FrontendAction…

    … * from ArgFrontendActonFactory::create
    kakje committed Dec 17, 2020
    Configuration menu
    Copy the full SHA
    9e2728a View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    bcafb8c View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    3648b10 View commit details
    Browse the repository at this point in the history

Commits on Dec 18, 2020

  1. ASTReaderStmt: add Checked C specific cases to ReadStmtFromStream (to…

    … fix build warnings)
    kakje committed Dec 18, 2020
    Configuration menu
    Copy the full SHA
    d979b01 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fbfd50f View commit details
    Browse the repository at this point in the history

Commits on Dec 19, 2020

  1. Adjust ConstantArrayTypeBitfields to reflect ArrayTypeBitfields.Check…

    …edArrayKind
    kakje committed Dec 19, 2020
    Configuration menu
    Copy the full SHA
    eab6a8d View commit details
    Browse the repository at this point in the history

Commits on Dec 29, 2020

  1. NonModifyingExprSema: replace VisitBinAssign and VisitCompoundAssignO…

    …perator with VisitBinaryOperator (due to clang 11 changes to RecursiveASTVisitor)
    kakje committed Dec 29, 2020
    Configuration menu
    Copy the full SHA
    607ee30 View commit details
    Browse the repository at this point in the history

Commits on Dec 31, 2020

  1. Checked C inferred-bounds tests: add {{.*}} to expected output to mat…

    …ch source range output in Stmt::dump
    kakje committed Dec 31, 2020
    Configuration menu
    Copy the full SHA
    3322e51 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cc6b536 View commit details
    Browse the repository at this point in the history
  3. SemaBounds.cpp: add ASTContext argument to Stmt::dump calls for TRACE…

    …_CFG and TRACE_RANGE
    kakje committed Dec 31, 2020
    Configuration menu
    Copy the full SHA
    4942f22 View commit details
    Browse the repository at this point in the history

Commits on Jan 1, 2021

  1. Configuration menu
    Copy the full SHA
    dca8a35 View commit details
    Browse the repository at this point in the history

Commits on Jan 4, 2021

  1. Explicitly initialize bounds expressions for unary operators, array s…

    …ubscripts, and member expressions
    kakje committed Jan 4, 2021
    Configuration menu
    Copy the full SHA
    421b586 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    11bc96e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    53696f5 View commit details
    Browse the repository at this point in the history
  4. Read bounds annotations for declarator decls

    kakje committed Jan 4, 2021
    Configuration menu
    Copy the full SHA
    a77e584 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    f6c3095 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7bf6a4d View commit details
    Browse the repository at this point in the history
  7. Pass AllowCXX argument to mergeFunctionTypes

    kakje committed Jan 4, 2021
    Configuration menu
    Copy the full SHA
    0fd2ab1 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    bd84955 View commit details
    Browse the repository at this point in the history
  9. Add CheckedArrayKind to serialization information for ConstantArrayTy…

    …pe and IncompleteArrayType
    kakje committed Jan 4, 2021
    Configuration menu
    Copy the full SHA
    e745598 View commit details
    Browse the repository at this point in the history
  10. Add ParamAnnots, ReturnAnnots, NumTypeVars, GenericFunction, and Ityp…

    …eGenericFunction arguments to serialization information for FunctionProtoType
    kakje committed Jan 4, 2021
    Configuration menu
    Copy the full SHA
    223e144 View commit details
    Browse the repository at this point in the history

Commits on Jan 5, 2021

  1. Add clang/out directory to .gitignore

    kakje committed Jan 5, 2021
    Configuration menu
    Copy the full SHA
    93749c7 View commit details
    Browse the repository at this point in the history

Commits on Jan 8, 2021

  1. Configuration menu
    Copy the full SHA
    460f9fa View commit details
    Browse the repository at this point in the history
  2. In the class FunctionDeclBitFields at line 1512, 6 bits are added for

    Checked C support. As per the comment on line 1509, the variable
    NumfunctionDeclBits needs to be 33 (the sum of the sizes of all the bit
    fields)
    
    The size of  class CXXConstructorDeclBitfields (on line 1591) needs to be 64 bits.
    Accordingly, the value of the field NumCtorInitializers (one line 1603)
    needs to be adjusted.
    sulekhark committed Jan 8, 2021
    Configuration menu
    Copy the full SHA
    e08e3f6 View commit details
    Browse the repository at this point in the history

Commits on Jan 9, 2021

  1. Exclude StmtExprs from CheckingState.SameValue

    Comparing StmtExprs causes an assertion failure in CanonBounds.cpp since their children are Stmts, not Exprs. This assertion failure previously caused the CodeGen/arm-neon-range-checks.c test to fail.
    kakje committed Jan 9, 2021
    Configuration menu
    Copy the full SHA
    d3980bc View commit details
    Browse the repository at this point in the history

Commits on Jan 12, 2021

  1. Add MatrixSubscriptExpr case for GetArrayPtrDereference method in Sem…

    …aBounds.cpp
    kakje committed Jan 12, 2021
    Configuration menu
    Copy the full SHA
    f365a69 View commit details
    Browse the repository at this point in the history
  2. Prevent ParseUniqueStableNameExpression from falling through to Parse…

    …BoundsCastExpression
    kakje committed Jan 12, 2021
    Configuration menu
    Copy the full SHA
    7a299a4 View commit details
    Browse the repository at this point in the history

Commits on Jan 14, 2021

  1. Remove expected implicit value initializer from designated-initialize…

    …r.c test
    
    This reflects the pruning of ImplicitValueInitExprs from the CFG in llvm-project commit 9fdcae7
    kakje committed Jan 14, 2021
    Configuration menu
    Copy the full SHA
    7a3c221 View commit details
    Browse the repository at this point in the history
  2. Add 24 to each expected offset in ast-dump-expr-json.c to account for…

    … the -fno-checkedc-extension argument
    kakje committed Jan 14, 2021
    Configuration menu
    Copy the full SHA
    b223220 View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2021

  1. Fix failing 3c tests on Clang 11 update (#965)

    * Use VisitUnaryOperator and VisitBinaryOperator VisitUnary* and VisitBin*
    
    * Add case for DesignatedInitExpr in getExprConstraintVars
    john-h-kastner committed Jan 15, 2021
    Configuration menu
    Copy the full SHA
    7a4a124 View commit details
    Browse the repository at this point in the history

Commits on Jan 18, 2021

  1. Set the correct offset for ASTStmtReader::NumExprFields

    For creating an empty DeclRefExpr, we need to pass NumTemplateArgs. This
    depends on the NumExprFields.
    
    In Checked C, we changed the NumExprFields from 5 to 7. But upstream has this
    field as 6. So we adjust this and change it to 8.
    
    (cherry picked from commit 9902f10)
    Mandeep Singh Grang committed Jan 18, 2021
    Configuration menu
    Copy the full SHA
    5209229 View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2021

  1. Revert unintended CR/LF changes to non-3C files that originated in (#962

    )
    
    277d84a.
    
    We first submitted them in PR #837, but Mandeep noticed
    (#837 (review))
    and the unintended changes were removed from that PR in
    74bfcaf.  However, when the squash of
    PR #837 was merged with the original commits in
    cfc998e, the unintended changes were
    incorrectly retained.  They got submitted again in the next 3C PR
    (#891), and no one noticed that time.
    
    (cherry picked from commit cfe00ea)
    mattmccutchen-cci authored and kakje committed Jan 19, 2021
    Configuration menu
    Copy the full SHA
    1122fff View commit details
    Browse the repository at this point in the history

Commits on Jan 21, 2021

  1. A tentative fix that resolves the remaining OpenMP failures (there we…

    …re 9 of them). Needs to be reviewed.
    sulekhark committed Jan 21, 2021
    1 Configuration menu
    Copy the full SHA
    ed2b373 View commit details
    Browse the repository at this point in the history

Commits on Jan 23, 2021

  1. Pass MethodQualifiers argument to DeclaratorChunk::getFunction

    Fixes the SemaOpenCLCXX/address-space-lambda.cl test.
    
    DeclaratorChunk::getFunction clears the attribute pool of its TheDeclarator argument if its MethodQualifiers argument is non-null. Previously, a call to getFunction from ParseLambdaExpressionAfterIntroducer was missing the MethodQualifiers argument. This caused the attributes of the declarator to be set incorrectly, which resulted in incorrect OpenCL address spaces for declarations involving lambda expressions.
    kakje committed Jan 23, 2021
    Configuration menu
    Copy the full SHA
    c535c1b View commit details
    Browse the repository at this point in the history

Commits on Jan 26, 2021

  1. Configuration menu
    Copy the full SHA
    99478b0 View commit details
    Browse the repository at this point in the history

Commits on Jan 27, 2021

  1. Merge branch 'master' of https://github.com/microsoft/checkedc-clang

    …into updated-master-11-last
    
    # Conflicts:
    #	clang/lib/AST/CanonBounds.cpp
    #	clang/test/CheckedC/inferred-bounds/compound-literals.c
    kakje committed Jan 27, 2021
    Configuration menu
    Copy the full SHA
    a84f170 View commit details
    Browse the repository at this point in the history

Commits on Feb 2, 2021

  1. [Needs review] Fix clang Syntax unit test: add CHKCBindTemporary synt…

    …ax node
    
    Checked C binds string literals to temporaries. Add CHKCBindTemporaryExpression as a syntax node and add a separate Checked C case for the StringLiteral syntax test that expects a CHKCBindTemporary parent for StringLiteral expressions.
    kakje committed Feb 2, 2021
    Configuration menu
    Copy the full SHA
    15a3e92 View commit details
    Browse the repository at this point in the history
  2. [Needs review] Fix ASTMatchers clang unit test: add ignoringParenTmp …

    …AST matcher
    
    Checked C binds string literals to temporaries. Add a matcher that ignores parens and temporary bindings on expressions and use the matcher in the IgnoringParens ASTMatcher test.
    kakje committed Feb 2, 2021
    Configuration menu
    Copy the full SHA
    5b67a18 View commit details
    Browse the repository at this point in the history

Commits on Feb 9, 2021

  1. Fix for handling CapturedDecl which was causing the failure of some O…

    …penMP test cases after upgrade.
    sulekhark committed Feb 9, 2021
    Configuration menu
    Copy the full SHA
    2afbfb5 View commit details
    Browse the repository at this point in the history

Commits on Feb 10, 2021

  1. Revert "Fix for handling CapturedDecl which was causing the failure o…

    …f some OpenMP test cases after upgrade."
    
    This reverts commit 2afbfb5.
    
    Reverting this fix in order to resubmit these changes as a PR because it
    will be easier to incorporate review comments and other changes.
    sulekhark committed Feb 10, 2021
    Configuration menu
    Copy the full SHA
    67e8146 View commit details
    Browse the repository at this point in the history

Commits on Feb 12, 2021

  1. Frontend/ir-support.c test: add --strip-trailing-cr argument to diff

    With Git Unix utilities and cygwin utilities, the grep tool does not strip carriage returns from files. When the diff tool compares the output of grep to another file in the ir-support.c test, the output of grep contains carriage returns while the other file does not. This does not occur when using GnuWin32 utilities. The --strip-trailing-cr argument causes diff to remove carriage returns from the input files before comparing them.
    kakje committed Feb 12, 2021
    Configuration menu
    Copy the full SHA
    c705ec7 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'updated-master-11-last' of https://github.com/microsoft…

    …/checkedc-clang into updated-master-11-last
    kakje committed Feb 12, 2021
    Configuration menu
    Copy the full SHA
    774e32c View commit details
    Browse the repository at this point in the history

Commits on Feb 13, 2021

  1. Add reference section and registry for ignoringParenTmp AST matcher

    (See commit 5b67a18 which added the ignoringParenTmp matcher)
    kakje committed Feb 13, 2021
    Configuration menu
    Copy the full SHA
    a9620f1 View commit details
    Browse the repository at this point in the history

Commits on Feb 19, 2021

  1. Fix for handling CapturedDecl, which was causing the failure of certa…

    …in (#979)
    
    * Fix for handling CapturedDecl, which was causing the failure of certain
    OpenMP test case after upgrade.
    
    * Addressed review comments.
    
    * Addressed David's review comment about handling invalid source locations
    before calling CompareLoc.
    
    * Removed redundant "else".
    
    * Removed CompareLoc as this is not the best thing to use in ordering two CapturedDecls. An interim solution using pointer comparison is present, with a TODO for an improved ordering.
    
    * Minor fix.
    sulekhark committed Feb 19, 2021
    Configuration menu
    Copy the full SHA
    7e57978 View commit details
    Browse the repository at this point in the history

Commits on Feb 20, 2021

  1. Merge branch 'master' of https://github.com/microsoft/checkedc-clang

    …into updated-master-11-last
    kakje committed Feb 20, 2021
    Configuration menu
    Copy the full SHA
    a4d1ce7 View commit details
    Browse the repository at this point in the history