[all-commits] [llvm/llvm-project] d0bb76: [emacs] Highlight 'zeroext' and 'signext' keywords...

goldsteinn via All-commits all-commits at lists.llvm.org
Thu Jul 6 12:46:59 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d0bb76f191c7b306886f4d3e72d7986d5098cc2f
      https://github.com/llvm/llvm-project/commit/d0bb76f191c7b306886f4d3e72d7986d5098cc2f
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
    M llvm/utils/emacs/llvm-mode.el

  Log Message:
  -----------
  [emacs] Highlight 'zeroext' and 'signext' keywords as an attribute

Seems natural to highlight 'nocapture' along with other attributes
like 'nonnull', 'noundef', etc..

Differential Revision: https://reviews.llvm.org/D154571


  Commit: 2cb6b06c8930f5254e8fd393b81e3c96884840d3
      https://github.com/llvm/llvm-project/commit/2cb6b06c8930f5254e8fd393b81e3c96884840d3
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/test/Transforms/InstCombine/rem-mul-shl.ll

  Log Message:
  -----------
  [InstCombine] Add constant combines for `(urem/srem (shl X, Y), (shl X, Z))`

Forked from D142901 to deduce more `nsw`/`nuw` flag for the output
`shl`.

We can handle the following cases + some `nsw`/`nuw` flags:

The rationale for doing this all in `InstCombine` rather than handling
the constant `shl` cases in `InstSimplify` is we often create a new
instruction because we are able to deduce more `nsw`/`nuw` flags than
the original instruction had.

Differential Revision: https://reviews.llvm.org/D144225


  Commit: 19fc5e8208b6c3e42e0559c353803e6d6b7ade19
      https://github.com/llvm/llvm-project/commit/19fc5e8208b6c3e42e0559c353803e6d6b7ade19
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
    M llvm/test/Transforms/InstCombine/rem-mul-shl.ll

  Log Message:
  -----------
  [InstCombine] Add test cases for `(rem (shl Y, X), (shl Z, X))`; NFC

Differential Revision: https://reviews.llvm.org/D147107


  Commit: 453d983d56c4f6407cf6bef52064f74d95448e11
      https://github.com/llvm/llvm-project/commit/453d983d56c4f6407cf6bef52064f74d95448e11
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2023-07-06 (Thu, 06 Jul 2023)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/test/Transforms/InstCombine/rem-mul-shl.ll

  Log Message:
  -----------
  [InstCombine] Add transforms for `(rem (shl Y, X), (shl Z, X))`

This is just filling in a missing case from D144225.

We treat `(shl Y, X)` and `(shl Z, X)` as `(mul Z, 1 << X)` and `(mul
Y, 1 << X)` then reuse the same transformations that already exist.

Reviewed By: sdesmalen

Differential Revision: https://reviews.llvm.org/D147108


Compare: https://github.com/llvm/llvm-project/compare/f70967fdc473...453d983d56c4


More information about the All-commits mailing list