helix-mods/runtime/queries/llvm-mir/highlights.scm
Sebastian Neubauer 641255ccc8
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>
2022-01-04 10:52:34 +09:00

137 lines
1.7 KiB
Scheme

[
(label)
(bb_ref)
] @label
[
(comment)
(multiline_comment)
] @comment
[
"("
")"
"["
"]"
"{"
"}"
"<"
">"
] @punctuation.bracket
[
","
":"
"|"
"*"
] @punctuation.delimiter
[
"="
"x"
] @operator
[
"true"
"false"
] @constant.builtin.boolean
[
"null"
"_"
"unknown-address"
] @constant.builtin
[
(stack_object)
(constant_pool_index)
(jump_table_index)
(var)
(physical_register)
(ir_block)
(external_symbol)
(global_var)
(ir_local_var)
(metadata_ref)
(mnemonic)
] @variable
(low_level_type) @type
[
(immediate_type)
(primitive_type)
] @type.builtin
(number) @constant.numeric.integer
(float) @constant.numeric.float
(string) @string
(instruction name: _ @keyword.operator)
[
"successors"
"liveins"
"pre-instr-symbol"
"post-instr-symbol"
"heap-alloc-marker"
"debug-instr-number"
"debug-location"
"mcsymbol"
"tied-def"
"target-flags"
"CustomRegMask"
"same_value"
"def_cfa_register"
"restore"
"undefined"
"offset"
"rel_offset"
"def_cfa"
"llvm_def_aspace_cfa"
"register"
"escape"
"remember_state"
"restore_state"
"window_save"
"negate_ra_sign_state"
"intpred"
"floatpred"
"shufflemask"
"liveout"
"target-index"
"blockaddress"
"intrinsic"
"load"
"store"
"unknown-size"
"on"
"from"
"into"
"align"
"basealign"
"addrspace"
"call-entry"
"custom"
"constant-pool"
"stack"
"got"
"jump-table"
"syncscope"
"address-taken"
"landing-pad"
"inlineasm-br-indirect-target"
"ehfunclet-entry"
"bbsections"
(intpred)
(floatpred)
(memory_operand_flag)
(atomic_ordering)
(register_flag)
(instruction_flag)
(float_keyword)
] @keyword
(ERROR) @error