diff options
author | Sebastian Neubauer | 2022-01-04 01:52:34 +0000 |
---|---|---|
committer | GitHub | 2022-01-04 01:52:34 +0000 |
commit | 641255ccc83648d164bf6e8e8e4e93460591830b (patch) | |
tree | f10cda6e28a76fb696ef4559b3068e523e71962f /runtime/queries/llvm-mir-yaml | |
parent | 7c9d3682db8310286c309cb10828b02046246a8e (diff) |
Add llvm-mir highlighting (#1398)
* Add injection regex for more languages
To support embedding them in other languages like markdown.
* Add llvm-mir highlighting
LLVM Machine IR is dumped as yaml files that can embed LLVM IR and
Machine IR.
To support this, add a llvm-mir-yaml language that uses the yaml
parser, but uses different injections to highlight IR and MIR.
* Update submodule with fixed multiline comments
Co-authored-by: Blaž Hrastnik <blaz@mxxn.io>
Diffstat (limited to 'runtime/queries/llvm-mir-yaml')
-rw-r--r-- | runtime/queries/llvm-mir-yaml/highlights.scm | 1 | ||||
-rw-r--r-- | runtime/queries/llvm-mir-yaml/indents.toml | 3 | ||||
-rw-r--r-- | runtime/queries/llvm-mir-yaml/injections.scm | 9 |
3 files changed, 13 insertions, 0 deletions
diff --git a/runtime/queries/llvm-mir-yaml/highlights.scm b/runtime/queries/llvm-mir-yaml/highlights.scm new file mode 100644 index 00000000..4ba254e8 --- /dev/null +++ b/runtime/queries/llvm-mir-yaml/highlights.scm @@ -0,0 +1 @@ +; inherits: yaml diff --git a/runtime/queries/llvm-mir-yaml/indents.toml b/runtime/queries/llvm-mir-yaml/indents.toml new file mode 100644 index 00000000..ddc3578b --- /dev/null +++ b/runtime/queries/llvm-mir-yaml/indents.toml @@ -0,0 +1,3 @@ +indent = [ + "block_mapping_pair", +] diff --git a/runtime/queries/llvm-mir-yaml/injections.scm b/runtime/queries/llvm-mir-yaml/injections.scm new file mode 100644 index 00000000..b3243022 --- /dev/null +++ b/runtime/queries/llvm-mir-yaml/injections.scm @@ -0,0 +1,9 @@ +; inherits: yaml + +((document (block_node (block_scalar) @injection.content)) + (#set! injection.language "llvm")) + +((document (block_node (block_mapping (block_mapping_pair + key: (flow_node (plain_scalar (string_scalar))) ; "body" + value: (block_node (block_scalar) @injection.content))))) + (#set! injection.language "mir")) |