;; Hex constants
'("0x[0-9A-Fa-f]+" . font-lock-preprocessor-face)
;; Keywords
- '("begin\\|end\\|true\\|false\\|declare\\|global\\|constant\\|const\\|internal\\|linkonce\\|appending\\|uninitialized\\|implementation\\|\\.\\.\\.\\|null\\|to\\|except\\|not\\|target\\|endian\\|little\\|big\\|pointersize" . font-lock-keyword-face)
+ '("begin\\|end\\|true\\|false\\|declare\\|global\\|constant\\|const\\|internal\\|linkonce\\|weak\\|appending\\|uninitialized\\|implementation\\|\\.\\.\\.\\|null\\|to\\|except\\|not\\|target\\|endian\\|little\\|big\\|pointersize\\|volatile" . font-lock-keyword-face)
;; Types
'("void\\|bool\\|sbyte\\|ubyte\\|u?short\\|u?int\\|u?long\\|float\\|double\\|type\\|label\\|opaque" . font-lock-type-face)
;; Arithmetic and Logical Operators
'("add\\|sub\\|mul\\|div\\|rem\\|and\\|or\\|xor\\|set\\(ne\\|eq\\|lt\\|gt\\|le\\|ge\\)" . font-lock-keyword-face)
;; Special instructions
- '("phi\\|call\\|cast\\|to\\|shl\\|shr\\|va_arg" . font-lock-keyword-face)
+ '("phi\\|call\\|cast\\|to\\|shl\\|shr\\|vaarg\\|vanext" . font-lock-keyword-face)
;; Control instructions
- '("ret\\|br\\|switch\\|invoke" . font-lock-keyword-face)
+ '("ret\\|br\\|switch\\|invoke\\|unwind" . font-lock-keyword-face)
;; Memory operators
'("malloc\\|alloca\\|free\\|load\\|store\\|getelementptr" . font-lock-keyword-face)
)
;; Associate .ll files with llvm-mode
(setq auto-mode-alist
- (append '(("\\.ll$" . llvm-mode)) auto-mode-alist))
+ (append '(("\\.ll$" . llvm-mode) ("\\.llx$" . llvm-mode)) auto-mode-alist))
(provide 'llvm-mode)
;; end of llvm-mode.el