Commit graph

13 commits

Author SHA1 Message Date
Alexandre Duret-Lutz
2b58fb90c4 [buddy] Hint gcc about likely/unlikely branches.
* src/bdd.h (__likely, __unlikely): Introduce these two macros.
* src/bddop.c, src/kerner.c: Use them in many situations.
2011-04-30 13:30:13 +02:00
Alexandre Duret-Lutz
4034b7f87f [buddy]
* src/bddop.c (bdd_setxor): New function.
* src/bdd.h (bdd_setxor): New function.
2010-11-07 11:15:45 +01:00
Alexandre Duret-Lutz
253ee35030 [buddy]
Introduce bdd_satprefix, to speedup spot::minato().

* src/bdd.h (bdd_satprefix): New function.
* src/bddop.c (bdd_satprefix, bdd_sat_prefixrec): New functions.
2009-11-23 21:40:26 +01:00
Alexandre Duret-Lutz
ada681d813 [buddy] Fix some issues reported by LLVM/Clang's static analyser. 2009-09-08 11:05:45 +02:00
Alexandre Duret-Lutz
7aecf4ad09 * src/bddop.c (bdd_support): Free supportSet if it needs to be
reallocated.  This fixes a memory leak reported by
Souheib.Baarir@lip6.fr.
2004-01-07 16:05:21 +00:00
Alexandre Duret-Lutz
2cea6446b1 * src/bddop.c (bdd_forallcomp, bdd_uniquecomp): Fix documentation. 2003-08-06 14:14:16 +00:00
Alexandre Duret-Lutz
4bf6c52bea * rsc/bdd.h (bdd_existcomp, bdd_forallcomp,
bdd_uniquecomp, bdd_appexcomp, bdd_appallcomp,
bdd_appunicomp): Declare for C and C++.
* src/bddop.c (CACHEID_EXISTC, CACHEID_FORALLC,
CACHEID_UNIQUEC, CACHEID_APPEXC, CACHEID_APPALC,
CACHEID_APPUNCC): New macros.
(quatvarsetcomp): New variables.
(varset2vartable): Take a second argument to indicate negation,
set quatvarsetcomp.
(INVARSET): Honor quatvarsetcomp.
(quantify): New function, extracted from bdd_exist, bdd_forall,
and bdd_appunicomp.
(bdd_exist, bdd_forall, bdd_appunicomp): Use quantify.
(bdd_existcomp, bdd_forallcomp, bdd_appunicompcomp): New functions.
(appquantify): New function, extracted from bdd_appex, bdd_appall,
and bdd_appuni.
(bdd_appex, bdd_appall, bdd_appuni): Use appquantify.
(bdd_appexcomp, bdd_appallcomp, bdd_appunicomp): New functions.

* src/bddop.c (bdd_support): Return bddtrue when the support
is empty, because variable sets are conjunctions.
2003-07-17 14:09:03 +00:00
Alexandre Duret-Lutz
039412ea35 * src/bddop.c (bdd_simplify): Typo in doc, s/domaine/domain/. 2003-05-22 12:09:20 +00:00
Alexandre Duret-Lutz
42782f3a83 * src/pairs.c (bdd_setbddpair): Fix prototype in documentation. 2003-05-20 08:22:35 +00:00
Alexandre Duret-Lutz
7fdc763c1f * src/bddop.c (bdd_allsat): Fix description. 2003-05-07 12:36:54 +00:00
Alexandre Duret-Lutz
2a1479c4ea * src/bddop.c (bdd_allsat): Fix description. 2003-05-07 12:23:19 +00:00
Alexandre Duret-Lutz
605dce2aac * configure.ac, Makefile.am, src/Makefile.am, doc/Makefile.am,
examples/Makefile.am, examples/Makefile.def,
examples/adder/Makefile.am, examples/calculator/Makefile.am,
examples/cmilner/Makefile.am, examples/fdd/Makefile.am,
examples/internal/Makefile.am, examples/milner/Makefile.am,
examples/money/Makefile.am, examples/queen/Makefile.am,
examples/solitar/Makefile.am, m4/debug.m4, m4/gccwarns.m4,
ChangeLog, INSTALL: New files.
* config, makefile, src/makefile, doc/makefile,
examples/adder/makefile, examples/calculator/makefile
examples/cmilner/makefile, examples/fdd/makefile,
examples/internal/makefile, examples/milner/makefile,
examples/money/makefile, examples/queen/makefile,
examples/solitare/makefile : Delete.
* examples/adder/adder.cxx, examples/fdd/statespace.cxx,
examples/internal/bddtest.cxx, examples/milner/milner.cxx,
examples/money/money.cxx, examples/queen/queen.cxx,
examples/solitare/solitare.cxx: Include iostream.
* examples/calculator/parser.y: Rename as ...
* examples/calculator/parser.yxx: ... this.  Remove spurious
comas in %token, %right, and %left arguments.
* examples/calculator/parser.h: Rename as ...
* examples/calculator/parser_.h: ... this, because the bison
rule with output parser.h (not tokens.h) from parser.y.
* examples/calculator/lexer.l: Rename as ...
* examples/calculator/lexer.lxx: ... this.  Include parser.h
instead of tokens.h.
* examples/calculator/slist.h
(voidSList::voisSListElem, SList::ite): Fix friend usage.
* src/kernel.h (DEFAULT_CLOCK): Default to 60 if not already
defined.
* README: Update build instruction, and file listing.
2003-05-05 13:44:49 +00:00
Alexandre Duret-Lutz
cf5dd46350 Initial revision 2003-05-05 10:57:53 +00:00