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

LLVM and SPIRV-LLVM-Translator pulldown (WW45 2024) #16022

Merged
merged 3,147 commits into from
Nov 13, 2024
Merged

LLVM and SPIRV-LLVM-Translator pulldown (WW45 2024) #16022

merged 3,147 commits into from
Nov 13, 2024
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Oct 17, 2024

  1. [clang][bytecode] Explicitly truncate in IntegralAP::from() (#112683)

    Add Integral::toAPInt(), which truncates to the given BitWidth, similar
    to the toAPSInt() we already have.
    tbaederr authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    5b4071c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1251687 View commit details
    Browse the repository at this point in the history
  3. [mlir][vector] Escape variable usage in test

    Otherwise the shell might expand this in the command line.
    d0k committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    4d228e1 View commit details
    Browse the repository at this point in the history
  4. [ARM] Fix -Wunused-variable in ARMFrameLowering.cpp (NFC)

    /llvm-project/llvm/lib/Target/ARM/ARMFrameLowering.cpp:1028:9:
    error: unused variable 'FPOffset' [-Werror,-Wunused-variable]
        int FPOffset = MFI.getObjectOffset(FramePtrSpillFI);
            ^
    1 error generated.
    DamonFool committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    584e00a View commit details
    Browse the repository at this point in the history
  5. [include-cleaner] Fix -Wpessimizing-move in IncludeCleaner.cpp (NFC)

    /llvm-project/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp:302:14:
    error: moving a temporary object prevents copy elision [-Werror,-Wpessimizing-move]
          return std::move(llvm::errorCodeToError(Err));
                 ^
    /llvm-project/clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp:302:14: note: remove std::move call here
          return std::move(llvm::errorCodeToError(Err));
                 ^~~~~~~~~~                           ~
    1 error generated.
    DamonFool committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    2954d1f View commit details
    Browse the repository at this point in the history
  6. [llvm][ARM]Add widen global arrays pass (#107120)

    - Pass optimizes memcpy's by padding out destinations and sources to a
    full word to make backend generate full word loads instead of loading a
    single byte (ldrb) and/or half word (ldrh). Only pads destination when
    it's a stack allocated constant size array and source when it's constant
    array. Heuristic to decide whether to pad or not is very basic and could
    be improved to allow more examples to be padded.
    - Pass works within GlobalOpt but is disabled by default on all targets
    except ARM.
    nasherm authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    ab90d27 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    83953c7 View commit details
    Browse the repository at this point in the history
  8. VisitIfStmt: Prune a redundant condition.

    `S->isConsteval()` is evaluated at the top of this method.
    Likely mis-merging in #75425
    chapuni committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    5bcc66d View commit details
    Browse the repository at this point in the history
  9. InstrProfilingMerge.c: Fix potential misalignment in SrcBitmapStart

    Currently it is not an issue. It will be a problem if Bitmap is
    located after single byte counters.
    chapuni committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    40d9561 View commit details
    Browse the repository at this point in the history
  10. Silence -Wswitch after cb43021

    lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp:4885:13: warning: enumeration value 'SveMFloat8' not handled in switch [-Wswitch]
     4885 |     switch (llvm::cast<clang::BuiltinType>(qual_type)->getKind()) {
          |
    d0k committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    9c80eb7 View commit details
    Browse the repository at this point in the history
  11. [flang][extension] support concatenation with absent optional (#112678)

    Fix #112593 by adding support in lowering to concatenation with an
    absent optional _assumed length_ dummy argument because:
    1. Most compilers seem to support it (most likely by accident).
    2. This actually makes the compiler codegen simpler. Codegen was going
    out of its way to poke the LLVM optimizer bear by producing an undef
    argument for the length.
    
    I insist on the fact that no compiler support this with _explicit
    length_ optional arguments and the executable will segfault and I would
    discourage users from using that "feature" because runtime checks for
    bad optional dereference will kick when used (For instance, "nagfor
    -C=present" will produce an executable that abort with an error message
    . Flang does not have such runtime check option so far).
    
    Hence, I am not updating the Extensions.md document because this is not
    something I think we should advertise.
    jeanPerier authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    2f0b4f4 View commit details
    Browse the repository at this point in the history
  12. Merge from 'sycl' to 'sycl-web'

    iclsrc committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    9b3cc0c View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    e21c80a View commit details
    Browse the repository at this point in the history
  14. [lldb][docs] Add link to LoongArch tracking issue

    llvm/llvm-project#112693 will be
    tracking the overall state of LoongArch support.
    
    This means anyone can check without having to track down
    an expert.
    DavidSpickett committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    2882bb1 View commit details
    Browse the repository at this point in the history
  15. [Polly] Remove unused variable 'IdentTy' in LoopGeneratorsKMP.cpp (NFC)

    /llvm-project/polly/lib/CodeGen/LoopGeneratorsKMP.cpp:396:15: error: unused variable 'IdentTy' [-Werror,-Wunused-variable]
      StructType *IdentTy =
                  ^
    /llvm-project/polly/lib/CodeGen/LoopGeneratorsKMP.cpp:460:15: error: unused variable 'IdentTy' [-Werror,-Wunused-variable]
      StructType *IdentTy =
                  ^
    2 errors generated.
    DamonFool committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    f42785d View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    067e8b8 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    8268bc4 View commit details
    Browse the repository at this point in the history
  18. [DAG] visitSINT_TO_FP/UINT_TO_FP - use FoldConstantArithmetic to atte…

    …mpt to constant fold
    
    Don't rely on isConstantIntBuildVectorOrConstantInt followed by getNode() will constant fold - FoldConstantArithmetic will do all of this for us.
    
    Cleanup for #112682
    RKSimon committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    784c15a View commit details
    Browse the repository at this point in the history
  19. [DAG] visitFP_TO_SINT/FP_TO_UINT - use FoldConstantArithmetic to atte…

    …mpt to constant fold
    
    Don't rely on isConstantFPBuildVectorOrConstantFP followed by getNode() will constant fold - FoldConstantArithmetic will do all of this for us.
    
    Cleanup for #112682
    RKSimon committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    5692a0c View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    bf5cf82 View commit details
    Browse the repository at this point in the history
  21. Configuration menu
    Copy the full SHA
    cf046c8 View commit details
    Browse the repository at this point in the history
  22. [AArch64][SVE] Enable max vector bandwidth for SVE (#109671)

    Returns true for shouldMaximizeVectorBandwidth when the register type
    is a scalable vector and SVE or streaming SVE are available.
    huntergr-arm authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    c980a20 View commit details
    Browse the repository at this point in the history
  23. [ARM] Fix -mno-omit-leaf-frame-pointer flag doesn't works on 32-bit A…

    …RM (#109628)
    
    The -mno-omit-leaf-frame-pointer flag works on 32-bit ARM architectures
    and addresses the bug reported in #108019
    guoxin049 authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    4a2bd78 View commit details
    Browse the repository at this point in the history
  24. [InstCombine] Add shared helper for logical and bitwise and/or (NFC)

    Add a helper for shared folds between logical and bitwise and/or
    and move the and/or of icmp and fcmp folds in there. This makes
    it easier to extend to more folds.
    
    A possible extension would be to base the current and/or of icmp
    reassociation logic on this helper, so that it for example also
    applies to fcmp.
    nikic committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    0f7d148 View commit details
    Browse the repository at this point in the history
  25. Revert "[llvm][ARM]Add widen global arrays pass" (#112701)

    Reverts llvm/llvm-project#107120 
    
    Unexpected build failures in post-commit pipelines. Needs investigation
    nasherm authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    370fd74 View commit details
    Browse the repository at this point in the history
  26. Configuration menu
    Copy the full SHA
    095d49d View commit details
    Browse the repository at this point in the history
  27. Different info in docs in AST methods (#112190)

    [Here](https://github.com/llvm/llvm-project/blob/6a98c4a1602591c942f01dceb3aa29ffd4cf1e5b/clang/include/clang/ASTMatchers/ASTMatchers.h#L4188-L4203)
    and
    [here](https://github.com/llvm/llvm-project/blob/6a98c4a1602591c942f01dceb3aa29ffd4cf1e5b/clang/include/clang/ASTMatchers/ASTMatchers.h#L3679-L3695)
    we can see similar code samples and same examples:
    ```
    cxxMemberCallExpr(on(callExpr()))
    ```
    
    In the first case, it is
    [written](https://github.com/llvm/llvm-project/blob/6a98c4a1602591c942f01dceb3aa29ffd4cf1e5b/clang/include/clang/ASTMatchers/ASTMatchers.h#L4201)
    that the object must not be matched:
    ```
    /// cxxMemberCallExpr(on(callExpr()))
    ///   does not match `(g()).m()`, because the parens are not ignored.
    ```
    In the second case, it is
    [written](https://github.com/llvm/llvm-project/blob/6a98c4a1602591c942f01dceb3aa29ffd4cf1e5b/clang/include/clang/ASTMatchers/ASTMatchers.h#L3693)
    that the object must be matched:
    ```
    /// cxxMemberCallExpr(on(callExpr()))
    ///   matches `(g()).m()`.
    ```
    
    I think that parens are ignored
    4JustMe4 authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    388d7f1 View commit details
    Browse the repository at this point in the history
  28. [ARM] Prefer MUL to MULS on some implementations (#112540)

    MULS adversely affects performance on many implementations. Where this
    is the case, we prefer not to shrink MUL to MULS.
    VladiKrapp-Arm authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    ea796e5 View commit details
    Browse the repository at this point in the history
  29. Configuration menu
    Copy the full SHA
    d9cd607 View commit details
    Browse the repository at this point in the history
  30. [MLIR] Enable pattern only for scf.forall op (#110230)

    The init args shape might change in the loop body and hence the pattern
    doesn't hold true.
    pashu123 authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    c1047ba View commit details
    Browse the repository at this point in the history
  31. Configuration menu
    Copy the full SHA
    51b4ada View commit details
    Browse the repository at this point in the history
  32. Configuration menu
    Copy the full SHA
    3f17da1 View commit details
    Browse the repository at this point in the history
  33. [PGO] Initialize GCOV Writeout and Reset Functions in the Runtime on …

    …AIX (#108570)
    
    This PR registers the writeout and reset functions for `gcov` for all
    modules in the PGO runtime, instead of registering them
    using global constructors in each module. The change is made for AIX
    only, but the same mechanism works on Linux on Power.
    
    When registering such functions using global constructors in each module
    without `-ffunction-sections`, the AIX linker cannot garbage collect
    unused undefined symbols, because such symbols are grouped in the same
    section as the `__sinit` symbol. Keeping such undefined symbols causes
    link errors (see test case
    https://github.com/llvm/llvm-project/pull/108570/files#diff-500a7e1ba871e1b6b61b523700d5e30987900002add306e1b5e4972cf6d5a4f1R1
    for this scenario). This PR implements the initialization in the
    runtime, hence avoiding introducing `__sinit` into each module.
    
    The implementation adds a new global variable `__llvm_covinit_functions`
    to each module. This new global variable contains the function pointers
    to the `Writeout` and `Reset` functions. `__llvm_covinit_functions`'s
    section is the named section `__llvm_covinit`. The linker will aggregate
    all the `__llvm_covinit` sections from each module
    to form one single named section in the final binary. The pair of
    functions
    ```
    const __llvm_gcov_init_func_struct *__llvm_profile_begin_covinit();
    const __llvm_gcov_init_func_struct *__llvm_profile_end_covinit();
    ```
    are implemented to return the start and end address of this named
    section in the final binary, and they are used in function
    ```
    __llvm_profile_gcov_initialize()
    ```
    (which is a constructor function in the runtime) so the runtime knows
    the addresses of all the `Writeout` and `Reset` functions from all the
    modules.
    
    One noticeable implementation detail relevant to AIX is that to preserve
    the `__llvm_covinit` from the linker's garbage collection, a `.ref`
    pseudo instruction is inserted into them, referring to the section that
    contains the `__llvm_gcov_ctr` variables, which are used in the
    instrumented code. The `__llvm_gcov_ctr` variables did not belong to
    named sections before, but this PR added them to the
    `__llvm_gcov_ctr_section` named section, so we can add a `.ref` pseudo
    instruction that refers to them in the `__llvm_covinit` section.
    qiongsiwu authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    f9d0789 View commit details
    Browse the repository at this point in the history
  34. [InferAlignment][NFC] Unify Load/Store handling in tryToImproveAlign…

    … (#112699)
    
    Removes code duplication in tryToImproveAlign by unifying load and
    store instruction handling with getLoadStore helper functions.
    ParkHanbum authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    8c60efe View commit details
    Browse the repository at this point in the history
  35. Finally formalise our defacto line-ending policy

    Historically, we've not automatically enforced how git tracks line
    endings, but there are many, many commits that "undo" unintended CRLFs
    getting into history.
    
    `git log --pretty=oneline --grep=CRLF` shows nearly 100 commits
    involving reverts of CRLF making its way into the index and then
    history. As far as I can tell, there are none the other way round except
    for specific cases like `.bat` files or tests for parsers that need to
    accept such sequences.
    
    Of note, one of the earliest of those listed in that output is:
    
    ```
      commit 9795860
      Author: NAKAMURA Takumi <geek4civic@gmail.com>
      Date:   Thu Feb 3 11:41:27 2011 +0000
    
          cmake/*: Add svn:eol-style=native and fix CRLF.
    
          llvm-svn: 124793
    ```
    
    ...which introduced such a defacto policy for subversion.
    
    With old versions of git, it's been a bit of a crap-shoot whether
    enforcing storing line endings in the history will upset checkouts on
    machines where such line endings are the norm. Indeed many users have
    enforced that git checks out the working copy according to a global or
    per-user config via core crlf, or core autocrlf.
    
    For ~8 years now[1], however, git has supported the ability to "do as
    the Romans do" on checkout, but internally store subsets of text files
    with line-endings specified via a system of patterns in the
    `.gitattributes` file. Since we now have this ability, and we've been
    specifying attributes for various binary files, I think it makes sense
    to rid us of all that work converting things "back", and just let git
    handle the local checkout. Thus the new toplevel policy here is
    
        * text=auto
    
    In simple terms this means "unless otherwise specified, convert all
    files considered "text" files to LF in the project history, but check
    them out as expected on the local machine. What is "expected on the
    local machine" is dependent on configuration and default.
    
    For those files in the repository that *do* need CRLF endings, I've
    adopted a policy of `eol=crlf` which means that git will store them in
    history with LF, but regardless of user config, they'll be checked out
    in tree with CRLF.
    
    Finally, existing files have been "corrected" in history via `git add
    --renormalize .`
    
    End users should *not* need to adjust their local git config or
    workflow.
    
    [1]: git 2.10 was released with fixed support for fine-grained
    line-ending tracking that respects user-config *and* repo policy. This
    can be considered the point at which git will respect both the user's
    local working tree preference *and* the history as specified by the
    maintainers. See
    https://github.com/git/git/blob/master/Documentation/RelNotes/2.10.0.txt#L248
    for the release note.
    ldrumm committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    dccebdd View commit details
    Browse the repository at this point in the history
  36. Merge from 'main' to 'sycl-web' (153 commits)

      CONFLICT (content): Merge conflict in clang/include/clang/Serialization/ASTBitCodes.h
      CONFLICT (content): Merge conflict in clang/test/Modules/no-external-type-id.cppm
    e-kud committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    e54df7d View commit details
    Browse the repository at this point in the history
  37. Renormalize line endings whitespace only after dccebdd

    Line ending policies were changed in the parent, dccebdd. To make
    it easier to resolve downstream merge conflicts after line-ending
    policies are adjusted this is a separate whitespace-only commit. If you
    have merge conflicts as a result, you can simply `git add --renormalize
    -u && git merge --continue` or `git add --renormalize -u && git rebase
    --continue` - depending on your workflow.
    ldrumm committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    9d98acb View commit details
    Browse the repository at this point in the history
  38. [OpenMP] Fix missing gtid argument in __kmp_print_tdg_dot function (#…

    …111986)
    
    This patch modifies the signature of the `__kmp_print_tdg_dot` function
    in `kmp_tasking.cpp` to include the global thread ID (gtid) as an
    argument. The gtid is now correctly passed to the function.
    
    - Updated the function declaration to accept the gtid parameter.
    - Modified all calls to `__kmp_print_tdg_dot` to pass the correct gtid
    value.
    
    This change addresses issues encountered when compiling with
    `OMPX_TASKGRAPH` enabled. No functional changes are expected beyond
    successful compilation.
    jpinot authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    af1e9c8 View commit details
    Browse the repository at this point in the history
  39. [libc][setjmp] make x86_64 longjmp naked (#112581)

    The generated asm for x86_64's longjmp has a function prolog and epilog.
    The
    epilog in particular is unreachable. Convert longjmp to a naked function
    to
    avoid these spurious instructions in longjmp.
    
    Link: https://github.com/llvm/llvm-project/pull/112437/files#r1802085511
    nickdesaulniers authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    3764d0f View commit details
    Browse the repository at this point in the history
  40. [flang] Allow OpenMP declarations before type declarations (#112414)

    Skip resolving implicit types for OpenMP declarative directives, to
    allow them to appear before type declarations, which is supported
    by several compilers. This was discussed in
    
    https://discourse.llvm.org/t/rfc-openmp-should-type-declaration-be-allowed-after-threadprivate/81345.
    
    This fixes the semantic errors of
    llvm/llvm-project#106021.
    luporl authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    a1ac5a5 View commit details
    Browse the repository at this point in the history
  41. [libc++] Make __libcpp_verbose_abort() noexcept like std::terminate()…

    … (#109151)
    
    Make __libcpp_verbose_abort() noexcept (it is already noreturn), to
    match std::terminate(). Clang's function effect analysis can use this to
    ignore such functions as being beyond its scope. (See
    llvm/llvm-project#99656).
    dougsonos authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    9548366 View commit details
    Browse the repository at this point in the history
  42. Configuration menu
    Copy the full SHA
    db32924 View commit details
    Browse the repository at this point in the history
  43. Configuration menu
    Copy the full SHA
    91b2ac6 View commit details
    Browse the repository at this point in the history
  44. Configuration menu
    Copy the full SHA
    9173fd7 View commit details
    Browse the repository at this point in the history
  45. Configuration menu
    Copy the full SHA
    b47849b View commit details
    Browse the repository at this point in the history
  46. Configuration menu
    Copy the full SHA
    8b6764f View commit details
    Browse the repository at this point in the history
  47. [llvm][LSR] Fix where invariant on ScaledReg & Scale is violated (#11…

    …2576)
    
    Comments attached to the `ScaledReg` field of `struct Formula` explains
    that, `ScaledReg` must be non-null when `Scale` is non-zero.
    
    This fixes up a code path where this invariant is violated. Also, add an
    assert to ensure this invariant holds true.
    
    Without this patch, compiler aborts with the attached test case.
    
    Fixes #76504
    JOE1994 authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    caa32e6 View commit details
    Browse the repository at this point in the history
  48. [clang] Fix covariant cv-qualification check to require the override …

    …function return type to have the same or less cv-qualification (#112713)
    
    This prevents changing cv-qualification from const to volatile or vice
    versa, for example.
    
    https://eel.is/c++draft/class.virtual#8.3
    
    Previously, we checked that the new type is the same or more qualified
    to return an error, but the standard requires the new type to be the
    same or less qualified and since the cv-qualification is only partially
    ordered, we cannot rely on a check on whether it is more qualified to
    return an error. Now, we reversed the condition to check whether the old
    is at least as qualified, and return an error if it is not.
    
    Also, adjusted the error name and message to clarify the requirement and
    added a missing closing parenthesis.
    
    Added tests to cover different use cases for classes with different
    qualifications and also refactored them to make them easier to follow:
    1. Use override to make sure the function names actually match.
    2. Named the function in a more descriptive way to clarify what each use
    case is checking.
    
    Fixes: #111742
    bricknerb authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    8f25c0b View commit details
    Browse the repository at this point in the history
  49. [NFC][AMDGPU] Auto-generate check lines for some test cases (#112426)

    - `llvm/test/CodeGen/AMDGPU/andorbitset.ll`
    - `llvm/test/CodeGen/AMDGPU/andorxorinvimm.ll`
    - `llvm/test/CodeGen/AMDGPU/fabs.f64.ll`
    - `llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.ll`
    - `llvm/test/CodeGen/AMDGPU/s_mulk_i32.ll`
    shiltian authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    92663de View commit details
    Browse the repository at this point in the history
  50. [lldb] Disable warning about codecvt_utf8 deprecation (NFC) (#112446)

    Disable -Wdeprecated-declarations for codecvt_utf8 in Editline. This is
    in preparation for #112276 which narrows the scope of
    -Wno-deprecated-declarations for building LLDB.
    JDevlieghere authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    8c7f80f View commit details
    Browse the repository at this point in the history
  51. [LLVM] Make more use of IRBuilder::CreateIntrinsic. NFC. (#112706)

    Convert many instances of:
      Fn = Intrinsic::getOrInsertDeclaration(...);
      CreateCall(Fn, ...)
    to the equivalent CreateIntrinsic call.
    jayfoad authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    85c17e4 View commit details
    Browse the repository at this point in the history
  52. [lldb] Narrow scope of -Wno-deprecated-declarations (NFC) (#112276)

    Currently all of LLDB is being compiled with
    -Wno-deprecated-declarations. That's not desirable, especially as part
    of the LLVM monorepo, as we miss deprecation warnings from LLVM and
    clang.
    
    According to the git history, this was first introduced to suppress
    warnings related to auto_ptr. Since then, other things have been
    deprecated and gone unnoticed. This patch limits the flag to Host.mm
    which uses a handful of LSApplication headers that have no replacement.
    
    rdar://112040718
    JDevlieghere authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    4897fc4 View commit details
    Browse the repository at this point in the history
  53. [lldb] Don't exit the main loop when in runs out of things to listen …

    …on (#112565)
    
    This behavior made sense in the beginning as the class was completely
    single threaded, so if the source count ever reached zero, there was no
    way to add new ones. In https://reviews.llvm.org/D131160, the class
    gained the ability to add events (callbacks) from other threads, which
    means that is no longer the case (and indeed, one possible use case for
    this class -- acting as a sort of arbiter for multiple threads wanting
    to run code while making sure it runs serially -- has this class sit in
    an empty Run call most of the time). I'm not aware of us having a use
    for such a thing right now, but one of my tests in another patch turned
    into something similar by accident.
    
    Another problem with the current approach is that, in a
    distributed/dynamic setup (multiple things using the main loop without a
    clear coordinator), one can never be sure whether unregistering a
    specific event will terminate the loop (it depends on whether there are
    other listeners). We had this problem in lldb-platform.cpp, where we had
    to add an additional layer of synchronization to avoid premature
    termination. We can remove this if we can rely on the loop terminating
    only when we tell it to.
    labath authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    98b419c View commit details
    Browse the repository at this point in the history
  54. [flang][cuda] Relax the verifier for cuf.register_kernel op (#112585)

    Relax the verifier since the `gpu.func` might be converted to
    `llvm.func` before `cuf.register_kernel` is converted.
    clementval authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    834d001 View commit details
    Browse the repository at this point in the history
  55. [flang][docs] Update description of how to contribute (#112369)

    It's my understanding that all code review pre-commit takes place on
    GitHub Pull Requests and that post-commit review is done either on the
    closed PR or the commit on GitHub.
    DavidSpickett authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    ab208de View commit details
    Browse the repository at this point in the history
  56. [SimplifyLibCall][Attribute] Fix bug where we may keep range attr w…

    …ith incompatible type (#112649)
    
    In a variety of places we change the bitwidth of a parameter but don't
    update the attributes.
    
    The issue in this case is from the `range` attribute when inlining
    `__memset_chk`. `optimizeMemSetChk` will replace an `i32` with an
    `i8`, and if the `i32` had a `range` attr assosiated it will cause an
    error.
    
    Fixes #112633
    goldsteinn authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    c85611e View commit details
    Browse the repository at this point in the history
  57. [NFC][LoopVectorize] Restructure simple early exit tests (#112721)

    The previous simple_early_exit.ll was growing too large and difficult to
    manage. Instead I've decided to refactor the tests by splitting out into
    notional groups:
    
    1. single_early_exit.ll: loops with a single uncountable exit that do
    not have live-outs from the loop.
    2. single_early_exit_live_outs.ll: loops with a single uncountable exit
    with live-outs.
    3. multi_early_exit.ll: loops with multiple early exits, i.e. a mixture
    of countable and uncountable exits, but with no live-outs from the loop.
    4. multi_early_exit_live_outs.ll: as above, but with live-outs.
    5. single_early_exit_unsafe_ptrs.ll: loops with a single uncountable
    exit, but with pointers that are not unconditionally dereferenceable.
    6. unsupported_early_exit.ll: loops with uncountable exits that we
    cannot yet vectorise.
    7. early_exit_legality.ll: tests the debug output from
    LoopVectorizationLegality to make sure we handle different scenarios
    correctly.
    
    Only the last test now requires asserts. Over time some of these tests
    should start vectorising as more support is added.
    
    I also tried to rename the multi early exit tests to make it clear there
    what mixture of countable and uncountable exits are present.
    david-arm authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    76f3776 View commit details
    Browse the repository at this point in the history
  58. [DAG] visitFCEIL/FTRUNC/FFLOOR/FNEG - use FoldConstantArithmetic to a…

    …ttempt to constant fold
    
    Don't rely on isConstantFPBuildVectorOrConstantFP followed by getNode() will constant fold - FoldConstantArithmetic will do all of this for us.
    
    Cleanup for #112682
    RKSimon committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    256bbdb View commit details
    Browse the repository at this point in the history
  59. [clang-tidy] insert static keyword in correct position for misc-u…

    …se-internal-linkage (#108792)
    
    Fixes: #108760
    
    ---------
    
    Co-authored-by: Danny Mösch <danny.moesch@icloud.com>
    HerrCai0907 and SimplyDanny authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    6f21a7b View commit details
    Browse the repository at this point in the history
  60. Merge from 'sycl' to 'sycl-web' (6 commits)

    iclsrc committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    ee0004a View commit details
    Browse the repository at this point in the history
  61. [AArch64] Add armv9.6 features to AArch64AsmParser (#112722)

    New features need to be added to ExtensionMap for .arch and
    .arch_extension to work.
    Lukacma authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    94643a4 View commit details
    Browse the repository at this point in the history
  62. [LTO] Add function alias as function instead of data (#112599)

    On AIX, for undefined functions, only the dotnamed symbols (the address
    of the function) are generated after linking (i.e., no named function
    symbol is generated).
     
    Currently, all alias symbols are added as defined data symbols when
    parsing symbols in LTOModule (the Link Time Optimization library used by
    linker to optimization code at link time). On AIX, if the function alias
    is used in the native object, and only its dotnamed symbol is generated,
    the linker will have problem to match the dotnamed symbol from the
    native object and the defined symbol marked as data from the bitcode at
    LTO linktime.
     
    This patch is to add function alias as function instead of data.
    scui-ibm authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    0205667 View commit details
    Browse the repository at this point in the history
  63. Document the requirement that commits have a public email address (#1…

    …09318)
    
    See
    https://discourse.llvm.org/t/hidden-emails-on-github-should-we-do-something-about-it/74223
    for details about why this is important to the community.
    
    Note, we currently have soft enforcement for this requirement in the
    form of a bot which posts comments letting patch authors know their
    email is private, so we're already setting expectations in practice;
    this PR is documenting those expectations for clarity.
    AaronBallman authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    bf1a554 View commit details
    Browse the repository at this point in the history
  64. Merge from 'main' to 'sycl-web' (47 commits)

      CONFLICT (content): Merge conflict in .gitattributes
    e-kud committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    a02f06b View commit details
    Browse the repository at this point in the history
  65. [RISCV][GISel] Correct RORIW patterns.

    We had two rotl patterns and no rotr pattern. The order was such
    that the incorrect rotl pattern was being used.
    topperc committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    feedb35 View commit details
    Browse the repository at this point in the history
  66. [libc][math][c23] Fix undefined behavior in expxf16.h (#112734)

    Fixes the left-shifting of potentially negative signed integers.
    overmighty authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    87645e9 View commit details
    Browse the repository at this point in the history
  67. [clang-tidy][docs] Replace _not_ in reserved-identifier.rst with *not…

    …* (#112162)
    
    Fixes a documentation formatting error where `_not_` was used which has no
    special meaning in reST and replaces it with `*not*`.
    
    Closes #111691.
    njriasan authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    6d7712a View commit details
    Browse the repository at this point in the history
  68. Configuration menu
    Copy the full SHA
    8f8d5f0 View commit details
    Browse the repository at this point in the history
  69. [AArch64][InstCombine] Eliminate redundant barrier intrinsics (#112023)

    If there are no memory ops on the path from one dmb to another then one
    barrier can be eliminated.
    danilaml authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    1a60905 View commit details
    Browse the repository at this point in the history
  70. [libunwind][AIX] Remove weak declaration "__xlcxx_personality_v0" (#1…

    …12436)
    
    `__xlcxx_personality_v0` is the personality routine in `libc++abi` for
    the EH of applications generated by the legacy IBM C++ compiler. Since
    the EH info generated by the legacy compiler does not provide the
    location of the personality routine, this routine is hard-coded as the
    handler for legacy EH in the unwinder. The symbol is resolved
    dynamically using `dlopen()` to avoid a hard dependency of `libunwind`
    on `libc++abi` for cases such as non-C++ applications. The weak
    declaration of `__xlcxx_personality_v0` was originally intended to
    bypass `dlopen()` if the C++ application generated by the legacy
    compiler is statically linked with the new LLVM C++ compiler.
    Unfortunately, this causes problems with runtime linking for
    Clang-compiled code using the unwinder that does not link with
    `libc++abi`.
    
    On the other hand, the C++ runtime libraries shipped for AIX are
    actually stripped and statically linking is not supported. So, we can
    fix the problem by removing the `__xlcxx_personality_v0` weak
    declaration. Besides, `dlopen()` would work as long as the libc++abi
    shared library is available.
    xingxue-ibm authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    2ef24e0 View commit details
    Browse the repository at this point in the history
  71. [clang][bytecode] Handle non-arrays in initElem{,Pop} (#112719)

    ... provided the given index is 0. Skip the atIndex() in that case.
    tbaederr authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    03888a9 View commit details
    Browse the repository at this point in the history
  72. Configuration menu
    Copy the full SHA
    f35a14d View commit details
    Browse the repository at this point in the history
  73. Add atan2 test case for prior change in X86SelLowering.cpp (#112616)

    When updating X86SelLowering.cpp for atan2, based on #96222, it was
    known that a needed change was missing which was merged later in
    #101268. However, the corresponding test update to
    `fp-strict-libcalls-msvc32.ll` was missed.
    
    This change rectifies that oversight.
    
    This also adds a missing label to the tanh test, since it's produced by
    update_llc_test_checks.py
    
    Part of: Implement the atan2 HLSL Function #70096.
    tex3d authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    dea213c View commit details
    Browse the repository at this point in the history
  74. [WebAssembly] Add atan2 to RuntimeLibcallSignatureTable (#112613)

    This change is part of this proposal:
    https://discourse.llvm.org/t/rfc-all-the-math-intrinsics/78294
    
    - `WebAssemblyRuntimeLibcallSignatures.cpp`: Add `RTLIB::ATAN2*` to
    RuntimeLibcallSignatureTable
    - Add atan2 calls to `CodeGen/WebAssembly/libcalls-trig.ll` and update
    test checks
    
    Part of: Implement the atan2 HLSL Function #70096.
    tex3d authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    2bebeea View commit details
    Browse the repository at this point in the history
  75. [flang] Update printing values in dump-parse-tree (#112709)

    Remove 'if std::string' that is covered by another branch of the
    if-statement.
    Add printing of 'bool' and 'int' values, since they have corresponding
    `GetNodeName` definitions.
    kparzysz authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    2c93598 View commit details
    Browse the repository at this point in the history
  76. Configuration menu
    Copy the full SHA
    ed7868d View commit details
    Browse the repository at this point in the history
  77. Configuration menu
    Copy the full SHA
    ed3d051 View commit details
    Browse the repository at this point in the history
  78. [DirectX] Remove trivially dead functions at linkage finalize (#106146)

    Functions are not removed even when made internal by
    DXILFinalizeLinkage. The removal code is called from alwaysinliner and
    globalopt, which are invoked too early to remove functions made internal
    by this pass.
    
    This adds a check similar to that in alwaysinliner that removes
    trivially dead functions after being marked internal. It refactors that
    code a bit to make it simpler including reversing what is stored int he
    work queue.
    
    Tests both the pass in isolation and the full i0nlining, linkage
    finalization and function removal steps.
    
    Fixes #106139
    pow2clk authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    ab75180 View commit details
    Browse the repository at this point in the history
  79. Configuration menu
    Copy the full SHA
    a9d39ce View commit details
    Browse the repository at this point in the history
  80. Configuration menu
    Copy the full SHA
    29097dd View commit details
    Browse the repository at this point in the history
  81. Fix merge conflict

    Signed-off-by: Lu, John <john.lu@intel.com>
    LU-JOHN committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    4e026b7 View commit details
    Browse the repository at this point in the history
  82. Configuration menu
    Copy the full SHA
    32b55f3 View commit details
    Browse the repository at this point in the history
  83. Merge from 'sycl' to 'sycl-web' (3 commits)

    iclsrc committed Oct 17, 2024
    Configuration menu
    Copy the full SHA
    b583b80 View commit details
    Browse the repository at this point in the history
  84. [sanitizer] Large range support in IsAccessibleMemoryRange (#112665)

    The comment stated that it's slow, but likely it's a deadlock,
    as write can be blocked.
    
    Also we can't be sure that `page_size * 10` is appropriate size.
    
    Still most likely this is NFC, as the max `size` we use is 32,
    and should fit in any buffer.
    vitalybuka authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    7086584 View commit details
    Browse the repository at this point in the history
  85. [libc++] Remove obsolete Appveyor files (#112744)

    We don't use Appveyor to run Windows CI anymore (in fact I don't know if
    we ever did). Our full Windows CI setup is based on Github actions, so
    these files are effectively dead code.
    ldionne authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    2cd10f5 View commit details
    Browse the repository at this point in the history
  86. [runtimes] Avoid cluttering the top-level build directory with test a…

    …rtifacts (#112717)
    
    Instead of placing artifacts for testing the runtimes at <build>/test,
    place those artifacts at <build>/<project>/test. This prevents
    cluttering the build directory with the runtimes' test artifacts for
    everyone else.
    
    As a drive-by, remove LIBCXX_BINARY_INCLUDE_DIR which wasn't used
    anymore.
    ldionne authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    8c77f4c View commit details
    Browse the repository at this point in the history
  87. [libc++] Mark libc++ deallocation helpers as noexcept (#110884)

    They already can't throw exceptions and they are called from noexcept
    functions, but they were not marked as noexcept. Depending on compiler
    inlining, this might not make a difference or this might improve the
    codegen a bit by removing the implicit try-catch block that Clang
    generates around non-noexcept functions called from noexcept functions.
    
    The original issue also mentioned that one occurrence of
    std::allocator::deallocate was missing noexcept, however it has since
    then been removed.
    
    Fixes #66100
    ldionne authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    e2d07fc View commit details
    Browse the repository at this point in the history
  88. [runtimes] Improve the documentation for LIBCXX_ADDITIONAL_COMPILE_FL…

    …AGS (#112733)
    
    This clarifies how that option is meant to be used to avoid confusion.
    As a drive-by, also fix an incorrect usage in the recently-added GPU
    caches.
    ldionne authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    e674424 View commit details
    Browse the repository at this point in the history
  89. [-Wunsafe-buffer-usage] Emit a warning if pointer returned by vector:…

    …:data and array::data is cast to larger type (#111910)
    
    Emit a warning when the raw pointer retrieved from std::vector and
    std::array instances are cast to a larger type. Such a cast followed by
    a field dereference to the resulting pointer could cause an OOB access.
    This is similar to the existing span::data warning.
    
    (rdar://136704278)
    
    Co-authored-by: MalavikaSamak <malavika2@apple.com>
    malavikasamak and MalavikaSamak authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    e913a33 View commit details
    Browse the repository at this point in the history
  90. [SCEVExpander] Expand UDiv avoiding UB when in seq_min/max. (#92177)

    Update SCEVExpander to introduce an SafeUDivMode, which is set
    when expanding operands of SCEVSequentialMinMaxExpr. In this mode,
    the expander will make sure that the divisor of the expanded UDiv is
    neither 0 nor poison.
    
    Fixes llvm/llvm-project#89958.
    
    
    PR llvm/llvm-project#92177
    fhahn authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    b060661 View commit details
    Browse the repository at this point in the history
  91. Configuration menu
    Copy the full SHA
    871b2b3 View commit details
    Browse the repository at this point in the history
  92. [Clang] Disable use of the counted_by attribute for whole struct poin…

    …ters (#112636)
    
    The whole struct is specificed in the __bdos. The calculation of the
    whole size of the structure can be done in two ways:
    
        1) sizeof(struct S) + count * sizeof(typeof(fam))
        2) offsetof(struct S, fam) + count * sizeof(typeof(fam))
    
    The first will add any remaining whitespace that might exist after
    allocation while the second method is more precise, but not quite
    expected from programmers. See [1] for a discussion of the topic.
    
    GCC isn't (currently) able to calculate __bdos on a pointer to the whole
    structure. Therefore, because of the above issue, we'll choose to match
    what GCC does for consistency's sake.
    
    [1] https://lore.kernel.org/lkml/ZvV6X5FPBBW7CO1f@archlinux/
    
    Co-authored-by: Eli Friedman <efriedma@quicinc.com>
    bwendling and efriedma-quic authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    8c62bf5 View commit details
    Browse the repository at this point in the history
  93. [LLDB][Minidump] Add breakpoint stop reasons to the minidump. (#108448)

    Recently my coworker @jeffreytan81 pointed out that Minidumps don't show
    breakpoints when collected. This was prior blocked because Minidumps
    could only contain 1 exception, now that we support N signals/sections
    we can save all the threads stopped on breakpoints.
    Jlalond authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    5033ea7 View commit details
    Browse the repository at this point in the history
  94. Configuration menu
    Copy the full SHA
    4b82935 View commit details
    Browse the repository at this point in the history
  95. [alpha.webkit.UncountedLocalVarsChecker] Recursive functions are erro…

    …neously treated as non-trivial (#110973)
    
    This PR fixes the bug that alpha.webkit.UncountedLocalVarsChecker
    erroneously treats a trivial recursive function as non-trivial. This was
    caused by TrivialFunctionAnalysis::isTrivialImpl which takes a statement
    as an argument populating the cache with "false" while traversing the
    statement to determine its triviality within a recursive function in
    TrivialFunctionAnalysisVisitor's WithCachedResult. Because
    IsFunctionTrivial honors an entry in the cache, this resulted in the
    whole function to be treated as non-trivial.
    
    Thankfully, TrivialFunctionAnalysisVisitor::IsFunctionTrivial already
    handles recursive functions correctly so this PR applies the same logic
    to TrivialFunctionAnalysisVisitor::WithCachedResult by sharing code
    between the two functions. This avoids the cache to be pre-populated
    with "false" while traversing statements in a recurisve function.
    rniwa authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    71b81e9 View commit details
    Browse the repository at this point in the history
  96. [sanitizer] Add TryMemCpy (#112668)

    For posix implementation is similar to
    `IsAccessibleMemoryRange`, using `pipe`.
    
    We need this because we can't rely on non-atomic
    `IsAccessibleMemoryRange` + `memcpy`, as the
    protection or mapping may change and we may
    crash.
    vitalybuka authored Oct 17, 2024
    Configuration menu
    Copy the full SHA
    46df20a View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2024

  1. [sanitizer] Add MemCpyAccessible (#112794)

    A layer over `TryMemCpy` to copy only available pages.
    vitalybuka authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    7106de9 View commit details
    Browse the repository at this point in the history
  2. [HLSL] Add handle initialization for simple resource declarations (#1…

    …11207)
    
    Adds `@_init_resource_bindings()` function to module initialization that
    includes `handle.fromBinding` intrinsic calls for simple resource
    declarations. Arrays of resources or resources inside user defined types
    are not supported yet.
    
    While this unblocks our progress on [Compile a runnable shader from
    clang](llvm/wg-hlsl#7) milestone, this is
    probably not the way we would like to handle resource binding
    initialization going forward. Ideally, it should be done via the
    resource class constructors in order to support dynamic resource binding
    or unbounded arrays if resources.
    
    Depends on PRs #110327 and #111203.
    
    Part 1 of #105076
    hekota authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    7dbfa7b View commit details
    Browse the repository at this point in the history
  3. [LoongArch] [CodeGen] Add options for Clang to generate LoongArch-spe…

    …cific frecipe & frsqrte instructions (#109917)
    
    Two options: `-mfrecipe` & `-mno-frecipe`.
    Enable or Disable frecipe.{s/d} and frsqrte.{s/d} instructions. 
    The default is `-mno-frecipe`.
    tangaac authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    e9eec14 View commit details
    Browse the repository at this point in the history
  4. Reapply "[Inliner] Propagate more attributes to params when inlining …

    …(#91101)" (2nd Attempt) (#112749)
    
    Root cause of the bug was code hanging onto `range` attr after
    changing BitWidth. This was fixed in PR #112633.
    goldsteinn authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    69a798a View commit details
    Browse the repository at this point in the history
  5. [BOLT] Fix logs with no hex convension (#112650)

    Add `utohexstr` to ensure that offsets/addresses are correctly formatted
    as hexadecimal values.
    linsinan1995 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    c3bbc3a View commit details
    Browse the repository at this point in the history
  6. [mlir][transforms] Add signalPassFailure in RemoveDeadValues (#112199)

    This PR adds `signalPassFailure` in RemoveDeadValues to ensure that a
    pipeline would stop here.
    Fixes #111757.
    CoTinker authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    70865c4 View commit details
    Browse the repository at this point in the history
  7. [PowerPC][ISelLowering] Support -mstack-protector-guard=tls (#110928)

    Add support for using a thread-local variable with a specified offset
    for holding the stack guard canary value. This supports both 32- and 64-
    bit PowerPC targets.
    
    This mirrors changes from #108942 but targeting PowerPC instead of
    RISCV. Because both of these PRs modify the same driver functions, this
    series is stack on top of the RISC-V one.
    
    ---------
    
    Signed-off-by: Keith Packard <keithp@keithp.com>
    keith-packard authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    44b020a View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    bbccc52 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    9c6f85f View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    67f576f View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    d989c24 View commit details
    Browse the repository at this point in the history
  12. [Flang][OpenMP] Add semantic checks for Worshare construct (#111358)

    Add missing semantic checks for the Workshare construct:
    OpenMP 5.2: 11.4 Workshare Construct
    - The construct must not contain any user-defined function calls unless
    either the function is pure and elemental or the function call is
    contained inside a parallel construct that is nested inside the
    workshare construct. (Flang-new used to check only the elemental function, 
    but now it needs to be an impure elemental function)
    - At most one NoWait clause can appear in the Workshare construct.
    - Add tests for the same.
    Thirumalai-Shaktivel authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    2526455 View commit details
    Browse the repository at this point in the history
  13. [NFC][Flang][Test] Add some missing tests (#110468)

    - At most one Collapse clause in SIMD construct
    - A DO loop must follow the SIMD directive
    Thirumalai-Shaktivel authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    b340310 View commit details
    Browse the repository at this point in the history
  14. [Flang][Semantics] Add a semantic check for simd construct (#109089)

    Add missing semantic check for the SAFELEN clause in the SIMD Order
    construct
    Thirumalai-Shaktivel authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    e6321d9 View commit details
    Browse the repository at this point in the history
  15. [VPlan] Use VPInstruction::Name when assigning names (NFCI).

    This slightly improves the printing of VPInstructions. NFC except debug
    output.
    fhahn committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    b497010 View commit details
    Browse the repository at this point in the history
  16. [llvm] Consistently respect naked fn attribute in `TargetFrameLower…

    …ing::hasFP()` (#106014)
    
    Some targets (e.g. PPC and Hexagon) already did this. I think it's best
    to do this consistently so that frontend authors don't run into
    inconsistent results when they emit `naked` functions. For example, in
    Zig, we had to change our emit code to also set `frame-pointer=none` to
    get reliable results across targets.
    
    Note: I don't have commit access.
    alexrp authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    ad4a582 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    5d08625 View commit details
    Browse the repository at this point in the history
  18. Configuration menu
    Copy the full SHA
    f225b07 View commit details
    Browse the repository at this point in the history
  19. [PAC] Fix address discrimination for type info vtable pointers (#102199)

    In #99726, `-fptrauth-type-info-vtable-pointer-discrimination` was
    introduced, which is intended to enable type and address discrimination
    for type_info vtable pointers. However, some codegen logic for actually
    enabling address discrimination was missing. This patch addresses the
    issue.
    
    Fixes #101716
    kovdan01 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    6bb6300 View commit details
    Browse the repository at this point in the history
  20. [RISCV] Implement trampolines for rv64 (#96309)

    This is implementation is based on what the X86 target does but
    emitting the instructions that GCC emits for rv64.
    
    ---------
    
    Co-authored-by: Pengcheng Wang <wangpengcheng.pp@bytedance.com>
    rofirrim and wangpc-pp authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    9d469b5 View commit details
    Browse the repository at this point in the history
  21. [TLI] Add support for the ilogb libcall. (#112725)

    This patch adds the `ilogb` libcall. Constant folding will be handled in
    subsequent patches.
    c8ef authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    761fa58 View commit details
    Browse the repository at this point in the history
  22. Configuration menu
    Copy the full SHA
    7be4ab0 View commit details
    Browse the repository at this point in the history
  23. [MLIR][BUILD] Fix Unicode build issue on Windows. (#112300)

    This issue is from llvm/llvm-project#77668. I
    encountered a build issue because it used Unicode. When I built MLIR on
    Windows with Visual Studio 2022, I faced a build failure.
    
    ---------
    
    Co-authored-by: Harrison Hao <harrison.hao@amd.com>
    harrisonGPU and Harrison Hao authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    eb446eb View commit details
    Browse the repository at this point in the history
  24. [RISCV] Check if v extension is enabled by the function features for …

    …the builtins not in Zve64*. (#112827)
    
    Fixes: llvm/llvm-project#109694
    tclin914 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    e8509a4 View commit details
    Browse the repository at this point in the history
  25. [clang-tidy] rewrite matchers in modernize-use-starts-ends-with (#112…

    …101)
    
    Rewrite the AST matchers for slightly more composability. 
    Furthermore, check that the `starts_with` and `ends_with`
    functions return a `bool`.
    There is one behavioral change, in that the methods of a class (and
    transitive classes) are searched once for a matching
    `starts_with`/`ends_with` function, picking the first it can find.
    Previously, the matchers would try to find `starts_with`, then
    `startsWith`, and finally, `startswith`. Now, the first of the three
    that
    is encountered will be the matched method.
    
    ---------
    
    Co-authored-by: Nicolas van Kempen <nvankemp@gmail.com>
    5chmidti and nicovank authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    18b5018 View commit details
    Browse the repository at this point in the history
  26. [OpenCL] Replace a CreatePointerCast call; NFC (#112676)

    With opaque pointers, the only purpose of the cast here is to cast
    between address spaces, similar to the 4-argument case below.
    svenvh authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    5a09ce9 View commit details
    Browse the repository at this point in the history
  27. [APInt] Enable APInt ctor assertion by default (#112670)

    This enables the assertion introduced in
    llvm/llvm-project#106524, which checks that the
    value passed to the APInt constructor is indeed a valid N-bit signed or
    unsigned integer.
    
    Places that previously violated the assertion were updated in advance,
    e.g. in llvm/llvm-project#80309.
    
    It is possible to opt-out of the check and restore the previous behavior
    by setting implicitTrunc=true.
    nikic authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    ba1ee2b View commit details
    Browse the repository at this point in the history
  28. [flang] add getElementType() to fir::SquenceType and fir::VectorType …

    …(#112770)
    
    getElementType() was missing from Sequence and Vector types. Did a
    replace of the obvious places getEleTy() was used for these two types
    and updated to use this name instead.
    
    Co-authored-by: Scott Manley <scmanley@nvidia.com>
    rscottmanley and Scott Manley authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    e6a4346 View commit details
    Browse the repository at this point in the history
  29. [flang][Driver] Add support for -f[no-]wrapv and -f[no]-strict-overfl…

    …ow in the frontend (#110061)
    
    This patch introduces the options for integer overflow flags into Flang.
    The behavior is similar to that of Clang.
    yus3710-fj authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    9698e57 View commit details
    Browse the repository at this point in the history
  30. [clang][bytecode] Ignore explicit calls to trivial dtors (#112841)

    This is what the current interpreter does as well.
    tbaederr authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    9d0616c View commit details
    Browse the repository at this point in the history
  31. [mlir][vector] Clarify the semantics of masking maps (nfc) (#111383)

    We use the term "masking map" throughout the Linalg vectorization logic,
    but we don't really define what it is and how it differs from Linalg
    indexing maps. This PR clarifies the differnces, makes sure that the new
    terminology is used consistenty and improves code re-use.
    banach-space authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    f7f51f2 View commit details
    Browse the repository at this point in the history
  32. Revert "[ARM] Fix frame chains with M-profile PACBTI (#110285)"

    Reverting because this is causing failures with MSan:
    https://lab.llvm.org/buildbot/#/builders/169/builds/4378
    
    This reverts commit e1f8f84.
    ostannard committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    18ac017 View commit details
    Browse the repository at this point in the history
  33. [CLANG][AArch64]Add SVE tuple types for mfloat8_t (#112687)

    This patch adds scalable tuple types vectors for MFloat_8 type,
    according to the ACLE[1].
    
    [1] https://github.com/ARM-software/acle.git
    CarolineConcatto authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    508fd96 View commit details
    Browse the repository at this point in the history
  34. [clang] Deduplicate the logic that only warns once when stack is almo…

    …st full (#112552)
    
    Zero diff in behavior.
    bricknerb authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    09cc75e View commit details
    Browse the repository at this point in the history
  35. [clang] Fix C23 constexpr crashes (#112708)

    Before using a constexpr variable that is not properly initialized check
    that it is valid.
    
    Fixes llvm/llvm-project#109095
    Fixes llvm/llvm-project#112516
    Fznamznon authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    abfba7d View commit details
    Browse the repository at this point in the history
  36. [FuncSpec] Update MinFunctionSize logic (#112711)

    Always require functions to be larger than MinFunctionSize when
    SpecializeLiteralConstant is enabled, and increase MinFunctionSize to
    500, to prevent excessive triggering of specialisations on small
    functions.
    hazzlim authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    0d1a91e View commit details
    Browse the repository at this point in the history
  37. [gn build] Port 09cc75e

    llvmgnsyncbot committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    d1ee850 View commit details
    Browse the repository at this point in the history
  38. [mlir][tensor] Fix off-by-one error in ReshapeOpsUtils (#112774)

    This patch fixes an off-by-one error in
    `mlir::getReassociationIndicesForCollapse()` that occurs when the last
    two dims of the source tensor satisfy the while loop.
    
    This would cause an assertion failure due to out-of-bounds-access, which
    is now fixed.
    vinayakdsci authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    2f15d7e View commit details
    Browse the repository at this point in the history
  39. Configuration menu
    Copy the full SHA
    bafc66e View commit details
    Browse the repository at this point in the history
  40. Sink/test: increase coverage of invariant-load (#112690)

    Tests adapted from:
    
    https://discourse.llvm.org/t/sinking-does-any-llvm-pass-currently-handle-load-sinking-for-invariant-loads/79643
    
    We don't add tests for llvm.invariant.{start,end} though, as these are
    very difficult to support architecturally.
    artagnon authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    7eaf92b View commit details
    Browse the repository at this point in the history
  41. [AArch64][GlobalISel] Add some post-legalization cast combines. (#112…

    …509)
    
    This helps clear up some of the legalization artefacts. Not all of the
    cast_combines are added (notably select combines) as they currently have
    questionable benefit in the test updates.
    davemgreen authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    2f792f6 View commit details
    Browse the repository at this point in the history
  42. [DAG] visitABS - use FoldConstantArithmetic to attempt to constant fold

    Don't rely on isConstantFPBuildVectorOrConstantFP followed by getNode() will constant fold - FoldConstantArithmetic will do all of this for us.
    
    Cleanup for #112682
    RKSimon committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    c72992b View commit details
    Browse the repository at this point in the history
  43. [DAG] visitXROUND - use FoldConstantArithmetic to attempt to constant…

    … fold
    
    Don't rely on isConstantFPBuildVectorOrConstantFP followed by getNode() will constant fold - FoldConstantArithmetic will do all of this for us.
    RKSimon committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    7a43be1 View commit details
    Browse the repository at this point in the history
  44. [DAG] visitFP_ROUND - use FoldConstantArithmetic to attempt to consta…

    …nt fold
    
    Don't rely on isConstantFPBuildVectorOrConstantFP followed by getNode() will constant fold - FoldConstantArithmetic will do all of this for us.
    RKSimon committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    3a1df05 View commit details
    Browse the repository at this point in the history
  45. [DAG] visitFP_EXTEND - use FoldConstantArithmetic to attempt to const…

    …ant fold
    
    Don't rely on isConstantFPBuildVectorOrConstantFP followed by getNode() will constant fold - FoldConstantArithmetic will do all of this for us.
    RKSimon committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    3ec1b1a View commit details
    Browse the repository at this point in the history
  46. [AArch64][SVE] Support lowering fixed-length BUILD_VECTORS to ZIPs (#…

    …111698)
    
    This allows lowering fixed-length (non-constant) BUILD_VECTORS (<=
    128-bit) to a chain of ZIP1 instructions when Neon is not available,
    rather than using the default lowering, which is to spill to the stack
    and reload.
    
    For example,
    
    ```
    t5: v4f32 = BUILD_VECTOR(t0, t1, t2, t3)
    ```
    
    Becomes:
    
    ```
    zip1 z0.s, z0.s, z1.s // z0 = t0,t1,...
    zip1 z2.s, z2.s, z3.s // z2 = t2,t3,...
    zip1 z0.d, z0.d, z2.d // z0 = t0,t1,t2,t3,...
    ```
    
    When values are already in FRPs, this generally seems to lead to a more
    compact output with less movement to/from the stack.
    MacDue authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    5f7502b View commit details
    Browse the repository at this point in the history
  47. Configuration menu
    Copy the full SHA
    7b65971 View commit details
    Browse the repository at this point in the history
  48. [RISCV] Inline Assembly: RVC constraint and N modifier (#112561)

    This change implements support for the `cr` and `cf` register
    constraints (which allocate a RVC GPR or RVC FPR respectively), and the
    `N` modifier (which prints the raw encoding of a register rather than
    the name).
    
    The intention behind these additions is to make it easier to use inline
    assembly when assembling raw instructions that are not supported by the
    compiler, for instance when experimenting with new instructions or when
    supporting proprietary extensions outside the toolchain.
    
    These implement part of my proposal in riscv-non-isa/riscv-c-api-doc#92
    
    As part of the implementation, I felt there was not enough coverage of
    inline assembly and the "in X" floating-point extensions, so I have
    added more regression tests around these configurations.
    lenary authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    228f88f View commit details
    Browse the repository at this point in the history
  49. [NFC] Fix implicit-fallthrough warnings (#112825)

    This is one of the many PRs to fix errors with LLVM_ENABLE_WERROR=on.
    Built by GCC 11.
    
    Fix warnings:
    
    clang/lib/Sema/SemaFunctionEffects.cpp:1531:5: error: this statement may
    fall through [-Werror=implicit-fallthrough=]
     1531 |     switch (DiffKind) {
          |     ^~~~~~
    jsji authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    19aa4c8 View commit details
    Browse the repository at this point in the history
  50. [X86] Add FMA constant folding test coverage

    Shows we constant fold scalars but not vectors
    RKSimon committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    4e01690 View commit details
    Browse the repository at this point in the history
  51. [llvm][TableGen] Count implicit defs as well as explicit ones in the …

    …GlobalISel TableGen emitter (#112673)
    
    `NumDefs` only counts the number of registers in `(outs)`, not any
    implicit defs specified with `Defs = [...]`
    
    This causes patterns with physical register defs to fail to import here
    instead of later where implicit defs are rendered.
    
    Add on `ImplicitDefs.size()` to count both and create `DstExpDefs` to
    count only explicit defs, used later on.
    JL2210 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    8f6d491 View commit details
    Browse the repository at this point in the history
  52. [DAG] isConstantIntBuildVectorOrConstantInt - peek through bitcasts (…

    …#112710)
    
    Alter both isConstantIntBuildVectorOrConstantInt + isConstantFPBuildVectorOrConstantFP to return a bool instead of the underlying SDNode, and adjust usage to account for this.
    
    Update isConstantIntBuildVectorOrConstantInt to peek though bitcasts when attempting to find a constant, in particular this improves canonicalization of constants to the RHS on commutable instructions.
    
    X86 is the beneficiary here as it often bitcasts rematerializable 0/-1 vector constants as vXi32 and bitcasts to the requested type
    
    Minor cleanup that helps with #107423
    RKSimon authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    a630771 View commit details
    Browse the repository at this point in the history
  53. [flang][OpenMP][test] re-add complex atomic capture regression test (…

    …#112736)
    
    This was reverted in llvm/llvm-project#110969
    due to a failure on aarch64.
    
    Weirdly aarch64 (but apparently not x86?) has a spurious phi
    instruction. flang -fc1 -emit-llvm will run midle-end optimization
    passes. Presumably one of those is behaving differently on different
    targets. I have adapted the test to work correctly on aarch64.
    
    The difference is in the RUN lines and the atomic exit block.
    tblah authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    6ce4b6d View commit details
    Browse the repository at this point in the history
  54. Merge from 'sycl' to 'sycl-web'

    iclsrc committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    2663912 View commit details
    Browse the repository at this point in the history
  55. Revert "[AArch64][SVE] Enable max vector bandwidth for SVE" (#112873)

    Reverts llvm/llvm-project#109671
    
    Reverting due to some performance regressions on neoverse-v1.
    huntergr-arm authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    091a235 View commit details
    Browse the repository at this point in the history
  56. Revert "[APInt] Enable APInt ctor assertion by default (#112670)"

    This reverts commit ba1ee2b.
    
    Causes some buildbot failures on aarch64.
    nikic committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    9065b75 View commit details
    Browse the repository at this point in the history
  57. [DAG] visitFMA/FMAD - use FoldConstantArithmetic to add missing vecto…

    …r constant folding support
    RKSimon committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    5c37316 View commit details
    Browse the repository at this point in the history
  58. [bazel] Port 7be4ab0

    d0k committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    c7d1163 View commit details
    Browse the repository at this point in the history
  59. Fix -Wswitch after 508fd96

    d0k committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    8e6abf5 View commit details
    Browse the repository at this point in the history
  60. [clang][ASTImporter] Fix of unchecked Error object (#112688)

    After commits 9c72a30 and 30a9cac error handling in function
    'importTemplateParameterDefaultArgument' was not correct,
    probably related to (not) using std::move. A crash with unchecked
    Error result could happen when the import error path was taken.
    
    Here a test is added that reproduces this case and the problem is
    fixed.
    balazske authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    55cbbce View commit details
    Browse the repository at this point in the history
  61. Configuration menu
    Copy the full SHA
    e1330d9 View commit details
    Browse the repository at this point in the history
  62. [libc][complex] add additonal header guards for CFP16 and CFP128 (#11…

    …2879)
    
    Fixes build errors due to #112594
    Sh0g0-1758 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    d508701 View commit details
    Browse the repository at this point in the history
  63. [clang][bytecode] Check for memory leaks after destroying global scop…

    …e (#112868)
    
    The global scope we create when evaluating expressions might free some
    of the dynamic memory allocations, so we can't check for memory leaks
    before destroying it.
    tbaederr authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    3eaf4a9 View commit details
    Browse the repository at this point in the history
  64. [clang] constexpr built-in abs function. (#112539)

    According to [P0533R9](https://wg21.link/P0533R9), the C++ standard
    library functions corresponding to the C macros in `[c.math.abs]` are
    now `constexpr`.
    
    To implement this feature in libc++, we must make the built-in abs
    function `constexpr`. This patch adds the implementation of a
    `constexpr` abs function for the current constant evaluator and the new
    bytecode interpreter.
    
    It is important to note that in 2's complement systems, the absolute
    value of the most negative value is out of range. In gcc, it will result
    in an out-of-range error and will not be evaluated as constants. We
    follow the same approach here.
    c8ef authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    332ac18 View commit details
    Browse the repository at this point in the history
  65. [mlir][tensor] Add tests to invalid.mlir (nfc) (#112759)

    Adds two test with invalid usage of `tensor.extract_slice` that were
    missing. Also moves one other test for `tensor.extract_slice`, so that
    all tests for this Op are clustered together.
    
    Note, this PR merely documents the current behaviour. No new
    functionality is added.
    banach-space authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    1a871b2 View commit details
    Browse the repository at this point in the history
  66. Configuration menu
    Copy the full SHA
    4995d09 View commit details
    Browse the repository at this point in the history
  67. [PassRegistry] Add complex deinterleaving pass to PassRegistry.def (#…

    …112874)
    
    Allow for the complex deinterleaving pass to be invoked via `opt
    --passes=complex-deinterleaving`
    NickGuy-Arm authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    7be1dc0 View commit details
    Browse the repository at this point in the history
  68. [flang][OpenMP] Add Id function to OmpClause to return clause id,…

    …… (#112712)
    
    … NFC
    
    This replaces the two instances of `GetClauseKindForParserClass` with a
    localized member function.
    kparzysz authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    852e477 View commit details
    Browse the repository at this point in the history
  69. Configuration menu
    Copy the full SHA
    fdd7c03 View commit details
    Browse the repository at this point in the history
  70. [libc++] Remove obsolete _LIBCPP_PREDEFINED_OBJC_ARC_ADDRESSOF (#112745)

    I don't know if that macro was ever truly defined by Clang, however it's
    not anymore, so that is effectively dead code.
    ldionne authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    3a30955 View commit details
    Browse the repository at this point in the history
  71. [ASan][windows] Recognize movzx r11d, BYTE PTR [rdx] in interception_…

    …win (#111638)
    
    The instruction is present in some library in the 24H2 update for
    Windows 11:
    
    ==8508==interception_win: unhandled instruction at 0x7ff83e193a40: 44 0f
    b6 1a 4c 8b d2 48
    
    This could be generalized, but getting all the ModR/M byte combinations
    right is tricky. Many other classes of instructions handled in this file
    could use some generalization too.
    glandium authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    ce4618a View commit details
    Browse the repository at this point in the history
  72. [NFC][X86] Fix Werror=extra error due to enum (#112812)

    This is one of the many PRs to fix errors with LLVM_ENABLE_WERROR=on.
    Built by GCC 11.
    
    Fix warnings:
    llvm-project/llvm/lib/Target/X86/X86FastISel.cpp: In member function
    ‘virtual bool
    {anonymous}::X86FastISel::fastLowerCall(llvm::FastISel::CallLoweringInfo&)’:
    llvm-project/llvm/lib/Target/X86/X86FastISel.cpp:3547: error: enumerated
    and non-enumerated type in conditional expression [-Werror=extra]
     3547 |       MIB.addReg(Is64Bit ? X86::RIP : 0).addImm(1).addReg(0);
    jsji authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    d7ae43e View commit details
    Browse the repository at this point in the history
  73. [NFC] Fix multi-character character constant warning (#112809)

    This is one of the many PRs to fix errors with LLVM_ENABLE_WERROR=on.
    Built by GCC 11.
    
    Fix warning:
    
    In file included from llvm-project/llvm/lib/BinaryFormat/Minidump.cpp:9:
    llvm-project/llvm/include/llvm/BinaryFormat/Minidump.h:250:37: error:
    multi-character character constant [-Werror=multichar]
      250 |   static const uint32_t LLDB_FLAG = 'LLDB';
    jsji authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    c742a5d View commit details
    Browse the repository at this point in the history
  74. [RISCV][TTI] Recognize CONCAT_VECTORS if a shufflevector mask is mult…

    …iple insert subvector. (#111459)
    
    reference: llvm/llvm-project#110457
    HanKuanChen authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    12bcea3 View commit details
    Browse the repository at this point in the history
  75. [LVI] Infer non-zero from equality icmp (#112838)

    This following pattern is common in loop headers:
    ```
      %101 = sub nuw i64 %78, %98
      %103 = icmp eq i64 %78, %98
      br i1 %103, label %.thread.i.i, label %.preheader.preheader.i.i
    
    .preheader.preheader.i.i:
      %invariant.umin.i.i = call i64 @llvm.umin.i64(i64 %101, i64 9)
      %umax.i = call i64 @llvm.umax.i64(i64 %invariant.umin.i.i, i64 1)
      br label %.preheader.i.i
    
    .preheader.i.i:
      ...
      %116 = add nuw nsw i64 %.011.i.i, 1
      %exitcond.not.i = icmp eq i64 %116, %umax.i
      br i1 %exitcond.not.i, label %.critedge.i.i, label %.preheader.i.i
    ```
    As `%78` is not equal to `%98` in BB `.preheader.preheader.i.i`, we can
    prove `%101` is non-zero. Then we can simplify the loop exit condition.
    
    Addresses regression introduced by
    llvm/llvm-project#112742.
    dtcxzyw authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    c89d731 View commit details
    Browse the repository at this point in the history
  76. [lldb][test] Add test for ASTImporter's name conflict resolution (#11…

    …2566)
    
    This is a reduced test case from a crash we've observed in the past. The
    assertion that this test triggers is:
    ```
    Assertion failed: ((Pos == ImportedDecls.end() || Pos->second == To) && "Try to import an already imported Decl"), function MapImported, file ASTImporter.cpp, line 10494.
    ```
    
    In a non-asserts build we crash later on in the ASTImporter. The root
    cause is, as the assertion above points out, that we erroneously replace
    an existing `From->To` decl mapping with a `To` decl that isn't
    complete. Then we try to complete it but it has no definition and we
    dereference a nullptr.
    
    The reason this happens is basically what's been described in
    https://reviews.llvm.org/D67803?id=220956#1676588
    
    The dylib contains a definition of `Service` which is different to the
    one in the main executable. When we start dumping the children of the
    variable we're printing, we start completing it's members,
    `ASTImport`ing fields in the process. When the ASTImporter realizes
    there's been a name conflict (i.e., a structural mismatch on the
    `Service` type) it would usually report back an error. However, LLDB
    uses `ODRHandlingType::Liberal`, which means we create a new decl for
    the ODR'd type instead of re-using the previously mapped decl.
    Eventually this leads us to crash.
    
    Ideally we'd be using `ODRHandlingType::Conservative` and warn/error,
    though LLDB relies on this in some cases (particularly for
    distinguishing template specializations, though maybe there's better a
    way to deal with those).
    
    We should really warn the user when this happens and not crash. To avoid
    the crash we'd need to know to not create a decl for the ODR violation,
    and instead re-use the definition we've previously seen. Though I'm not
    yet sure that's viable for all of LLDB's use-cases (where ODR violations
    might legimiately occur in a program, e.g., with opaque definitions,
    etc.).
    Michael137 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    3bc765d View commit details
    Browse the repository at this point in the history
  77. [CodeGen] Fix return type of PHI_iterator::getIncomingValue. NFC.

    This is supposed to match ValT aka Register.
    jayfoad committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    b7bc1d0 View commit details
    Browse the repository at this point in the history
  78. [Clang] Fix an assertion in expression recovery (#112888)

    Explicit object member function calls are not modelled as member calls
    
    Fixes #112559
    cor3ntin authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    af90e7c View commit details
    Browse the repository at this point in the history
  79. [libc][math] Add option to set a specific exponent for frexp with Inf…

    …/NaN inputs. (#112387)
    
    In IEEE 754 and C standards, when calling `frexp` with Inf/Nan inputs,
    the exponent result is unspecified. In this case, FreeBSD libc and musl
    just passthrough `exp`, while glibc, FreeBSD libm set exp = 0, and MSVC
    set exp = -1.
    
    By default, LLVM libc will passthrough `exp` just as FreeBSD libc and
    musl, but we also allow users to explicitly choose the return exp value
    in this case for compatibility with other libc.
    
    Notice that, gcc did generate passthrough `exp` for `frexp(NaN/Inf,
    exp)`: https://godbolt.org/z/sM8fEej4E
    lntue authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    b0dbd2c View commit details
    Browse the repository at this point in the history
  80. [libc++] Re-add attribute macro to clang-format (#112746)

    That macro was removed incorrectly from the clang-format file because it
    had a typo in its name. However, the macro with the right name is still
    being used in the library (sadly, in a single place).
    ldionne authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    90bc60c View commit details
    Browse the repository at this point in the history
  81. [analyzer][Solver] Teach SymbolicRangeInferrer about commutativity (2…

    …/2) (#112887)
    
    This patch should not introduce much overhead as it only does one more
    constraint map lookup, which is really quick.
    
    Depends on #112583
    steakhal authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    67e8421 View commit details
    Browse the repository at this point in the history
  82. Configuration menu
    Copy the full SHA
    1b49ee7 View commit details
    Browse the repository at this point in the history
  83. [libc] changed the return cast from static_cast<float16> to fputil::c…

    …ast<float16> in exp10f16.cpp. (#112889)
    
    switch to fputil::cast to fix rounding with compiler-rt
    wldfngrs authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    803220d View commit details
    Browse the repository at this point in the history
  84. [SystemZ] Rename SystemZ ATT Asm dialect to GNU Asm dialect (#112800)

    The ATT assembler dialect on SystemZ seems to have been taken from the
    existing ATT/Intel code. However, on SystemZ, ATT does not hold any
    meaning. In reality, we are splitting the difference between GNU Asm
    syntax and HLASM Asm syntax, so it makes sense to rename ATT to GNU
    instead.
    
    Co-authored-by: Tony Tao <tonytao@ca.ibm.com>
    tltao and Tony Tao authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    783901b View commit details
    Browse the repository at this point in the history
  85. [mlir][linalg] Fix idx comparison in the vectorizer (#112900)

    Fixes loop comparison condition in the vectorizer.
    
    As that logic is used specifically for vectorising `tensor.extract`, I
    also added a test that violates the assumptions made inside
    `getTrailingNonUnitLoopDimIdx`, namely that Linalg loops are non-empty.
    Vectorizer pre-conditions will capture that much earlier making sure
    that `getTrailingNonUnitLoopDimIdx` is only run when all the assumptions
    are actually met.
    
    Thank you for pointing this out, @pfusik !
    banach-space authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    0a3347d View commit details
    Browse the repository at this point in the history
  86. Merge from 'main' to 'sycl-web' (67 commits)

      CONFLICT (content): Merge conflict in clang/include/clang/Serialization/ASTBitCodes.h
      CONFLICT (content): Merge conflict in clang/test/Modules/no-external-type-id.cppm
    e-kud committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    58b4c80 View commit details
    Browse the repository at this point in the history
  87. [TableGen] Remove unused tokens FalseKW and TrueKW

    These were introduced in https://reviews.llvm.org/D90635 but never used.
    jayfoad committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    68efaaa View commit details
    Browse the repository at this point in the history
  88. [Offload] Fix not copying the buffer identifier of offloading files

    Summary:
    This caused an error when copying a file of the same name when multiple
    architectures needed the file. The buffer identifier which we use for
    the name in `-save-temps` mode would be empty and create in invalid
    filename. Copy this correctly now.
    jhuber6 committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    c27aae0 View commit details
    Browse the repository at this point in the history
  89. Configuration menu
    Copy the full SHA
    62e2c7f View commit details
    Browse the repository at this point in the history
  90. Configuration menu
    Copy the full SHA
    922992a View commit details
    Browse the repository at this point in the history
  91. Configuration menu
    Copy the full SHA
    00d30bd View commit details
    Browse the repository at this point in the history
  92. Merge from 'sycl' to 'sycl-web' (3 commits)

    iclsrc committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    e08259d View commit details
    Browse the repository at this point in the history
  93. [SandboxIR] Implement Operator (#112805)

    This patch implements sandboxir::Operator mirroring llvm::Operator.
    vporpo authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    54566ba View commit details
    Browse the repository at this point in the history
  94. [gn build] Port 54566ba

    llvmgnsyncbot committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    dbe47c2 View commit details
    Browse the repository at this point in the history
  95. [libc++] __uglify non-conforming member typedef base (#112843)

    Currently, libc++'s `bitset`, `forward_list`, and `list` have
    non-conforming member typedef name `base`. The typedef is private, but
    can cause ambiguity in name lookup.
    
    Some other classes in libc++ that are either implementation details or
    not precisely specified by the standard also have member typdef `base`.
    I think this can still be conforming.
    
    Follows up #80706 and #111127.
    frederick-vs-ja authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    397707f View commit details
    Browse the repository at this point in the history
  96. Configuration menu
    Copy the full SHA
    9f264e4 View commit details
    Browse the repository at this point in the history
  97. Configuration menu
    Copy the full SHA
    a99bf0f View commit details
    Browse the repository at this point in the history
  98. [llvm] prefer isa_and_nonnull over v && isa (#112541)

    Use `isa_and_nonnull<T>(v)` instead of `v && isa<T>(v)`, where `v` is
    evaluated twice in the latter.
    VoltrexKeyva authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    721b796 View commit details
    Browse the repository at this point in the history
  99. [M68k] ARII atomic load/store (#108982)

    Only ARI was supported, this PR adds ARII support for atomic
    loads/stores (also with zero displacement). Closes #107939
    knickish authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    e13f1d1 View commit details
    Browse the repository at this point in the history
  100. [NFC][GOFF] Fix char overflow (#112826)

    This is one of the many PRs to fix errors with LLVM_ENABLE_WERROR=on.
    Built by GCC 11.
    
    Fix warnining:
    
    llvm/unittests/Object/GOFFObjectFileTest.cpp:511:17: error: overflow in
    conversion from ‘int’ to ‘char’ changes value from ‘240’ to
    ‘'\37777777760'’ [-Werror=overflow]
      511 |   GOFFData[1] = 0xF0;
    jsji authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    9d7b35d View commit details
    Browse the repository at this point in the history
  101. [ARM] Use ARM::NoRegister in more places. NFC

    Similar to #112507, this uses ARM::NoRegister in a few more places, as opposed
    to the constant 0.
    davemgreen committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    0f3ed9c View commit details
    Browse the repository at this point in the history
  102. Configuration menu
    Copy the full SHA
    3a91611 View commit details
    Browse the repository at this point in the history
  103. [X86] andnot-patterns.ll - add non-BMI test coverage

    Extra test coverage for #112547 to test cases where we don't create a ANDNOT instruction
    RKSimon committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    7da0a69 View commit details
    Browse the repository at this point in the history
  104. [NFC] Fix c++ style comment in c file (#112814)

    This is one of the many PRs to fix errors with LLVM_ENABLE_WERROR=on.
    Built by GCC 11.
    
    Fix warnings:
    llvm-project/clang/include/clang-c/Index.h:2983:3: error: C++ style
    comments are not allowed in ISO C90 [-Werror]
     2983 |   // HLSL Types
    jsji authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    8182f81 View commit details
    Browse the repository at this point in the history
  105. [NFC] add DiagnosticsTestHelper decl (#112820)

    This is one of the many PRs to fix errors with LLVM_ENABLE_WERROR=on.
    Built by GCC 11.
    
    Fix warning
    
    llvm-project/clang/unittests/Basic/DiagnosticTest.cpp:19:6: error: ‘void
    clang::DiagnosticsTestHelper(clang::DiagnosticsEngine&)’ has not been
    declared within ‘clang’ [-Werror]
       19 | void clang::DiagnosticsTestHelper(DiagnosticsEngine &diag) {
          |      ^~~~~
    In file included from
    llvm-project/clang/unittests/Basic/DiagnosticTest.cpp:9:
    llvm-project/clang/include/clang/Basic/Diagnostic.h:567:15: note: only
    here as a ‘friend’
      567 |   friend void DiagnosticsTestHelper(DiagnosticsEngine &);
    jsji authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    6a623e8 View commit details
    Browse the repository at this point in the history
  106. [SandboxIR] Implement FPMathOperator (#112921)

    This patch implements sandboxir::FPMathOperator mirroring
    llvm::FPMathOperator
    vporpo authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    a24a420 View commit details
    Browse the repository at this point in the history
  107. [NFC] Fix Werror=extra warning related to mismatched enum type (#112808)

    This is one of the many PRs to fix errors with LLVM_ENABLE_WERROR=on.
    Built by GCC 11.
    
    Fix warnings:
    
    llvm-project/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp: In member
    function ‘void llvm::AsmPrinter::emitJumpTableSizesSection(const
    llvm::MachineJumpTableInfo*, const llvm::Function&) const’:
    llvm-project/llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp:2852:31: error:
    enumerated and non-enumerated type in conditional expression
    [-Werror=extra]
     2852 |     int Flags = F.hasComdat() ? ELF::SHF_GROUP : 0;
          |                 ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
    jsji authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    6c60ead View commit details
    Browse the repository at this point in the history
  108. Configuration menu
    Copy the full SHA
    1fc0d3f View commit details
    Browse the repository at this point in the history
  109. [MemProf] Fix the option to disable memprof ICP (#112917)

    The -enable-memprof-indirect-call-support meant to guard the recently
    added memprof ICP support was not used in enough places. Specifically,
    it was not checked in mayHaveMemprofSummary, which is called from the
    ThinLTO backend applyImports. This led to failures when checking the
    callsite records, as we incorrectly expected records for indirect calls.
    
    Fix the option to be checked in all necessary locations, and add
    testing.
    teresajohnson authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    6264288 View commit details
    Browse the repository at this point in the history
  110. Fix build break in SemaHLSL.cpp on MSVC 2022: warning C4715: 'getReso…

    …urceClass': not all control paths return a value (#112767)
    
    Moves the existing `llvm_unreachable` statement to the bottom of the
    function and changes the case statement to deliberately fall through to
    it.
    
    Build break was introduced by #111203
    
    It was not caught by the builders as they use Visual Studio 2019,
    whereas this warning only appears in 2022.
    
    ---------
    
    Co-authored-by: Matheus Izvekov <mizvekov@gmail.com>
    dpaoliello and mizvekov authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    9120ade View commit details
    Browse the repository at this point in the history
  111. Configuration menu
    Copy the full SHA
    a01d7df View commit details
    Browse the repository at this point in the history
  112. [MemProf] Disable memprof ICP support by default (#112940)

    A failure showed up after this was committed, rather than revert simply
    disable this new support to simplify investigation and further testing.
    teresajohnson authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    5995e4b View commit details
    Browse the repository at this point in the history
  113. [lld-macho] Improve robustness of ObjC category merging (#112618)

    This patch enhances the robustness of lld's Objective-C category
    merging. Currently, the category merger assumes it can fully parse and
    understand the format of all categories in the input, triggering an
    assert if any invalid category data is encountered.
    
    This will end up causing asserts in certain rare corner cases that are
    difficult to reproduce in small test cases. The proposed changes modify
    the behavior so that if invalid category data is detected, category
    merging is skipped for that specific class and all other categories
    sharing the same base class. This approach allows the linker to continue
    processing other categories without failing entirely due to a single
    problematic input.
    
    We also add a LIT test to where we corrupt category data and check that
    category merging for that class was skipped but the link was successful.
    alx32 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    f9d3e98 View commit details
    Browse the repository at this point in the history
  114. Configuration menu
    Copy the full SHA
    7e87c2a View commit details
    Browse the repository at this point in the history
  115. [ADT] Make concat able to handle ranges with iterators that return by…

    … value (such as zip) (#112783)
    
    If any iterator in the concatenation returns by value, the result must
    return by value otherwise it'll produce dangling references.
    
    (some context that may or may not be relevant to this part of the code
    may be in
    llvm/llvm-project@981ce8f
    )
    
    An alternative to #112441
    dwblaikie authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    266154a View commit details
    Browse the repository at this point in the history
  116. Full path names are used in several unittests instead of the binary n…

    …ame. Fix up the testcase failures (#107974)
    
    Encountered several testcase failures when running `ninja check-all`. It
    was due to the full path name were shown in the error message instead of
    the binary name, and therefore causing the check string mismatch.
    
    The machine was running CentOS 9 with binfmt_misc setup that uses
    qemu-aarch64 (8.1.2). Built and ran the unittest as aarch64 host
    (through qemu user).
    
    Co-authored-by: h2h <h2h@meta.com>
    HighW4y2H3ll and h2h authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    629a182 View commit details
    Browse the repository at this point in the history
  117. Configuration menu
    Copy the full SHA
    170dab9 View commit details
    Browse the repository at this point in the history
  118. [clang][RISCV] Extend intrinsic size check variable from 16 -> 32 bit…

    …s. NFC (#111481)
    
    We currently have over 67000 intrinsics, uint16_t will overflow.
    4vtomat authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    e3b22dc View commit details
    Browse the repository at this point in the history
  119. [nfc][lsan] Parametrize ScanForPointers with loader (#112803)

    Use `DirectLoader` which is equivalent to existing
    behaviour of loading pointers directly from memory.
    vitalybuka authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    d60fdc1 View commit details
    Browse the repository at this point in the history
  120. [lld-macho] Fix category merging sed issue (#112955)

    Fix 'sed' spacing to ensure compatibility with all platforms. 
    
    Original failure:
    https://lab.llvm.org/buildbot/#/builders/190/builds/7903
    ```
    RUN: at line 33: sed -E '/^__OBJC_\$_CATEGORY_MyBaseClass_\$_Category01:/ { n; s/^[ \t]*\.quad[ \t]+l_OBJC_CLASS_NAME_$/\t.quad\tL_OBJC_IMAGE_INFO+3/ }' merge_cat_minimal.s > merge_cat_minimal_bad_name.s
    + sed -E '/^__OBJC_\$_CATEGORY_MyBaseClass_\$_Category01:/ { n; s/^[ \t]*\.quad[ \t]+l_OBJC_CLASS_NAME_$/\t.quad\tL_OBJC_IMAGE_INFO+3/ }' merge_cat_minimal.s
    sed: 1: "/^__OBJC_\$_CATEGORY_My ...": bad flag in substitute command: '}'
    ```
    alx32 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    caa9e41 View commit details
    Browse the repository at this point in the history
  121. [libc][math] Add test and fix atan2f crashing when flush-denorm-to-ze…

    …ro (FTZ) and denorm-as-zero (DAZ) modes are set. (#112828)
    lntue authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    952dafb View commit details
    Browse the repository at this point in the history
  122. [mlir] Add forall canonicalization to replace constant induction vars…

    … (#112764)
    
    Adds a canonicalization pattern for scf.forall that replaces constant
    induction variables with a constant index. There is a similar
    canonicalization that completely removes constant induction variables
    from the loop, but that pattern does not apply on foralls with mappings,
    so this one is necessary for those cases.
    
    ---------
    
    Signed-off-by: Max Dawkins <max.dawkins@gmail.com>
    Max191 authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    1ae2446 View commit details
    Browse the repository at this point in the history
  123. Configuration menu
    Copy the full SHA
    53e85d4 View commit details
    Browse the repository at this point in the history
  124. [ubsan] Disable test on Darwin

    Broken after #111497
    vitalybuka authored Oct 18, 2024
    Configuration menu
    Copy the full SHA
    203b972 View commit details
    Browse the repository at this point in the history
  125. Configuration menu
    Copy the full SHA
    9a4661c View commit details
    Browse the repository at this point in the history
  126. [SLP]Initial non-power-of-2 support (but still whole register) for re…

    …ductions
    
    Enables initial non-power-of-2 support (but still requires number of
    elements, forming whole registers) for reductions.
    Enables extra vectorization for
    MultiSource/Benchmarks/7zip/7zip-benchmark, CINT2006/464.h264ref and
    CFP2017rate/526.blender_r (checked for SSE2)
    
    Reviewers: RKSimon
    
    Reviewed By: RKSimon
    
    Pull Request: llvm/llvm-project#112361
    alexey-bataev committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    7f2e937 View commit details
    Browse the repository at this point in the history
  127. Merge from 'sycl' to 'sycl-web'

    iclsrc committed Oct 18, 2024
    Configuration menu
    Copy the full SHA
    f428f71 View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2024

  1. Configuration menu
    Copy the full SHA
    e6f4ee4 View commit details
    Browse the repository at this point in the history
  2. Align constant-loclist test to upstream (#2756)

    The test has evolved upstream since it was forked into this repository
    and started failing now.  Re-align the invocations and FileCheck
    patterns with the test in llvm-project.
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@4baa42c3da51c0d
    svenvh authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    e75b386 View commit details
    Browse the repository at this point in the history
  3. Drop 'using namespace std' everywhere (#2755)

    Most uses of std functionality already have explicit `std::`
    qualifications, so qualify the remaining unqualified uses and drop the
    `using namespace` directives.
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@29b02642964a240
    svenvh authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    3f8ee44 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    02a0c48 View commit details
    Browse the repository at this point in the history
  5. Use move to prevent copy (#2761)

    Signed-off-by: Marcos Maronas <marcos.maronas@intel.com>
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@ee130659c16e2d3
    maarquitos14 authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    f99f6b5 View commit details
    Browse the repository at this point in the history
  6. Remove redundant requirement spirv-as in tu-member-opaque.spvasm test (

    …#2757)
    
    * Remove redundant requirement spirv-as in tu-member-opaque.spvasm test
    
    * Correct the tu-member-opaque.spvasm test file extension
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@34bc772821bd93e
    mateuszchudyk authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    cdd21b0 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    77ca54d View commit details
    Browse the repository at this point in the history
  8. Fix SPIR-V Builtin OpGenericCastToPtr transformation to OCL (#2763)

    OpGenericCastToPtrExplict is for dynamic cast and OpGenericCastToPtr is for static cast.
    
    OpGenericCastToPtrExplict is already transformed to to_{global|local|private} OCL builtins, but the handling for OpGenericCastToPtr is missing.
    
    Looks we can transform OpGenericCastToPtr to addrspacecast instruction directly in SPIRV to OCL transformation.
    
    Signed-off-by: Cui, Dele <dele.cui@intel.com>
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@21e96548e242860
    delecui authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    8659507 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    38c9811 View commit details
    Browse the repository at this point in the history
  10. SPV_KHR_untyped_pointers - implement OpUntypedPrefetchKHR (#2752)

    When the extension is enabled, we should replace prefetch OpenCL ExtInst with the OpUntypedPrefetchKHR instruction.
    
    Spec:
    https://htmlpreview.github.io/?https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/KHR/SPV_KHR_untyped_pointers.html
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@c795db9a90b86f0
    vmaksimo authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    9b50b27 View commit details
    Browse the repository at this point in the history
  11. Add fast math flag translation for OpenCL std lib (#2762)

    Such possibility was added in SPIR-V 1.6.
    This patch also introduces limited translation of nofpclass LLVM parameter attribute.
    
    Signed-off-by: Sidorov, Dmitry <dmitry.sidorov@intel.com>
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@ae8fa3825a699b2
    MrSidims authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    bd2ac52 View commit details
    Browse the repository at this point in the history
  12. Fix SPIRVCopyMemory::validate() (#2770)

    The asserts should be checking the `Target` member variable; `Id` is
    not used for this class.
    
    Only fix the wrong asserts for now; proper handling and testing of
    `OpCopyMemory` will be done in a followup commit.
    
    Contributes to KhronosGroup/SPIRV-LLVM-Translator#2769
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@9d2926d27b478f0
    svenvh authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    1f8de71 View commit details
    Browse the repository at this point in the history
  13. Fix mangling for atomic builtins used with SPV_KHR_untyped_pointers (#…

    …2771)
    
    This change allows to preserve the correct builtin mangling in reverse translation.
    All the existing tests for atomics (except atomic flag instructions which are not covered by the extension) were updated to verify we get the same mangling with and without extension enabled.
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@566023769b3ab6a
    vmaksimo authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    b12df55 View commit details
    Browse the repository at this point in the history
  14. Do not run check-in-tree after pushes to llvm_release_* (#2793)

    The check-in-tree tests take about 50 minutes to run compared to <5
    minutes for check-out-of-tree.  This causes considerable congestion on
    the runners when backports get merged to several llvm_release_*
    branches around the same time.
    
    Since the value of these post-push checks is relatively low, disable
    them; they will still run on pull requests.
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@196bbc97bdde045
    svenvh authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    bd16a00 View commit details
    Browse the repository at this point in the history
  15. SPIRVReader: Add OpCopyMemory support (#2779)

    Add support for translating `OpCopyMemory` into `llvm.memcpy`.
    
    Fixes KhronosGroup/SPIRV-LLVM-Translator#2769
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@8dc0349c0860172
    svenvh authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    157dae5 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    7be620b View commit details
    Browse the repository at this point in the history
  17. SPV_KHR_untyped_pointers - fix images translation (#2817)

    This patch ensures that we are loading image type, not untyped pointer
    type when the extension is used. This way we also preserve correct
    mangling during the reverse translation.
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@cd7985fb6d2589d
    vmaksimo authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    e9ebfa5 View commit details
    Browse the repository at this point in the history
  18. SPV_KHR_untyped_pointers - fix enqueue marker (#2820)

    This patch ensures that we are loading image type, not untyped pointer
    type when the extension is used. This way we also preserve correct
    mangling during the reverse translation.
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@8e65158c3250e5c
    vmaksimo authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    00fc482 View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    2a0693c View commit details
    Browse the repository at this point in the history
  20. Translate integer dot product SPIR-V builtins to OCL builtins (#2794)

    #1174 implements translating integer dot product OCL builtins to SPIR-V builtins. This pull request is to do the reverse translation.
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@925255cb1982896
    qichaogu authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    f717bd2 View commit details
    Browse the repository at this point in the history
  21. Handle removed OpAtomicCompareExchangeWeak (#2824)

    OpAtomicCompareExchangeWeak has been removed and #2665 added a validation for it.
    This pull request replaces OpAtomicCompareExchangeWeak with OpAtomicCompareExchange.
    
    Original commit:
    KhronosGroup/SPIRV-LLVM-Translator@eb64e4d795006d5
    qichaogu authored and jsji committed Nov 7, 2024
    Configuration menu
    Copy the full SHA
    0bbbeac View commit details
    Browse the repository at this point in the history

Commits on Nov 8, 2024

  1. Revert "Finally formalise our defacto line-ending policy"

    This reverts commit dccebdd.
    ldrumm authored and jsji committed Nov 8, 2024
    Configuration menu
    Copy the full SHA
    0ba27fe View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5c562c9 View commit details
    Browse the repository at this point in the history
  3. [clang] Sync with community to use UnqualPtrTy

    Remove leftover differences during opaque pointer transition.
    jsji committed Nov 8, 2024
    Configuration menu
    Copy the full SHA
    9162b69 View commit details
    Browse the repository at this point in the history
  4. [SYCL][Test] Update attributes in tests after 69a798a 095d49d

    * [Inliner] Propagate more attributes to params when inlining (#91101) 69a798a
    * [InstCombine] Set `samesign` when converting signed predicates into unsigned (#112642) 095d49d
    jsji committed Nov 8, 2024
    Configuration menu
    Copy the full SHA
    2816519 View commit details
    Browse the repository at this point in the history

Commits on Nov 9, 2024

  1. Configuration menu
    Copy the full SHA
    1457e00 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2057848 View commit details
    Browse the repository at this point in the history