-;; Author: Misha Brukman <brukman@cs.uiuc.edu>
-;; Description:
-;; Major mode for the LLVM assembler language.
-;; Updated:
-;; Oct 8, 2002
-;; Code:
+;; Maintainer: The LLVM team, http://llvm.cs.uiuc.edu/
+;; Description: Major mode for the LLVM assembler language.
+;; Updated: 2003-06-02
;; Create mode-specific tables.
(defvar llvm-mode-syntax-table nil
;; Hex constants
'("0x[0-9A-Fa-f]+" . font-lock-preprocessor-face)
;; Keywords
- '("begin\\|end\\|true\\|false\\|declare\\|global\\|constant\\|const\\|internal\\|implementation\\|\\.\\.\\.\\|null\\|to\\|except\\|not" . 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\\|shl\\|shr" . 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