Skip to content

Commit e681aa4

Browse files
authored
Merge pull request #51 from lmntal/develop
Release v2.3.0
2 parents 0e881a5 + 1dd368e commit e681aa4

File tree

376 files changed

+14512
-10077
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

376 files changed

+14512
-10077
lines changed

.gitignore

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -67,11 +67,13 @@ lib/*.il
6767
*.lo
6868
*.la
6969
src/arch.h
70-
src/il_lexer.*
71-
src/il_parser.*
72-
src/interpret_generated.c
70+
src/loader/il_lexer.c
71+
src/loader/il_lexer.h
72+
src/loader/il_parser.c
73+
src/loader/il_parser.h
74+
src/loader/interpret_generated.c
75+
src/loader/translate_generated.c
7376
src/slim
74-
src/translate_generated.c
7577
src/verifier/nc_lexer.*
7678
src/verifier/nc_parser.*
7779
src/verifier/nc_parser.h
@@ -81,3 +83,9 @@ src/utility/.deps
8183
src/verifier/.deps
8284
third_party/google-perftools-1.8.3/.deps
8385
third_party/zdelta-2.1/.deps
86+
third_party/**/tcmalloc.h
87+
doc/doxygen/*
88+
test/**/*.log
89+
test/**/*.trs
90+
test/**/*.il
91+
.dirstamp

Makefile.am

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,7 @@ ACLOCAL_AMFLAGS = -I m4
66
SUBDIRS = third_party src lib ext doc test
77
DIST_SUBDIRS = $(SUBDIRS)
88
DISTCLEANFILES = VERSION arch.h
9+
10+
MOSTLYCLEANFILES = -rf $(DX_CLEANFILES)
11+
12+
@DX_RULES@

NEWS

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,12 @@
1+
SLIM (2.3.0) -- 2017/03/29
2+
* display commit id in version string
3+
* test script with TAP
4+
+ enabled to run tests using `make check`
5+
* add doxygen documents
6+
+ enabled to generate using `make doxygen-doc`
7+
* delete TIME_OPT option
8+
* refactoring
9+
110
SLIM (2.2.7) -- 2015/10/31
211
* new feature
312
+ library function str.times

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
SLIM - slim LMNtal imprementation
1+
SLIM - slim LMNtal imprementation {#mainpage}
22
===============================
33

44
バグ報告は lmntal@ueda.info.waseda.ac.jp までお願いします。

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.2.7
1+
2.3.0

aclocal.m4

Lines changed: 0 additions & 1303 deletions
This file was deleted.

configure.ac

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -3,27 +3,31 @@
33
# $Id: configure.ac,v 1.13 2008/10/05 11:22:41 riki Exp $
44

55
AC_PREREQ(2.61)
6-
AC_INIT([SLIM], [2.2.7], [lmntal@ueda.info.waseda.ac.jp], [slim])
6+
AC_INIT([SLIM], [2.3.0], [lmntal@ueda.info.waseda.ac.jp], [slim])
77
# AC_REVISION($Revision: 1.13 $)
88
# AC_COPYRIGHT (copyright-notice)
99
AC_CANONICAL_TARGET
1010
AC_CONFIG_SRCDIR([src/main.c])
1111
AC_CONFIG_HEADER([src/config.h])
1212
AC_CONFIG_MACRO_DIR([m4])
13-
AM_INIT_AUTOMAKE
13+
AM_INIT_AUTOMAKE([subdir-objects])
14+
AC_REQUIRE_AUX_FILE([tap-driver.sh])
1415

1516
TCMALLOC_SO_VERSION=2:2:2
1617
PROFILER_SO_VERSION=1:1:1
1718

1819
AC_SUBST(TCMALLOC_SO_VERSION)
1920
AC_SUBST(PROFILER_SO_VERSION)
2021

22+
DX_PDF_FEATURE(OFF)
23+
DX_PS_FEATURE(OFF)
24+
DX_INIT_DOXYGEN(SLIM, doc/doxygen.cfg, doc/doxygen)
2125

2226
# ----------------------------------------------------------------------
2327
# Checks for programs.
2428
#
2529

26-
CFLAGS="-O3 $CFLAGS"
30+
CFLAGS="-O $CFLAGS"
2731
CXXFLAGS="-g -O2 -mmmx -msse $CXXFLAGS"
2832

2933
AC_LANG(C)
@@ -36,6 +40,7 @@ AC_PROG_YACC
3640
AC_PROG_LEX
3741
AM_PROG_LEX
3842
AC_PROG_RANLIB
43+
AC_PROG_AWK
3944

4045
AC_SUBST(CFLAGS)
4146
AM_CONDITIONAL(GCC, test "$GCC" = "yes") # let the Makefile know if we're gcc
@@ -60,7 +65,6 @@ default_enable_devel=no
6065
default_enable_debug=no
6166
default_enable_gprof=no
6267
default_enable_profile=no
63-
default_enable_timeopt=yes
6468
default_enable_jni=no
6569
default_enable_tcmalloc=yes
6670
default_enable_minmax=no
@@ -100,12 +104,6 @@ AC_ARG_ENABLE([profile],
100104
[],
101105
[enable_profile="$default_enable_profile"])
102106

103-
AC_ARG_ENABLE([time_opt],
104-
[AS_HELP_STRING([--enable-time-opt],
105-
[turn on optimization for runtime performance (default yes)])],
106-
[],
107-
[enable_time_opt="$default_enable_timeopt"])
108-
109107
AC_ARG_ENABLE([jni],
110108
[AS_HELP_STRING([--enable-jni],
111109
[turn on using jni interactive mode (default no)])],
@@ -176,14 +174,6 @@ else
176174
AC_MSG_RESULT([enable profile: no])
177175
fi
178176

179-
# optimization for runtime performance
180-
if test "$enable_time_opt" = "no"; then
181-
AC_MSG_RESULT([enable time-opt: no])
182-
else
183-
AC_MSG_RESULT([enable time-opt: yes])
184-
AC_DEFINE([TIME_OPT], 1, [enable timeopt])
185-
fi
186-
187177
# jni
188178
if test "$enable_jni" = "yes"; then
189179
AC_MSG_RESULT([enable jni: yes])
@@ -250,7 +240,7 @@ AC_C_CHAR_UNSIGNED
250240
#AC_TYPE_INT32_T
251241
#AC_TYPE_INT64_T
252242
#AC_TYPE_INTMAX_T
253-
#AC_TYPE_INTPTR_T
243+
AC_TYPE_INTPTR_T
254244
AC_TYPE_LONG_DOUBLE
255245
# AC_TYPE_LONG_DOUBLE_WIDER
256246
# AC_TYPE_LONG_LONG_INT
@@ -262,11 +252,13 @@ AC_TYPE_LONG_DOUBLE
262252
#AC_TYPE_UINT32_T
263253
AC_TYPE_UINT64_T
264254
#AC_TYPE_UINTMAX_T
265-
# AC_TYPE_UINTPTR_T
255+
AC_TYPE_UINTPTR_T
266256
# AC_TYPE_UNSIGNED_LONG_LONG_INT
267257

268258
AC_CHECK_SIZEOF(long)
269259
AC_CHECK_SIZEOF(void*)
260+
AC_CHECK_SIZEOF(double)
261+
AC_CHECK_SIZEOF(uintptr_t)
270262

271263

272264
# ----------------------------------------------------------------------
@@ -890,13 +882,17 @@ echo $SLIM_VERSION > VERSION
890882
AC_OUTPUT(Makefile \
891883
src/Makefile \
892884
src/genconfig \
885+
src/element/Makefile \
886+
src/loader/Makefile \
893887
src/verifier/Makefile \
894-
src/utility/Makefile \
895888
src/test/Makefile \
889+
src/vm/Makefile \
890+
src/ffi/Makefile \
896891
lib/Makefile \
897892
ext/Makefile \
898893
test/Makefile \
899894
test/system_check/Makefile \
895+
test/statespace/Makefile \
900896
third_party/Makefile \
901897
third_party/zdelta-2.1/Makefile \
902898
third_party/google-perftools-1.8.3/Makefile \

doc/architecture.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Architecture of SLIM
2+
3+
SLIM is composed of several modules.
4+
Modules loosely depend on each other.
5+
6+
- *element*: contains fundamental data structures and functions.
7+
- *loader*: contains a parser and an il-C translator.
8+
- *verifier*: is an implementation of a model checker.
9+
- *vm*: is an implementation of LMNtal.
10+
- *ext*: contains extension callbacks for VM.
11+
- *ffi*: is an interface to access an LMNtal compiler or JNI(Java Native Interface).
12+
13+
**Figure 1: SLIM's Architecture**
14+
@image html slim_arch.svg

0 commit comments

Comments
 (0)