1. 24 Jul, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      [buddy] use powers of two for the sizes of all hash tables · 361b44e5
      Alexandre Duret-Lutz authored
      * src/bddop.c, src/bddx.h, src/cache.c, src/cache.h, src/kernel.c,
      src/kernel.h, src/prime.c, src/prime.h, src/reorder.c: Use power of
      two for the sizes of all hash tables, in order to reduce the amount of
      divisions performed.  Also allow bddhash to be smaller than bddnodes.
      361b44e5
  2. 31 Mar, 2017 1 commit
  3. 30 Mar, 2017 1 commit
  4. 01 Feb, 2017 1 commit
    • Alexandre Duret-Lutz's avatar
      [buddy] fix some -Wpedantic messages · a2f174f7
      Alexandre Duret-Lutz authored
      * src/bddop.c: Empty macro arguments are undefined ISO C90 and
      ISO C++98.  Use '+' when calling APPLY_SHORTCUTS.
      * src/fdd.c, src/kernel.c: Avoid constructs invalid in C90.
      * src/bddop.c, src/bddx.h, src/kernel.c, src/kernel.h,
      examples/cmilner/cmilner.c: Remove C++ comments.
      a2f174f7
  5. 19 Nov, 2016 1 commit
  6. 08 Nov, 2016 1 commit
  7. 28 Oct, 2016 1 commit
  8. 19 Oct, 2016 1 commit
  9. 11 Mar, 2015 1 commit
  10. 19 Jun, 2012 1 commit
    • Alexandre Duret-Lutz's avatar
      [buddy] Reduce the size of bddNode to improve cache efficiency. · e7a46e10
      Alexandre Duret-Lutz authored
      The unicity table was mixed with the bddNode table for now
      apparent reason.  After the hash of some node is computed,
      bddnodes[hash] did only contain some random node (not the one
      looked for) whose .hash member would point to the actual node with
      this hash.  So that's a two step lookup.  With this patch, we sill
      have a two step lookup, but the .hash member have been moved to a
      separate array.  A consequence is that bddNode is now 16-byte long
      (instead of 20) so it will never span across two cache lines.
      
      * src/kernel.h (bddNode): Remove the hash member, and move it...
      (bddhash): ... as this new separate table.
      * src/kernel.c, src/reorder.c: Adjust all code.
      e7a46e10
  11. 30 Apr, 2011 2 commits
  12. 10 Apr, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      [buddy] · e5f35dea
      Alexandre Duret-Lutz authored
      Fix some warnings reported by gcc.
      
      * buddy/src/kernel.c (errorstrings): Mark these as const.
      * buddy/src/reorder.c (reorder_gbc): Fix prototype.
      (siftTestCmp): Add missing const in cast.
      (bdd_reorder_auto): Actually call bdd_reorder_ready().
      e5f35dea
  13. 04 Apr, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      [buddy] · 61d9e721
      Alexandre Duret-Lutz authored
      Remove more sanity checks when NDEBUG is set.
      
      * src/kernel.h (CHECKnc): New macro.
      * src/kernel.c (bdd_var, bdd_low, bdd_high, bdd_ithvar,
      bdd_nithvar): Use it.
      61d9e721
  14. 03 Apr, 2011 1 commit
    • Alexandre Duret-Lutz's avatar
      [buddy] · 197019ea
      Alexandre Duret-Lutz authored
      * buddy/src/kernel.c (bdd_addref, bdd_delref): Disable sanity
      checks when compiled with NDEBUG.
      197019ea
  15. 22 Jan, 2010 1 commit
  16. 09 Dec, 2009 1 commit
    • Alexandre Duret-Lutz's avatar
      [buddy] · d462f50b
      Alexandre Duret-Lutz authored
      Inline bdd_addref() and bdd_delref() to speedup BDD operations.
      
      * src/kernel.c, src/kernel.h (bdd_addref, bdd_delref): Move these
      functions and there associated global variables...
      * src/bdd.c (bdd_error): ... and this function ...
      * src/bdd.h (bdd_addref, bdd_delref, bdd_error): ...here so that
      they can be inlined.
      d462f50b
  17. 25 Feb, 2008 1 commit
  18. 22 May, 2003 1 commit
  19. 20 May, 2003 1 commit
  20. 12 May, 2003 1 commit
  21. 05 May, 2003 2 commits
    • Alexandre Duret-Lutz's avatar
      * configure.ac, Makefile.am, src/Makefile.am, doc/Makefile.am, · 605dce2a
      Alexandre Duret-Lutz authored
      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.
      605dce2a
    • Alexandre Duret-Lutz's avatar
      Initial revision · cf5dd463
      Alexandre Duret-Lutz authored
      cf5dd463