about summary refs log tree commit diff homepage
path: root/utils
diff options
context:
space:
mode:
Diffstat (limited to 'utils')
-rw-r--r--utils/emacs/klee-pc-mode.el64
-rw-r--r--utils/valgrind/README.txt2
-rw-r--r--utils/valgrind/valgrind-llvm.supp24
-rw-r--r--utils/valgrind/valgrind-stp.supp32
4 files changed, 122 insertions, 0 deletions
diff --git a/utils/emacs/klee-pc-mode.el b/utils/emacs/klee-pc-mode.el
new file mode 100644
index 00000000..a398adbf
--- /dev/null
+++ b/utils/emacs/klee-pc-mode.el
@@ -0,0 +1,64 @@
+(provide 'klee-pc-mode)
+
+(require 'font-lock)
+
+(defvar klee-pc-mode-syntax-table nil 
+  "Syntax table used while in ft-bt mode.")
+
+;;; --------------------------------------------------
+;;;setup the syntax table
+;;; --------------------------------------------------
+(unless klee-pc-mode-syntax-table
+  (setq klee-pc-mode-syntax-table (make-syntax-table))
+  ;;misc
+  (modify-syntax-entry ?\_   "w"       klee-pc-mode-syntax-table)
+  (modify-syntax-entry ?\.   "."       klee-pc-mode-syntax-table))
+
+;;;------------------------------------------------------------
+;;; local keymap
+;;;------------------------------------------------------------
+
+(defvar klee-pc-local-keymap nil)
+
+;;; --------------------------------------------------
+;;; set keywords
+;;; --------------------------------------------------
+
+(defvar klee-pc-mode-font-lock-keywords
+  (list
+   ;; Comments
+   '("#.*" . font-lock-comment-face)
+   ;; Identifiers
+   '("%[_a-zA-Z][a-zA-Z_.0-9]*" . font-lock-variable-name-face)
+   ;; Numbers
+   '("[+-]?0b[01_]+" . font-lock-preprocessor-face)
+   '("[+-]?0o[0-7_]+" . font-lock-preprocessor-face)
+   '("[+-]?0x[a-zA-Z0-9_]+" . font-lock-preprocessor-face)
+   '("[+-]?[0-9]+" . font-lock-preprocessor-face)
+   ;; Keywords
+   '("\\bdef\\b\\|\\bvar\\b\\|\\btrue\\b\\|\\barray\\b\\|\\bfalse\\b\\|\\bquery\\b\\|\\bdefine\\b\\|\\bdeclare\\b" . font-lock-keyword-face)
+   )
+  "klee-PC mode keywords")
+
+;;; --------------------------------------------------
+;;; major mode function
+;;; --------------------------------------------------
+(defun klee-pc-mode ()
+  "Switch to the klee-pc major mode"
+  (interactive)
+  (kill-all-local-variables)
+  (setq major-mode 'klee-pc-mode)
+  (setq mode-name "klee-pc")
+
+  ;; handle keymap
+  (use-local-map klee-pc-local-keymap)
+
+  ;;handle syntax table
+  (set-syntax-table klee-pc-mode-syntax-table)
+  ;;handle fontlock
+  (make-local-variable 'font-lock-defaults)
+  (setq font-lock-defaults '(klee-pc-mode-font-lock-keywords
+			     nil t))
+
+  ;;handle hook
+  (run-hooks 'klee-pc-mode-hook))
diff --git a/utils/valgrind/README.txt b/utils/valgrind/README.txt
new file mode 100644
index 00000000..9f7cb318
--- /dev/null
+++ b/utils/valgrind/README.txt
@@ -0,0 +1,2 @@
+A few valgrind suppression files for known leaks. The LLVM ones may be
+fixed by now.
diff --git a/utils/valgrind/valgrind-llvm.supp b/utils/valgrind/valgrind-llvm.supp
new file mode 100644
index 00000000..43bc5389
--- /dev/null
+++ b/utils/valgrind/valgrind-llvm.supp
@@ -0,0 +1,24 @@
+{ 
+   LLVM:Tmp1
+   Memcheck:Leak
+   fun:_vgrZU_libstdcZpZpZa__Znwj
+   fun:_ZN4llvm*
+}
+{ 
+   LLVM:Tmp2
+   Memcheck:Leak
+   fun:_vgrZU_libcZdsoZa_malloc
+   fun:_ZN4llvm*
+}
+{ 
+   LLVM:Tmp3
+   Memcheck:Leak
+   fun:*nwj*
+   fun:*llvm*
+}
+{ 
+   LLVM:Tmp4
+   Memcheck:Leak
+   fun:malloc
+   fun:*llvm*
+}
diff --git a/utils/valgrind/valgrind-stp.supp b/utils/valgrind/valgrind-stp.supp
new file mode 100644
index 00000000..9dba58f1
--- /dev/null
+++ b/utils/valgrind/valgrind-stp.supp
@@ -0,0 +1,32 @@
+{
+   STP:BeevMgr
+   Memcheck:Leak
+   fun:_vgrZU_libstdcZpZpZa__Znwj
+   fun:_ZN4BEEV7BeevMgr*
+}
+{
+   STP:BeevMgr:strdup
+   Memcheck:Leak
+   fun:_vgrZU_libcZdsoZa_malloc
+   fun:strdup
+   fun:_ZN4BEEV7BeevMgr*
+}
+{
+   STP:c_interface
+   Memcheck:Leak
+   fun:_vgrZU_libstdcZpZpZa__Znwj
+   fun:vc_*
+}
+{
+   STP:BeevMgr:vector
+   Memcheck:Leak
+   fun:_vgrZU_libstdcZpZpZa__Znwj
+   fun:_ZNSt6vector*
+   fun:_ZN4BEEV7BeevMgr*
+}
+{ 
+   LLVM:Tmp1
+   Memcheck:Leak
+   fun:_vgrZU_libstdcZpZpZa__Znwj
+   fun:_ZN4llvm*
+}