[buddy] Inline the "is bdd constant" check performed in copies/constructors.
This avoids a library call to bdd_addref or bdd_delref. * src/kernel.c (bdd_delref_nc, bdd_addref_nc): New function, that work only on BDD that are not constant. * src/cpext.cxx (bdd::operator=): Move... * src/bdd.hh (bdd::operator=): ... here. (bdd::bdd, bdd::~bdd, bdd::operator=): Inline the "is bdd constant" check and call bdd_delref_nc/bdd_addref_nc only otherwise.
This commit is contained in:
parent
2b58fb90c4
commit
1d1872ab90
4 changed files with 104 additions and 59 deletions
|
|
@ -1,3 +1,16 @@
|
|||
2011-04-30 Alexandre Duret-Lutz <adl@lrde.epita.fr>
|
||||
|
||||
Inline the "is bdd constant" check performed in copies/constructors.
|
||||
|
||||
This avoids a library call to bdd_addref or bdd_delref.
|
||||
|
||||
* src/kernel.c (bdd_delref_nc, bdd_addref_nc): New function,
|
||||
that work only on BDD that are not constant.
|
||||
* src/cpext.cxx (bdd::operator=): Move...
|
||||
* src/bdd.hh (bdd::operator=): ... here.
|
||||
(bdd::bdd, bdd::~bdd, bdd::operator=): Inline the "is bdd constant"
|
||||
check and call bdd_delref_nc/bdd_addref_nc only otherwise.
|
||||
|
||||
2011-04-30 Alexandre Duret-Lutz <adl@lrde.epita.fr>
|
||||
|
||||
Hint gcc about likely/unlikely branches.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue