From 6f290d8f9e9d7faac295cb51fc96884a18f4ded4 Mon Sep 17 00:00:00 2001 From: Daniel Dunbar Date: Thu, 21 May 2009 04:36:41 +0000 Subject: Initial KLEE checkin. - Lots more tweaks, documentation, and web page content is needed, but this should compile & work on OS X & Linux. git-svn-id: https://llvm.org/svn/llvm-project/klee/trunk@72205 91177308-0d34-0410-b5e6-96231b3b80d8 --- utils/emacs/klee-pc-mode.el | 64 +++++++++++++++++++++++++++++++++++++++ utils/valgrind/README.txt | 2 ++ utils/valgrind/valgrind-llvm.supp | 24 +++++++++++++++ utils/valgrind/valgrind-stp.supp | 32 ++++++++++++++++++++ 4 files changed, 122 insertions(+) create mode 100644 utils/emacs/klee-pc-mode.el create mode 100644 utils/valgrind/README.txt create mode 100644 utils/valgrind/valgrind-llvm.supp create mode 100644 utils/valgrind/valgrind-stp.supp (limited to 'utils') 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* +} -- cgit 1.4.1