Skip to content
  1. Feb 12, 2021
  2. Feb 11, 2021
    • Nicolas Vasilache's avatar
      s[mlir] Tighten computation of inferred SubView result type. · 5bc4f884
      Nicolas Vasilache authored
      The AffineMap in the MemRef inferred by SubViewOp may have uncompressed symbols which result in type mismatch on otherwise unused symbols. Make the computation of the AffineMap compress those unused symbols which results in better canonical types.
      Additionally, improve the error message to report which inferred type was expected.
      
      Differential Revision: https://reviews.llvm.org/D96551
      5bc4f884
    • Stella Stamenova's avatar
      Support multi-configuration generators correctly in several config files · ed98676f
      Stella Stamenova authored
      Multi-configuration generators (such as Visual Studio and Xcode) allow the specification of a build flavor at build time instead of config time, so the lit configuration files need to support that - and they do for the most part. There are several places that had one of two issues (or both!):
      
      1) Paths had %(build_mode)s set up, but then not configured, resulting in values that would not work correctly e.g. D:/llvm-build/%(build_mode)s/bin/dsymutil.exe
      2) Paths did not have %(build_mode)s set up, but instead contained $(Configuration) (which is the value for Visual Studio at configuration time, for Xcode they would have had the equivalent) e.g. "D:/llvm-build/$(Configuration)/lib".
      
      This seems to indicate that we still have a lot of fragility in the configurations, but also that a number of these paths are never used (at least on Windows) since the errors appear to have been there a while.
      
      This patch fixes the configurations and it has been tested with Ninja and Visual Studio to generate the correct paths. We should consider removing some of these settings altogether.
      
      Reviewed By: JDevlieghere, mehdi_amini
      
      Differential Revision: https://reviews.llvm.org/D96427
      ed98676f
    • Nicolas Vasilache's avatar
    • Alex Zinenko's avatar
      [mlir] make ModuleTranslation mapping fields private · 0881a4f1
      Alex Zinenko authored
      ModuleTranslation contains multiple fields that keep track of the mappings
      between various MLIR and LLVM IR components. The original ModuleTranslation
      extension model was based on inheritance, with these fields being protected and
      thus accessible in the ModuleTranslation and derived classes. The
      inheritance-based model doesn't scale to translation of more than one derived
      dialect and will be progressively replaced with a more flexible one based on
      dialect interfaces and a translation state that is separate from
      ModuleTranslation. This change prepares the replacement by making the mappings
      private and providing public methods to access them.
      
      Depends On D96436
      
      Reviewed By: mehdi_amini
      
      Differential Revision: https://reviews.llvm.org/D96437
      0881a4f1
    • Alex Zinenko's avatar
      [mlir] Make JitRunnerMain main take a DialectRegistry · 9a08f760
      Alex Zinenko authored
      Historically, JitRunner has been registering all available dialects with the
      context and depending on them without the real need. Make it take a registry
      that contains only the dialects that are expected in the input and stop linking
      in all dialects.
      
      Reviewed By: mehdi_amini
      
      Differential Revision: https://reviews.llvm.org/D96436
      9a08f760
    • Stephan Herhut's avatar
      [mlir][gpu] Allow all dialects in SCF to GPU conversion. · 33a58c1c
      Stephan Herhut authored
      With the standard dialect being split up, the set of dialects that are
      used when converting to GPU is growing. This change modifies the
      SCFToGpu pass to allow all operations inside launch bodies.
      
      Differential Revision: https://reviews.llvm.org/D96480
      33a58c1c
    • Hanhan Wang's avatar
      [mlir][Linalg] Add conv ops with TF definition. · 9325b8da
      Hanhan Wang authored
      The dimension order of a filter in tensorflow is
      [filter_height, filter_width, in_channels, out_channels], which is different
      from current definition. The current definition follows TOSA spec. Add TF
      version conv ops to .tc, so we do not have to insert a transpose op around a
      conv op.
      
      Reviewed By: antiagainst
      
      Differential Revision: https://reviews.llvm.org/D96038
      9325b8da
    • Sanjoy Das's avatar
      NFC; fix typo in comment · bac1f127
      Sanjoy Das authored
      This should have gone in with a76761cf.
      bac1f127
    • Sanjoy Das's avatar
      NFC comment-only cleanups · a76761cf
      Sanjoy Das authored
       - Remove leftover comment from de2568aa
       - Fix a typo in a comment
      a76761cf
    • Aart Bik's avatar
      [mlir][sparse] reduce tensor dimensions in sparse test · 11bec2a8
      Aart Bik authored
      Rationale:
      BuiltinTypes.cpp observed overflow when computing size of
      tensor<100x200x300x400x500x600x700x800xf32>.
      
      Reviewed By: stellaraccident
      
      Differential Revision: https://reviews.llvm.org/D96475
      11bec2a8
    • Mehdi Amini's avatar
    • Mehdi Amini's avatar
      Fix CMake configuration for MLIR unittests · 09cfec62
      Mehdi Amini authored
      The CMake changes in 2aa1af9b to make it possible to build MLIR as a
      standalone project unfortunately disabled all unit-tests from the
      regular in-tree build.
      09cfec62
    • Rob Suderman's avatar
      [MLIR][TOSA] Tosa elementwise broadcasting · c19a4128
      Rob Suderman authored
      Added support for broadcasting size-1 dimensions for TOSA elemtnwise
      operations.
      
      Differential Revision: https://reviews.llvm.org/D96190
      c19a4128
    • Sean Silva's avatar
      Minor fixes to Type ODS docs. · b83361b8
      Sean Silva authored
      Differential Revision: https://reviews.llvm.org/D96391
      b83361b8
    • Sean Silva's avatar
      [mlir] Introduce more intuitive wording for attributes. · 6b07a978
      Sean Silva authored
      After discussion, it seems like we want to go with
      "inherent/discardable". These seem to best capture the relationship with
      the op semantics and don't conflict with other terms.
      
      Please let me know your preferences. Some of the other contenders are:
      
      ```
      "intrinsic" side | "annotation" side
      -----------------+------------------
      characteristic   | annotation
      closed           | open
      definitional     | advisory
      essential        | discardable
      expected         | unexpected
      innate           | acquired
      internal         | external
      intrinsic        | extrinsic
      known            | unknown
      local            | global
      native           | foreign
      inherent         | acquired
      ```
      
      Rationale:
      
      - discardable: good. discourages use for stable data.
      - inherent: good
      - annotation: redundant and doesn't convey difference
      - intrinsic: confusable with "compiler intrinsics".
      - definitional: too much of a mounthful
      - extrinsic: too exotic of a word and hard to say
      - acquired: doesn't convey the relationship to the semantics
      - internal/external: not immediately obvious: what is internal to what?
      
      - innate: similar to intrinsic but worse
      - acquired: we don't typically think of an op as "acquiring" things
      - known/unknown: by who?
      - local/global: to what?
      - native/foreign: to where?
      - advisory: confusing distinction: is the attribute itself advisory or
        is the information it provides advisory?
      - essential: an intrinsic attribute need not be present.
      - expected: same issue as essential
      - unexpected: by who/what?
      - closed/open: whether the set is open or closed doesn't seem essential
        to the attribute being intrinsic. Also, in theory an op can have an
        unbounded set of intrinsic attributes (e.g. `arg<N>` for func).
      - characteristic: unless you have a math background this probably
        doesn't make as much sense
      
      Differential Revision: https://reviews.llvm.org/D96093
      6b07a978
  3. Feb 10, 2021
  4. Feb 09, 2021
Loading