xref: /llvm-project/mlir/utils/tree-sitter-mlir/dialect/bufferization.js (revision 10f8be19e7562624c0e63872e28cc963e03e56a5)
1*10f8be19SRamkumar Ramachandra'use strict';
2*10f8be19SRamkumar Ramachandra
3*10f8be19SRamkumar Ramachandramodule.exports = {
4*10f8be19SRamkumar Ramachandra  bufferization_dialect : $ => choice(
5*10f8be19SRamkumar Ramachandra                            seq('bufferization.alloc_tensor',
6*10f8be19SRamkumar Ramachandra                                field('in', $._value_use_list_parens),
7*10f8be19SRamkumar Ramachandra                                field('copy', optional(seq(token('copy'), '(',
8*10f8be19SRamkumar Ramachandra                                                           $.value_use, ')'))),
9*10f8be19SRamkumar Ramachandra                                field('size_hint',
10*10f8be19SRamkumar Ramachandra                                      optional(seq(token('size_hint'), '=',
11*10f8be19SRamkumar Ramachandra                                                   $.value_use))),
12*10f8be19SRamkumar Ramachandra                                field('attributes', optional($.attribute)),
13*10f8be19SRamkumar Ramachandra                                field('return', $._type_annotation)),
14*10f8be19SRamkumar Ramachandra
15*10f8be19SRamkumar Ramachandra                            // operation ::= `bufferization.to_memref` $tensor
16*10f8be19SRamkumar Ramachandra                            // attr-dict `:` type($memref)
17*10f8be19SRamkumar Ramachandra                            seq('bufferization.to_memref',
18*10f8be19SRamkumar Ramachandra                                field('tensor', $.value_use),
19*10f8be19SRamkumar Ramachandra                                field('attributes', optional($.attribute)),
20*10f8be19SRamkumar Ramachandra                                field('return', $._type_annotation)),
21*10f8be19SRamkumar Ramachandra
22*10f8be19SRamkumar Ramachandra                            // operation ::= `bufferization.to_tensor` $memref
23*10f8be19SRamkumar Ramachandra                            //               (`restrict` $restrict^)?
24*10f8be19SRamkumar Ramachandra                            //               (`writable` $writable^)? attr-dict
25*10f8be19SRamkumar Ramachandra                            //               `:` type($memref)
26*10f8be19SRamkumar Ramachandra                            seq('bufferization.to_tensor',
27*10f8be19SRamkumar Ramachandra                                field('memref', $.value_use),
28*10f8be19SRamkumar Ramachandra                                field('restrict', optional($.restrict_attr)),
29*10f8be19SRamkumar Ramachandra                                field('writable', optional($.writable_attr)),
30*10f8be19SRamkumar Ramachandra                                field('attributes', optional($.attribute)),
31*10f8be19SRamkumar Ramachandra                                field('return', $._type_annotation)))
32*10f8be19SRamkumar Ramachandra}
33