1. Sep 22, 2023
    • Dávid Ferenc Szabó's avatar
      [CodeGen] Improve compilation time with VLIWMachineScheduler (#66942) · a7612e2e
      Dávid Ferenc Szabó authored
      A straight forward improvement which can already achieve 2x speed up in
      some cases like the one here:
      https://github.com/llvm/llvm-project/issues/65946.
      a7612e2e
    • Matthias Springer's avatar
      [mlir][Interfaces][NFC] Better documentation for `RegionBranchOpInterface` (#66920) · d56537a5
      Matthias Springer authored
      Update outdated documentation and add an example.
      d56537a5
    • Ingo Müller's avatar
      [mlir][memref][transform] Add new alloca_to_global op. (#66511) · 991cb147
      Ingo Müller authored
      This PR adds a new transform op that replaces `memref.alloca`s with
      `memref.get_global`s to newly inserted `memref.global`s. This is useful,
      for example, for allocations that should reside in the shared memory of
      a GPU, which have to be declared as globals.
      991cb147
    • Joseph Huber's avatar
      [libc] Remove the 'rpc_reset' routine from the RPC implementation (#66700) · 59896c16
      Joseph Huber authored
      Summary:
      This patch removes the `rpc_reset` function. This was previously used to
      initialize the RPC client on the device by setting up the pointers to
      communicate with the server. The purpose of this was to make it easier
      to initialize the device for testing. However, this prevented us from
      enforcing an invariant that the buffers are all read-only from the
      client side.
      
      The expected way to initialize the server is now to copy it from the
      host runtime. This will allow us to maintain that the RPC client is in
      the constant address space on the GPU, potentially through inference,
      and improving caching behaviour.
      59896c16
    • Ramkumar Ramachandra's avatar
      CostModel/RISCV: fix typos in fround test, vector length (#67025) · 88800f79
      Ramkumar Ramachandra authored
      There are several typos in fround.ll, persumably caused by copy-pasting,
      where there is a strange nvx5* type. From the surrounding code, it is
      clear that this was intended to be nvx4*. Fix these typos.
      88800f79
    • Matthias Springer's avatar
      [mlir][Interfaces] Clean up `DestinationStyleOpInterface` (#67015) · 0b2197b0
      Matthias Springer authored
      * "init" operands are specified with `MutableOperandRange` (which gives
      access to the underlying `OpOperand *`). No more magic numbers.
      * Remove most interface methods and make them helper functions. Only
      `getInitsMutable` should be implemented.
      * Provide separate helper functions for accessing mutable/immutable
      operands (`OpOperand`/`Value`, in line with #66515): `getInitsMutable`
      and `getInits` (same naming convention as auto-generated op accessors).
      `getInputOperands` was not renamed because this function cannot return a
      `MutableOperandRange` (because the operands are not necessarily
      consecutive). `OpOperandVector` is no longer needed.
      * The new `getDpsInits`/`getDpsInitsMutable` is more efficient than the
      old `getDpsInitOperands` because no `SmallVector` is created. The new
      functions return a range of operands.
      * Fix a bug in `getDpsInputOperands`: out-of-bounds operands were
      potentially returned.
      0b2197b0
  2. Sep 21, 2023