This commit was manufactured by cvs2svn to create branch 'ASIM-LIP6-UPMC'.

Sprout from master 2002-09-18 18:57:43 UTC Pierre Nguyen Tuong <alliance-cvs@asim.lip6.fr> 'Mode d'emploi pour ceux qui veulent recompiler Alliance sur IRIX.'
Delete:
    CVSROOT/checkoutlist
    CVSROOT/commitinfo
    CVSROOT/cvsignore
    CVSROOT/cvswrappers
    CVSROOT/editinfo
    CVSROOT/fastinstool
    CVSROOT/instool
    CVSROOT/loginfo
    CVSROOT/modules
    CVSROOT/notify
    CVSROOT/postconfig
    CVSROOT/posttaginfo
    CVSROOT/rcsinfo
    CVSROOT/setperms
    CVSROOT/taginfo
    CVSROOT/updatelibmk
    alliance/CHANGES
    alliance/COPYING-2.0
    alliance/COPYING.LIB-2.0
    alliance/FAQ
    alliance/LICENCE
    alliance/README
    alliance/README.win32
    alliance/src/.asim
    alliance/src/Makefile.am
    alliance/src/abe/Makefile.am
    alliance/src/abe/configure.in
    alliance/src/abe/src/Makefile.am
    alliance/src/abe/src/abe.h
    alliance/src/abe/src/beh_add.c
    alliance/src/abe/src/beh_del.c
    alliance/src/abe/src/beh_dict.c
    alliance/src/abe/src/beh_error.c
    alliance/src/abe/src/beh_fre.c
    alliance/src/abe/src/beh_getgenva.c
    alliance/src/abe/src/beh_message.c
    alliance/src/abe/src/beh_rmv.c
    alliance/src/abe/src/beh_toolbug.c
    alliance/src/abe/src/beh_view.c
    alliance/src/abe/src/main.c
    alliance/src/abl/Makefile.am
    alliance/src/abl/configure.in
    alliance/src/abl/man1/Makefile.am
    alliance/src/abl/man1/abl.1
    alliance/src/abl/man3/Makefile.am
    alliance/src/abl/man3/addablhexpr.3
    alliance/src/abl/man3/addablqexpr.3
    alliance/src/abl/man3/createablatom.3
    alliance/src/abl/man3/createablbinexpr.3
    alliance/src/abl/man3/createablnotexpr.3
    alliance/src/abl/man3/createabloper.3
    alliance/src/abl/man3/createablunaryexpr.3
    alliance/src/abl/man3/createablxorbinexpr.3
    alliance/src/abl/man3/delablexpr.3
    alliance/src/abl/man3/delablexprnum.3
    alliance/src/abl/man3/devablxorexpr.3
    alliance/src/abl/man3/devdupablxorexpr.3
    alliance/src/abl/man3/dupablexpr.3
    alliance/src/abl/man3/flatablexpr.3
    alliance/src/abl/man3/freeablexpr.3
    alliance/src/abl/man3/getablexprdepth.3
    alliance/src/abl/man3/getablexprlength.3
    alliance/src/abl/man3/getablexprmax.3
    alliance/src/abl/man3/getablexprmin.3
    alliance/src/abl/man3/getablexprnum.3
    alliance/src/abl/man3/getablexprnumatom.3
    alliance/src/abl/man3/getablexprnumbinoper.3
    alliance/src/abl/man3/getablexprnumocc.3
    alliance/src/abl/man3/getablexprsupport.3
    alliance/src/abl/man3/isablbinaryoper.3
    alliance/src/abl/man3/isablequalexpr.3
    alliance/src/abl/man3/isablnameinexpr.3
    alliance/src/abl/man3/isabloperinexpr.3
    alliance/src/abl/man3/isablsimilarexpr.3
    alliance/src/abl/man3/isablunaryoper.3
    alliance/src/abl/man3/mapablanyexpr.3
    alliance/src/abl/man3/mapableveryexpr.3
    alliance/src/abl/man3/mapablexpr.3
    alliance/src/abl/man3/mapabloperexpr.3
    alliance/src/abl/man3/polarablexpr.3
    alliance/src/abl/man3/polardupablexpr.3
    alliance/src/abl/man3/simpablexpr.3
    alliance/src/abl/man3/simpdupablexpr.3
    alliance/src/abl/man3/substablexpr.3
    alliance/src/abl/man3/substdupablexpr.3
    alliance/src/abl/man3/unflatablexpr.3
    alliance/src/abl/man3/vhdlablname.3
    alliance/src/abl/man3/vhdlablvector.3
    alliance/src/abl/man3/viewablexpr.3
    alliance/src/abl/man3/viewablexprfile.3
    alliance/src/abl/man3/viewablexprstr.3
    alliance/src/abl/src/Makefile.am
    alliance/src/abl/src/abl.h
    alliance/src/abl/src/abladd.c
    alliance/src/abl/src/abladd.h
    alliance/src/abl/src/ablcreate.c
    alliance/src/abl/src/ablcreate.h
    alliance/src/abl/src/ablctlnorm.c
    alliance/src/abl/src/ablctlnorm.h
    alliance/src/abl/src/ablctlsimp.c
    alliance/src/abl/src/ablctlsimp.h
    alliance/src/abl/src/abldel.c
    alliance/src/abl/src/abldel.h
    alliance/src/abl/src/abldev.c
    alliance/src/abl/src/abldev.h
    alliance/src/abl/src/abldup.c
    alliance/src/abl/src/abldup.h
    alliance/src/abl/src/ablenv.c
    alliance/src/abl/src/ablenv.h
    alliance/src/abl/src/ablerror.c
    alliance/src/abl/src/ablerror.h
    alliance/src/abl/src/ablflat.c
    alliance/src/abl/src/ablflat.h
    alliance/src/abl/src/ablfree.c
    alliance/src/abl/src/ablfree.h
    alliance/src/abl/src/ablget.c
    alliance/src/abl/src/ablget.h
    alliance/src/abl/src/ablis.c
    alliance/src/abl/src/ablis.h
    alliance/src/abl/src/ablmap.c
    alliance/src/abl/src/ablmap.h
    alliance/src/abl/src/abloptim.c
    alliance/src/abl/src/abloptim.h
    alliance/src/abl/src/ablpolar.c
    alliance/src/abl/src/ablpolar.h
    alliance/src/abl/src/ablsimp.c
    alliance/src/abl/src/ablsimp.h
    alliance/src/abl/src/ablstr.c
    alliance/src/abl/src/ablstr.h
    alliance/src/abl/src/ablsubst.c
    alliance/src/abl/src/ablsubst.h
    alliance/src/abl/src/ablunflat.c
    alliance/src/abl/src/ablunflat.h
    alliance/src/abl/src/ablvhdl.c
    alliance/src/abl/src/ablvhdl.h
    alliance/src/abl/src/ablview.c
    alliance/src/abl/src/ablview.h
    alliance/src/abl/src/main.c
    alliance/src/abt/Makefile.am
    alliance/src/abt/configure.in
    alliance/src/abt/src/Makefile.am
    alliance/src/abt/src/abt.h
    alliance/src/abt/src/bhl_delaux.c
    alliance/src/abt/src/bhl_delaux.h
    alliance/src/abt/src/bhl_depend.c
    alliance/src/abt/src/bhl_error.c
    alliance/src/abt/src/bhl_error.h
    alliance/src/abt/src/bhl_freabl.c
    alliance/src/abt/src/bhl_makbdd.c
    alliance/src/abt/src/bhl_makbdd.h
    alliance/src/abt/src/bhl_makgex.c
    alliance/src/abt/src/bhl_orderbdd.c
    alliance/src/abt/src/bhl_orderbdd.h
    alliance/src/abv/Makefile.am
    alliance/src/abv/configure.in
    alliance/src/abv/src/Makefile.am
    alliance/src/abv/src/abv.h
    alliance/src/abv/src/bvl_bcomp_l.l
    alliance/src/abv/src/bvl_bcomp_y.y
    alliance/src/abv/src/bvl_bedef.h
    alliance/src/abv/src/bvl_blex.h
    alliance/src/abv/src/bvl_bspec.c
    alliance/src/abv/src/bvl_bspec.h
    alliance/src/abv/src/bvl_byacc.h
    alliance/src/abv/src/bvl_drive.c
    alliance/src/abv/src/bvl_drive.h
    alliance/src/abv/src/bvl_parse.c
    alliance/src/abv/src/bvl_parse.h
    alliance/src/abv/src/bvl_utdef.h
    alliance/src/abv/src/bvl_util.c
    alliance/src/abv/src/bvl_util.h
    alliance/src/abv/src/bvl_utype.h
    alliance/src/abv/src/main.c
    alliance/src/alcban/Makefile.am
    alliance/src/alcban/configure.in
    alliance/src/alcban/man1/Makefile.am
    alliance/src/alcban/man1/alcbanner.1
    alliance/src/alcban/src/Makefile.am
    alliance/src/alcban/src/alcbanner.c
    alliance/src/alliance.m4
    alliance/src/asimut/Makefile.am
    alliance/src/asimut/configure.in
    alliance/src/asimut/man1/Makefile.am
    alliance/src/asimut/man1/asimut.1
    alliance/src/asimut/src/Makefile.am
    alliance/src/asimut/src/beh_delay.h
    alliance/src/asimut/src/beh_setdelay.c
    alliance/src/asimut/src/c_fsyn_sr1k_1.c
    alliance/src/asimut/src/c_fsyn_sr1k_10.c
    alliance/src/asimut/src/c_fsyn_sr1k_24.c
    alliance/src/asimut/src/c_fsyn_sr1k_4.c
    alliance/src/asimut/src/c_fsyn_sr1k_56.c
    alliance/src/asimut/src/c_fsyn_sr4k_10.c
    alliance/src/asimut/src/c_hada_repondeur.c
    alliance/src/asimut/src/c_sr1k_8a.c
    alliance/src/asimut/src/c_sr1k_8b.c
    alliance/src/asimut/src/c_sr8k_8a.c
    alliance/src/asimut/src/cst.h
    alliance/src/asimut/src/cst_AddSetElt.c
    alliance/src/asimut/src/cst_CrtCompSet.c
    alliance/src/asimut/src/cst_CrtInterSet.c
    alliance/src/asimut/src/cst_CrtUnionSet.c
    alliance/src/asimut/src/cst_DisjunctSet.c
    alliance/src/asimut/src/cst_GetFirstElt.c
    alliance/src/asimut/src/cst_GetLastElt.c
    alliance/src/asimut/src/cst_GetNextElt.c
    alliance/src/asimut/src/cst_GetPrevElt.c
    alliance/src/asimut/src/cst_IsInSetElt.c
    alliance/src/asimut/src/cst_RemSetElt.c
    alliance/src/asimut/src/cst_SetCmp.c
    alliance/src/asimut/src/cst_error.c
    alliance/src/asimut/src/cst_globals.c
    alliance/src/asimut/src/sch.h
    alliance/src/asimut/src/sch_AddTra.c
    alliance/src/asimut/src/sch_CrtSch.c
    alliance/src/asimut/src/sch_Free.c
    alliance/src/asimut/src/sch_GetCTim.c
    alliance/src/asimut/src/sch_GetCTra.c
    alliance/src/asimut/src/sch_GetNTim.c
    alliance/src/asimut/src/sch_GoNTim.c
    alliance/src/asimut/src/sch_SetCTim.c
    alliance/src/asimut/src/sch_addshent.c
    alliance/src/asimut/src/sch_addshtra.c
    alliance/src/asimut/src/sch_addshwav.c
    alliance/src/asimut/src/sch_bug.c
    alliance/src/asimut/src/sch_debug.c
    alliance/src/asimut/src/sch_debug.h
    alliance/src/asimut/src/sch_error.c
    alliance/src/asimut/src/sch_globals.c
    alliance/src/asimut/src/sch_hash.c
    alliance/src/asimut/src/sch_insentry.c
    alliance/src/asimut/src/sch_inswave.c
    alliance/src/asimut/src/sch_message.c
    alliance/src/asimut/src/sch_rmventry.c
    alliance/src/asimut/src/vh_debug.c
    alliance/src/asimut/src/vh_debug.h
    alliance/src/asimut/src/vh_dtype.h
    alliance/src/asimut/src/vh_globals.c
    alliance/src/asimut/src/vh_globals.h
    alliance/src/asimut/src/vh_init.c
    alliance/src/asimut/src/vh_lspec.c
    alliance/src/asimut/src/vh_lspec.h
    alliance/src/asimut/src/vh_ltype.h
    alliance/src/asimut/src/vh_simulad.c
    alliance/src/asimut/src/vh_simulad.h
    alliance/src/asimut/src/vh_util.c
    alliance/src/asimut/src/vh_util.h
    alliance/src/asimut/src/vh_xcomm.c
    alliance/src/asimut/src/vh_xcomm.h
    alliance/src/asimut/src/vh_xspec.c
    alliance/src/asimut/src/vh_xspec.h
    alliance/src/aut/Makefile.am
    alliance/src/aut/configure.in
    alliance/src/aut/man1/Makefile.am
    alliance/src/aut/man1/aut.1
    alliance/src/aut/man3/Makefile.am
    alliance/src/aut/man3/autallocblock.3
    alliance/src/aut/man3/autallocheap.3
    alliance/src/aut/man3/autfreeblock.3
    alliance/src/aut/man3/autfreeheap.3
    alliance/src/aut/man3/auth2elem.3
    alliance/src/aut/man3/auth2table.3
    alliance/src/aut/man3/authelem.3
    alliance/src/aut/man3/authtable.3
    alliance/src/aut/man3/autresizeblock.3
    alliance/src/aut/src/Makefile.am
    alliance/src/aut/src/aut.h
    alliance/src/aut/src/autalloc.c
    alliance/src/aut/src/autalloc.h
    alliance/src/aut/src/autdebug.c
    alliance/src/aut/src/autdebug.h
    alliance/src/aut/src/autenv.c
    alliance/src/aut/src/autenv.h
    alliance/src/aut/src/auterror.c
    alliance/src/aut/src/auterror.h
    alliance/src/aut/src/autexit.c
    alliance/src/aut/src/autexit.h
    alliance/src/aut/src/autfree.c
    alliance/src/aut/src/autfree.h
    alliance/src/aut/src/autgraph.c
    alliance/src/aut/src/autgraph.h
    alliance/src/aut/src/authash.c
    alliance/src/aut/src/authash.h
    alliance/src/aut/src/authash2.c
    alliance/src/aut/src/authash2.h
    alliance/src/aut/src/autname.c
    alliance/src/aut/src/autname.h
    alliance/src/aut/src/autresize.c
    alliance/src/aut/src/autresize.h
    alliance/src/aut/src/autsort.c
    alliance/src/aut/src/autsort.h
    alliance/src/aut/src/auttest.c
    alliance/src/aut/src/auttest.h
    alliance/src/aut/src/main.c
    alliance/src/aut/src/testhash.c
    alliance/src/autostuff
    alliance/src/b2f/Makefile.am
    alliance/src/b2f/configure.in
    alliance/src/b2f/src/Makefile.am
    alliance/src/b2f/src/b2f_beh2fsm.c
    alliance/src/b2f/src/b2f_beh2fsm.h
    alliance/src/b2f/src/b2f_error.c
    alliance/src/b2f/src/b2f_error.h
    alliance/src/b2f/src/b2f_main.c
    alliance/src/b2f/src/b2f_main.h
    alliance/src/bdd/Makefile.am
    alliance/src/bdd/configure.in
    alliance/src/bdd/man1/Makefile.am
    alliance/src/bdd/man1/bdd.1
    alliance/src/bdd/man3/Makefile.am
    alliance/src/bdd/man3/addbddassoc.3
    alliance/src/bdd/man3/addbddcircuitabl.3
    alliance/src/bdd/man3/addbddcircuitin.3
    alliance/src/bdd/man3/addbddcircuitout.3
    alliance/src/bdd/man3/addbddnode.3
    alliance/src/bdd/man3/addbddnodeassoc.3
    alliance/src/bdd/man3/addbddnodelist.3
    alliance/src/bdd/man3/addbddvar.3
    alliance/src/bdd/man3/addbddvarafter.3
    alliance/src/bdd/man3/addbddvarbefore.3
    alliance/src/bdd/man3/addbddvarfirst.3
    alliance/src/bdd/man3/addbddvarlast.3
    alliance/src/bdd/man3/applybddnode.3
    alliance/src/bdd/man3/applybddnodeite.3
    alliance/src/bdd/man3/applybddnodelist.3
    alliance/src/bdd/man3/applybddnodenot.3
    alliance/src/bdd/man3/applybddnodeterm.3
    alliance/src/bdd/man3/clearbddsystemref.3
    alliance/src/bdd/man3/clearbddsystemrefext.3
    alliance/src/bdd/man3/clearbddsystemrefint.3
    alliance/src/bdd/man3/cofactorbddnode.3
    alliance/src/bdd/man3/composebddnode.3
    alliance/src/bdd/man3/convertbddcircuitabl.3
    alliance/src/bdd/man3/convertbddcircuitsumabl.3
    alliance/src/bdd/man3/convertbddindexabl.3
    alliance/src/bdd/man3/convertbddmuxabl.3
    alliance/src/bdd/man3/convertbddnodeabl.3
    alliance/src/bdd/man3/convertbddnodesumabl.3
    alliance/src/bdd/man3/createbddcircuit.3
    alliance/src/bdd/man3/createbddsystem.3
    alliance/src/bdd/man3/decbddrefext.3
    alliance/src/bdd/man3/decbddrefint.3
    alliance/src/bdd/man3/delbddassoc.3
    alliance/src/bdd/man3/delbddcircuitout.3
    alliance/src/bdd/man3/delbddnode.3
    alliance/src/bdd/man3/delbddnodeassoc.3
    alliance/src/bdd/man3/delbddnodelist.3
    alliance/src/bdd/man3/destroybddassoc.3
    alliance/src/bdd/man3/destroybddcircuit.3
    alliance/src/bdd/man3/destroybddsystem.3
    alliance/src/bdd/man3/existbddnodeassocoff.3
    alliance/src/bdd/man3/existbddnodeassocon.3
    alliance/src/bdd/man3/garbagebddsystem.3
    alliance/src/bdd/man3/getbddnodenum.3
    alliance/src/bdd/man3/getbddnodesize.3
    alliance/src/bdd/man3/getbddnodesupport.3
    alliance/src/bdd/man3/getbddvarbyindex.3
    alliance/src/bdd/man3/getbddvarindex.3
    alliance/src/bdd/man3/getbddvarnode.3
    alliance/src/bdd/man3/getbddvarnodebyindex.3
    alliance/src/bdd/man3/implybddnode.3
    alliance/src/bdd/man3/incbddrefext.3
    alliance/src/bdd/man3/incbddrefint.3
    alliance/src/bdd/man3/intersectbddnode.3
    alliance/src/bdd/man3/isbddvarinsupport.3
    alliance/src/bdd/man3/markbddnode.3
    alliance/src/bdd/man3/relprodbddnodeassoc.3
    alliance/src/bdd/man3/reorderbddsystemdynamic.3
    alliance/src/bdd/man3/reorderbddsystemsimple.3
    alliance/src/bdd/man3/reorderbddsystemtop.3
    alliance/src/bdd/man3/reorderbddsystemwindow.3
    alliance/src/bdd/man3/resetbddcircuit.3
    alliance/src/bdd/man3/resetbddsystem.3
    alliance/src/bdd/man3/restrictbddnode.3
    alliance/src/bdd/man3/satisfybddnode.3
    alliance/src/bdd/man3/searchbddcircuitin.3
    alliance/src/bdd/man3/searchbddcircuitout.3
    alliance/src/bdd/man3/setbddrefext.3
    alliance/src/bdd/man3/simpbddnodedcoff.3
    alliance/src/bdd/man3/simpbddnodedcon.3
    alliance/src/bdd/man3/substbddnodeassoc.3
    alliance/src/bdd/man3/swapbddvar.3
    alliance/src/bdd/man3/testbddcircuit.3
    alliance/src/bdd/man3/unmarkbddnode.3
    alliance/src/bdd/man3/unsetbddrefext.3
    alliance/src/bdd/man3/viewbddcircuit.3
    alliance/src/bdd/man3/viewbddnode.3
    alliance/src/bdd/man3/viewbddsystem.3
    alliance/src/bdd/man3/viewbddsysteminfo.3
    alliance/src/bdd/src/Makefile.am
    alliance/src/bdd/src/bdd.h
    alliance/src/bdd/src/bddalloc.c
    alliance/src/bdd/src/bddalloc.h
    alliance/src/bdd/src/bddapply.c
    alliance/src/bdd/src/bddapply.h
    alliance/src/bdd/src/bddassoc.c
    alliance/src/bdd/src/bddassoc.h
    alliance/src/bdd/src/bddblock.c
    alliance/src/bdd/src/bddblock.h
    alliance/src/bdd/src/bddcheck.c
    alliance/src/bdd/src/bddcheck.h
    alliance/src/bdd/src/bddcircuit.c
    alliance/src/bdd/src/bddcircuit.h
    alliance/src/bdd/src/bddcofactor.c
    alliance/src/bdd/src/bddcofactor.h
    alliance/src/bdd/src/bddcompose.c
    alliance/src/bdd/src/bddcompose.h
    alliance/src/bdd/src/bddconvert.c
    alliance/src/bdd/src/bddconvert.h
    alliance/src/bdd/src/bdddump.c
    alliance/src/bdd/src/bdddump.h
    alliance/src/bdd/src/bddenv.c
    alliance/src/bdd/src/bddenv.h
    alliance/src/bdd/src/bdderror.c
    alliance/src/bdd/src/bdderror.h
    alliance/src/bdd/src/bddexist.c
    alliance/src/bdd/src/bddexist.h
    alliance/src/bdd/src/bddexplosion.c
    alliance/src/bdd/src/bddexplosion.h
    alliance/src/bdd/src/bddflag.c
    alliance/src/bdd/src/bddflag.h
    alliance/src/bdd/src/bddfraction.c
    alliance/src/bdd/src/bddfraction.h
    alliance/src/bdd/src/bddfree.c
    alliance/src/bdd/src/bddfree.h
    alliance/src/bdd/src/bddgarbage.c
    alliance/src/bdd/src/bddgarbage.h
    alliance/src/bdd/src/bddheath.c
    alliance/src/bdd/src/bddheath.h
    alliance/src/bdd/src/bddhnode.c
    alliance/src/bdd/src/bddhnode.h
    alliance/src/bdd/src/bddhoper.c
    alliance/src/bdd/src/bddhoper.h
    alliance/src/bdd/src/bddimply.c
    alliance/src/bdd/src/bddimply.h
    alliance/src/bdd/src/bddlog.c
    alliance/src/bdd/src/bddlog.h
    alliance/src/bdd/src/bddmark.c
    alliance/src/bdd/src/bddmark.h
    alliance/src/bdd/src/bddnode.c
    alliance/src/bdd/src/bddnode.h
    alliance/src/bdd/src/bddoptimize.c
    alliance/src/bdd/src/bddoptimize.h
    alliance/src/bdd/src/bddreduce.c
    alliance/src/bdd/src/bddreduce.h
    alliance/src/bdd/src/bddref.c
    alliance/src/bdd/src/bddref.h
    alliance/src/bdd/src/bddrelprod.c
    alliance/src/bdd/src/bddrelprod.h
    alliance/src/bdd/src/bddreorder.c
    alliance/src/bdd/src/bddreorder.h
    alliance/src/bdd/src/bddresize.c
    alliance/src/bdd/src/bddresize.h
    alliance/src/bdd/src/bddsatisfy.c
    alliance/src/bdd/src/bddsatisfy.h
    alliance/src/bdd/src/bddsimpdc.c
    alliance/src/bdd/src/bddsimpdc.h
    alliance/src/bdd/src/bddsubst.c
    alliance/src/bdd/src/bddsubst.h
    alliance/src/bdd/src/bddsupport.c
    alliance/src/bdd/src/bddsupport.h
    alliance/src/bdd/src/bddsweep.c
    alliance/src/bdd/src/bddsweep.h
    alliance/src/bdd/src/bddsystem.c
    alliance/src/bdd/src/bddsystem.h
    alliance/src/bdd/src/bddtest.c
    alliance/src/bdd/src/bddtest.h
    alliance/src/bdd/src/bddtransfert.c
    alliance/src/bdd/src/bddtransfert.h
    alliance/src/bdd/src/bdduser.c
    alliance/src/bdd/src/bdduser.h
    alliance/src/bdd/src/bddvar.c
    alliance/src/bdd/src/bddvar.h
    alliance/src/bdd/src/bddvaraux.c
    alliance/src/bdd/src/bddvaraux.h
    alliance/src/bdd/src/main.c
    alliance/src/beh/Makefile.am
    alliance/src/beh/configure.in
    alliance/src/beh/man3/Makefile.am
    alliance/src/beh/man3/beh.3
    alliance/src/beh/man3/beh_addbeaux.3
    alliance/src/beh/man3/beh_addbebus.3
    alliance/src/beh/man3/beh_addbebux.3
    alliance/src/beh/man3/beh_addbefig.3
    alliance/src/beh/man3/beh_addbegen.3
    alliance/src/beh/man3/beh_addbemsg.3
    alliance/src/beh/man3/beh_addbeout.3
    alliance/src/beh/man3/beh_addbepor.3
    alliance/src/beh/man3/beh_addbereg.3
    alliance/src/beh/man3/beh_addberin.3
    alliance/src/beh/man3/beh_addbiabl.3
    alliance/src/beh/man3/beh_addbinod.3
    alliance/src/beh/man3/beh_debug.3
    alliance/src/beh/man3/beh_delbeaux.3
    alliance/src/beh/man3/beh_delbebus.3
    alliance/src/beh/man3/beh_delbebux.3
    alliance/src/beh/man3/beh_delbefig.3
    alliance/src/beh/man3/beh_delbegen.3
    alliance/src/beh/man3/beh_delbemsg.3
    alliance/src/beh/man3/beh_delbeout.3
    alliance/src/beh/man3/beh_delbepor.3
    alliance/src/beh/man3/beh_delbereg.3
    alliance/src/beh/man3/beh_delberin.3
    alliance/src/beh/man3/beh_delbiabl.3
    alliance/src/beh/man3/beh_delbinod.3
    alliance/src/beh/man3/beh_depend.3
    alliance/src/beh/man3/beh_error.3
    alliance/src/beh/man3/beh_frebeaux.3
    alliance/src/beh/man3/beh_frebebus.3
    alliance/src/beh/man3/beh_frebebux.3
    alliance/src/beh/man3/beh_frebefig.3
    alliance/src/beh/man3/beh_frebegen.3
    alliance/src/beh/man3/beh_frebemsg.3
    alliance/src/beh/man3/beh_frebeout.3
    alliance/src/beh/man3/beh_frebepor.3
    alliance/src/beh/man3/beh_frebereg.3
    alliance/src/beh/man3/beh_freberin.3
    alliance/src/beh/man3/beh_frebiabl.3
    alliance/src/beh/man3/beh_frebinod.3
    alliance/src/beh/man3/beh_getgenva.3
    alliance/src/beh/man3/beh_makbdd.3
    alliance/src/beh/man3/beh_makgex.3
    alliance/src/beh/man3/beh_message.3
    alliance/src/beh/man3/beh_rmvbeaux.3
    alliance/src/beh/man3/beh_rmvbebus.3
    alliance/src/beh/man3/beh_rmvbebux.3
    alliance/src/beh/man3/beh_rmvbefig.3
    alliance/src/beh/man3/beh_rmvbegen.3
    alliance/src/beh/man3/beh_rmvbemsg.3
    alliance/src/beh/man3/beh_rmvbeout.3
    alliance/src/beh/man3/beh_rmvbepor.3
    alliance/src/beh/man3/beh_rmvbereg.3
    alliance/src/beh/man3/beh_rmvberin.3
    alliance/src/beh/src/Makefile.am
    alliance/src/beh/src/beh.h
    alliance/src/beh/src/beh_addbeaux.c
    alliance/src/beh/src/beh_addbebus.c
    alliance/src/beh/src/beh_addbebux.c
    alliance/src/beh/src/beh_addbeder.c
    alliance/src/beh/src/beh_addbefig.c
    alliance/src/beh/src/beh_addbegen.c
    alliance/src/beh/src/beh_addbemsg.c
    alliance/src/beh/src/beh_addbeout.c
    alliance/src/beh/src/beh_addbepor.c
    alliance/src/beh/src/beh_addbequad.c
    alliance/src/beh/src/beh_addbereg.c
    alliance/src/beh/src/beh_addberin.c
    alliance/src/beh/src/beh_addbiabl.c
    alliance/src/beh/src/beh_addbinod.c
    alliance/src/beh/src/beh_apdbeaux.c
    alliance/src/beh/src/beh_apdberin.c
    alliance/src/beh/src/beh_delbeaux.c
    alliance/src/beh/src/beh_delbebus.c
    alliance/src/beh/src/beh_delbebux.c
    alliance/src/beh/src/beh_delbeder.c
    alliance/src/beh/src/beh_delbefig.c
    alliance/src/beh/src/beh_delbegen.c
    alliance/src/beh/src/beh_delbemsg.c
    alliance/src/beh/src/beh_delbeout.c
    alliance/src/beh/src/beh_delbepor.c
    alliance/src/beh/src/beh_delbequad.c
    alliance/src/beh/src/beh_delbereg.c
    alliance/src/beh/src/beh_delberin.c
    alliance/src/beh/src/beh_delbiabl.c
    alliance/src/beh/src/beh_delbinod.c
    alliance/src/beh/src/beh_dict.c
    alliance/src/beh/src/beh_error.c
    alliance/src/beh/src/beh_expdelayed.c
    alliance/src/beh/src/beh_expstable.c
    alliance/src/beh/src/beh_frebeaux.c
    alliance/src/beh/src/beh_frebebus.c
    alliance/src/beh/src/beh_frebebux.c
    alliance/src/beh/src/beh_frebeder.c
    alliance/src/beh/src/beh_frebefig.c
    alliance/src/beh/src/beh_frebegen.c
    alliance/src/beh/src/beh_frebemsg.c
    alliance/src/beh/src/beh_frebeout.c
    alliance/src/beh/src/beh_frebepor.c
    alliance/src/beh/src/beh_frebereg.c
    alliance/src/beh/src/beh_freberin.c
    alliance/src/beh/src/beh_frebiabl.c
    alliance/src/beh/src/beh_frebinod.c
    alliance/src/beh/src/beh_getgenva.c
    alliance/src/beh/src/beh_getvers.c
    alliance/src/beh/src/beh_globals.c
    alliance/src/beh/src/beh_message.c
    alliance/src/beh/src/beh_rmvbeaux.c
    alliance/src/beh/src/beh_rmvbebus.c
    alliance/src/beh/src/beh_rmvbebux.c
    alliance/src/beh/src/beh_rmvbeder.c
    alliance/src/beh/src/beh_rmvbefig.c
    alliance/src/beh/src/beh_rmvbegen.c
    alliance/src/beh/src/beh_rmvbemsg.c
    alliance/src/beh/src/beh_rmvbeout.c
    alliance/src/beh/src/beh_rmvbepor.c
    alliance/src/beh/src/beh_rmvbereg.c
    alliance/src/beh/src/beh_rmvberin.c
    alliance/src/beh/src/beh_rpldelayed.c
    alliance/src/beh/src/beh_rplstable.c
    alliance/src/beh/src/beh_toolbug.c
    alliance/src/beh/src/beh_vhdlname.c
    alliance/src/beh/src/beh_vhvector.c
    alliance/src/bhl/Makefile.am
    alliance/src/bhl/configure.in
    alliance/src/bhl/src/Makefile.am
    alliance/src/bhl/src/beh_chkbefig.c
    alliance/src/bhl/src/beh_clrdepend.c
    alliance/src/bhl/src/beh_debug.c
    alliance/src/bhl/src/beh_debug.h
    alliance/src/bhl/src/beh_depend.c
    alliance/src/bhl/src/beh_dly2sta.c
    alliance/src/bhl/src/beh_freabl.c
    alliance/src/bhl/src/beh_gettu.c
    alliance/src/bhl/src/beh_indexbdd.c
    alliance/src/bhl/src/beh_makbdd.c
    alliance/src/bhl/src/beh_makderiv.c
    alliance/src/bhl/src/beh_makgex.c
    alliance/src/bhl/src/beh_maknode.c
    alliance/src/bhl/src/beh_makquad.c
    alliance/src/bhl/src/beh_makvarlist.c
    alliance/src/bhl/src/beh_namelist.c
    alliance/src/bhl/src/beh_sta2dly.c
    alliance/src/bhl/src/beh_unamlist.c
    alliance/src/bhl/src/bhl.h
    alliance/src/boog/Makefile.am
    alliance/src/boog/configure.in
    alliance/src/boog/doc/Makefile.am
    alliance/src/boog/doc/boog.1
    alliance/src/boog/doc/lax.5
    alliance/src/boog/src/Makefile.am
    alliance/src/boog/src/bog_lax_param.c
    alliance/src/boog/src/bog_lax_param.h
    alliance/src/boog/src/bog_lib_cell.c
    alliance/src/boog/src/bog_lib_cell.h
    alliance/src/boog/src/bog_lib_complete.c
    alliance/src/boog/src/bog_lib_complete.h
    alliance/src/boog/src/bog_lib_format.c
    alliance/src/boog/src/bog_lib_format.h
    alliance/src/boog/src/bog_lib_matching.c
    alliance/src/boog/src/bog_lib_matching.h
    alliance/src/boog/src/bog_lib_negativ.c
    alliance/src/boog/src/bog_lib_negativ.h
    alliance/src/boog/src/bog_lib_permute.c
    alliance/src/boog/src/bog_lib_permute.h
    alliance/src/boog/src/bog_lib_reader.c
    alliance/src/boog/src/bog_lib_reader.h
    alliance/src/boog/src/bog_lib_specifications.c
    alliance/src/boog/src/bog_lib_specifications.h
    alliance/src/boog/src/bog_lib_utils.c
    alliance/src/boog/src/bog_lib_utils.h
    alliance/src/boog/src/bog_main.c
    alliance/src/boog/src/bog_map_abl.c
    alliance/src/boog/src/bog_map_abl.h
    alliance/src/boog/src/bog_map_adapt.c
    alliance/src/boog/src/bog_map_adapt.h
    alliance/src/boog/src/bog_map_befig.c
    alliance/src/boog/src/bog_map_befig.h
    alliance/src/boog/src/bog_map_delay.c
    alliance/src/boog/src/bog_map_delay.h
    alliance/src/boog/src/bog_map_pattern.c
    alliance/src/boog/src/bog_map_pattern.h
    alliance/src/boog/src/bog_map_prepare.c
    alliance/src/boog/src/bog_map_prepare.h
    alliance/src/boog/src/bog_normalize_ARITY.c
    alliance/src/boog/src/bog_normalize_ARITY.h
    alliance/src/boog/src/bog_normalize_DAG.c
    alliance/src/boog/src/bog_normalize_DAG.h
    alliance/src/boog/src/bog_normalize_DC.c
    alliance/src/boog/src/bog_normalize_DC.h
    alliance/src/boog/src/bog_normalize_message.c
    alliance/src/boog/src/bog_normalize_message.h
    alliance/src/boog/src/bog_normalize_nameindex.c
    alliance/src/boog/src/bog_normalize_nameindex.h
    alliance/src/boog/src/bog_normalize_power.c
    alliance/src/boog/src/bog_normalize_power.h
    alliance/src/boog/src/bog_normalize_register.c
    alliance/src/boog/src/bog_normalize_register.h
    alliance/src/boog/src/bog_normalize_simplify.c
    alliance/src/boog/src/bog_normalize_simplify.h
    alliance/src/boog/src/bog_signal_adapt.c
    alliance/src/boog/src/bog_signal_adapt.h
    alliance/src/boog/src/bog_signal_delay.c
    alliance/src/boog/src/bog_signal_delay.h
    alliance/src/boog/src/bog_signal_nameindex.c
    alliance/src/boog/src/bog_signal_nameindex.h
    alliance/src/boog/src/bog_signal_utils.c
    alliance/src/boog/src/bog_signal_utils.h
    alliance/src/boog/src/bog_unflatten_abl.c
    alliance/src/boog/src/bog_unflatten_abl.h
    alliance/src/boog/src/bog_unflatten_area.c
    alliance/src/boog/src/bog_unflatten_area.h
    alliance/src/boog/src/bog_unflatten_befig.c
    alliance/src/boog/src/bog_unflatten_befig.h
    alliance/src/boog/src/bog_unflatten_delay.c
    alliance/src/boog/src/bog_unflatten_delay.h
    alliance/src/boog/src/bog_unflatten_oper.c
    alliance/src/boog/src/bog_unflatten_oper.h
    alliance/src/boog/src/bog_unflatten_utils.c
    alliance/src/boog/src/bog_unflatten_utils.h
    alliance/src/boog/src/bog_xsch_driver.c
    alliance/src/boog/src/bog_xsch_driver.h
    alliance/src/boom/Makefile.am
    alliance/src/boom/configure.in
    alliance/src/boom/man1/Makefile.am
    alliance/src/boom/man1/boom.1
    alliance/src/boom/src/Makefile.am
    alliance/src/boom/src/boom_abl.c
    alliance/src/boom/src/boom_abl.h
    alliance/src/boom/src/boom_anneal.c
    alliance/src/boom/src/boom_anneal.h
    alliance/src/boom/src/boom_aux.c
    alliance/src/boom/src/boom_aux.h
    alliance/src/boom/src/boom_auxinit.c
    alliance/src/boom/src/boom_auxinit.h
    alliance/src/boom/src/boom_bdd.c
    alliance/src/boom/src/boom_bdd.h
    alliance/src/boom/src/boom_burgun.c
    alliance/src/boom/src/boom_burgun.h
    alliance/src/boom/src/boom_check.c
    alliance/src/boom/src/boom_check.h
    alliance/src/boom/src/boom_cost.c
    alliance/src/boom/src/boom_cost.h
    alliance/src/boom/src/boom_dc.c
    alliance/src/boom/src/boom_dc.h
    alliance/src/boom/src/boom_debug.c
    alliance/src/boom/src/boom_debug.h
    alliance/src/boom/src/boom_drive.c
    alliance/src/boom/src/boom_drive.h
    alliance/src/boom/src/boom_error.c
    alliance/src/boom/src/boom_error.h
    alliance/src/boom/src/boom_gradient.c
    alliance/src/boom/src/boom_gradient.h
    alliance/src/boom/src/boom_hash.c
    alliance/src/boom/src/boom_hash.h
    alliance/src/boom/src/boom_logic.c
    alliance/src/boom/src/boom_logic.h
    alliance/src/boom/src/boom_main.c
    alliance/src/boom/src/boom_main.h
    alliance/src/boom/src/boom_one.c
    alliance/src/boom/src/boom_one.h
    alliance/src/boom/src/boom_optim.c
    alliance/src/boom/src/boom_optim.h
    alliance/src/boom/src/boom_order.c
    alliance/src/boom/src/boom_order.h
    alliance/src/boom/src/boom_param.c
    alliance/src/boom/src/boom_param.h
    alliance/src/boom/src/boom_parse.c
    alliance/src/boom/src/boom_parse.h
    alliance/src/boom/src/boom_post.c
    alliance/src/boom/src/boom_post.h
    alliance/src/boom/src/boom_procrast.c
    alliance/src/boom/src/boom_procrast.h
    alliance/src/boom/src/boom_random.c
    alliance/src/boom/src/boom_random.h
    alliance/src/boom/src/boom_shared.c
    alliance/src/boom/src/boom_shared.h
    alliance/src/boom/src/boom_simple.c
    alliance/src/boom/src/boom_simple.h
    alliance/src/boom/src/boom_simul.c
    alliance/src/boom/src/boom_simul.h
    alliance/src/boom/src/boom_top.c
    alliance/src/boom/src/boom_top.h
    alliance/src/boom/src/boom_window.c
    alliance/src/boom/src/boom_window.h
    alliance/src/btr/Makefile.am
    alliance/src/btr/configure.in
    alliance/src/btr/src/Makefile.am
    alliance/src/btr/src/btr.h
    alliance/src/btr/src/btralloc.c
    alliance/src/btr/src/btralloc.h
    alliance/src/btr/src/btrenv.c
    alliance/src/btr/src/btrenv.h
    alliance/src/btr/src/btrerror.c
    alliance/src/btr/src/btrerror.h
    alliance/src/btr/src/btrfree.c
    alliance/src/btr/src/btrfree.h
    alliance/src/btr/src/btrfunc.c
    alliance/src/btr/src/btrfunc.h
    alliance/src/btr/src/btrresize.c
    alliance/src/btr/src/btrresize.h
    alliance/src/btr/src/btrtrans.c
    alliance/src/btr/src/btrtrans.h
    alliance/src/btr/src/main.c
    alliance/src/bvl/Makefile.am
    alliance/src/bvl/configure.in
    alliance/src/bvl/src/Makefile.am
    alliance/src/bvl/src/bvl.h
    alliance/src/bvl/src/bvl_bcomp_l.l
    alliance/src/bvl/src/bvl_bcomp_y.y
    alliance/src/bvl/src/bvl_bedef.h
    alliance/src/bvl/src/bvl_byacc.h
    alliance/src/bvl/src/bvl_drive.c
    alliance/src/bvl/src/bvl_globals.c
    alliance/src/bvl/src/bvl_parse.c
    alliance/src/bvl/src/bvl_util.c
    alliance/src/cells/Makefile.am
    alliance/src/cells/configure.in
    alliance/src/cells/doc/Makefile.am
    alliance/src/cells/doc/sxlib.5
    alliance/src/cells/src/Makefile.am
    alliance/src/cells/src/dp_sxlib/CATAL
    alliance/src/cells/src/dp_sxlib/Makefile.am
    alliance/src/cells/src/dp_sxlib/dp_dff_scan_x4.ap
    alliance/src/cells/src/dp_sxlib/dp_dff_scan_x4.vbe
    alliance/src/cells/src/dp_sxlib/dp_dff_scan_x4_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_dff_scan_x4_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_dff_x4.ap
    alliance/src/cells/src/dp_sxlib/dp_dff_x4.vbe
    alliance/src/cells/src/dp_sxlib/dp_dff_x4_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_dff_x4_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_mux_x2.ap
    alliance/src/cells/src/dp_sxlib/dp_mux_x2.vbe
    alliance/src/cells/src/dp_sxlib/dp_mux_x2_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_mux_x2_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_mux_x4.ap
    alliance/src/cells/src/dp_sxlib/dp_mux_x4.vbe
    alliance/src/cells/src/dp_sxlib/dp_mux_x4_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_mux_x4_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_nmux_x1.ap
    alliance/src/cells/src/dp_sxlib/dp_nmux_x1.vbe
    alliance/src/cells/src/dp_sxlib/dp_nmux_x1_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_nmux_x1_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_nts_x2.ap
    alliance/src/cells/src/dp_sxlib/dp_nts_x2.vbe
    alliance/src/cells/src/dp_sxlib/dp_nts_x2_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_nts_x2_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_rom2_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_rom2_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_rom4_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_rom4_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_rom4_nxr2_x4.ap
    alliance/src/cells/src/dp_sxlib/dp_rom4_nxr2_x4.vbe
    alliance/src/cells/src/dp_sxlib/dp_rom4_xr2_x4.ap
    alliance/src/cells/src/dp_sxlib/dp_rom4_xr2_x4.vbe
    alliance/src/cells/src/dp_sxlib/dp_sff_scan_x4.ap
    alliance/src/cells/src/dp_sxlib/dp_sff_scan_x4.vbe
    alliance/src/cells/src/dp_sxlib/dp_sff_scan_x4_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_sff_scan_x4_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_sff_x4.ap
    alliance/src/cells/src/dp_sxlib/dp_sff_x4.vbe
    alliance/src/cells/src/dp_sxlib/dp_sff_x4_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_sff_x4_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_sxlib.lef
    alliance/src/cells/src/dp_sxlib/dp_ts_x4.ap
    alliance/src/cells/src/dp_sxlib/dp_ts_x4.vbe
    alliance/src/cells/src/dp_sxlib/dp_ts_x4_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_ts_x4_buf.vbe
    alliance/src/cells/src/dp_sxlib/dp_ts_x8.ap
    alliance/src/cells/src/dp_sxlib/dp_ts_x8.vbe
    alliance/src/cells/src/dp_sxlib/dp_ts_x8_buf.ap
    alliance/src/cells/src/dp_sxlib/dp_ts_x8_buf.vbe
    alliance/src/cells/src/padlib/CATAL
    alliance/src/cells/src/padlib/Makefile.am
    alliance/src/cells/src/padlib/corner_sp.ap
    alliance/src/cells/src/padlib/corner_sp.vbe
    alliance/src/cells/src/padlib/padreal.ap
    alliance/src/cells/src/padlib/padreal.cif
    alliance/src/cells/src/padlib/padsymb.db
    alliance/src/cells/src/padlib/palck_sp.ap
    alliance/src/cells/src/padlib/pali_sp.ap
    alliance/src/cells/src/padlib/paliot_sp.ap
    alliance/src/cells/src/padlib/paliotw_sp.ap
    alliance/src/cells/src/padlib/palo_sp.ap
    alliance/src/cells/src/padlib/palot_sp.ap
    alliance/src/cells/src/padlib/palotw_sp.ap
    alliance/src/cells/src/padlib/palow_sp.ap
    alliance/src/cells/src/padlib/palvdde_sp.ap
    alliance/src/cells/src/padlib/palvddeck_sp.ap
    alliance/src/cells/src/padlib/palvddi_sp.ap
    alliance/src/cells/src/padlib/palvddick_sp.ap
    alliance/src/cells/src/padlib/palvsse_sp.ap
    alliance/src/cells/src/padlib/palvsseck_sp.ap
    alliance/src/cells/src/padlib/palvssi_sp.ap
    alliance/src/cells/src/padlib/palvssick_sp.ap
    alliance/src/cells/src/padlib/pck_sp.al
    alliance/src/cells/src/padlib/pck_sp.ap
    alliance/src/cells/src/padlib/pck_sp.vbe
    alliance/src/cells/src/padlib/pi_sp.al
    alliance/src/cells/src/padlib/pi_sp.ap
    alliance/src/cells/src/padlib/pi_sp.vbe
    alliance/src/cells/src/padlib/piot_sp.al
    alliance/src/cells/src/padlib/piot_sp.ap
    alliance/src/cells/src/padlib/piot_sp.vbe
    alliance/src/cells/src/padlib/piotw_sp.al
    alliance/src/cells/src/padlib/piotw_sp.ap
    alliance/src/cells/src/padlib/piotw_sp.vbe
    alliance/src/cells/src/padlib/po_sp.al
    alliance/src/cells/src/padlib/po_sp.ap
    alliance/src/cells/src/padlib/po_sp.vbe
    alliance/src/cells/src/padlib/pot_sp.al
    alliance/src/cells/src/padlib/pot_sp.ap
    alliance/src/cells/src/padlib/pot_sp.vbe
    alliance/src/cells/src/padlib/potw_sp.al
    alliance/src/cells/src/padlib/potw_sp.ap
    alliance/src/cells/src/padlib/potw_sp.vbe
    alliance/src/cells/src/padlib/pow_sp.al
    alliance/src/cells/src/padlib/pow_sp.ap
    alliance/src/cells/src/padlib/pow_sp.vbe
    alliance/src/cells/src/padlib/pvdde_sp.al
    alliance/src/cells/src/padlib/pvdde_sp.ap
    alliance/src/cells/src/padlib/pvdde_sp.vbe
    alliance/src/cells/src/padlib/pvddeck_sp.al
    alliance/src/cells/src/padlib/pvddeck_sp.ap
    alliance/src/cells/src/padlib/pvddeck_sp.vbe
    alliance/src/cells/src/padlib/pvddi_sp.al
    alliance/src/cells/src/padlib/pvddi_sp.ap
    alliance/src/cells/src/padlib/pvddi_sp.vbe
    alliance/src/cells/src/padlib/pvddick_sp.al
    alliance/src/cells/src/padlib/pvddick_sp.ap
    alliance/src/cells/src/padlib/pvddick_sp.vbe
    alliance/src/cells/src/padlib/pvsse_sp.al
    alliance/src/cells/src/padlib/pvsse_sp.ap
    alliance/src/cells/src/padlib/pvsse_sp.vbe
    alliance/src/cells/src/padlib/pvsseck_sp.al
    alliance/src/cells/src/padlib/pvsseck_sp.ap
    alliance/src/cells/src/padlib/pvsseck_sp.vbe
    alliance/src/cells/src/padlib/pvssi_sp.al
    alliance/src/cells/src/padlib/pvssi_sp.ap
    alliance/src/cells/src/padlib/pvssi_sp.vbe
    alliance/src/cells/src/padlib/pvssick_sp.al
    alliance/src/cells/src/padlib/pvssick_sp.ap
    alliance/src/cells/src/padlib/pvssick_sp.vbe
    alliance/src/cells/src/ramlib/CATAL
    alliance/src/cells/src/ramlib/Makefile.am
    alliance/src/cells/src/ramlib/ram_mem_buf0.ap
    alliance/src/cells/src/ramlib/ram_mem_buf0.vbe
    alliance/src/cells/src/ramlib/ram_mem_buf1.ap
    alliance/src/cells/src/ramlib/ram_mem_buf1.vbe
    alliance/src/cells/src/ramlib/ram_mem_data.ap
    alliance/src/cells/src/ramlib/ram_mem_data.vbe
    alliance/src/cells/src/ramlib/ram_mem_dec2.ap
    alliance/src/cells/src/ramlib/ram_mem_dec2.vbe
    alliance/src/cells/src/ramlib/ram_mem_dec3.ap
    alliance/src/cells/src/ramlib/ram_mem_dec3.vbe
    alliance/src/cells/src/ramlib/ram_mem_dec4.ap
    alliance/src/cells/src/ramlib/ram_mem_dec4.vbe
    alliance/src/cells/src/ramlib/ram_mem_dec5.ap
    alliance/src/cells/src/ramlib/ram_mem_dec5.vbe
    alliance/src/cells/src/ramlib/ram_mem_deci.ap
    alliance/src/cells/src/ramlib/ram_mem_deci.vbe
    alliance/src/cells/src/ramlib/ram_prech_buf0.ap
    alliance/src/cells/src/ramlib/ram_prech_buf0.vbe
    alliance/src/cells/src/ramlib/ram_prech_buf1.ap
    alliance/src/cells/src/ramlib/ram_prech_buf1.vbe
    alliance/src/cells/src/ramlib/ram_prech_data.ap
    alliance/src/cells/src/ramlib/ram_prech_data.vbe
    alliance/src/cells/src/ramlib/ram_prech_dec0.ap
    alliance/src/cells/src/ramlib/ram_prech_dec0.vbe
    alliance/src/cells/src/ramlib/ram_sense_buf0.ap
    alliance/src/cells/src/ramlib/ram_sense_buf0.vbe
    alliance/src/cells/src/ramlib/ram_sense_buf1.ap
    alliance/src/cells/src/ramlib/ram_sense_buf1.vbe
    alliance/src/cells/src/ramlib/ram_sense_data.ap
    alliance/src/cells/src/ramlib/ram_sense_data.vbe
    alliance/src/cells/src/ramlib/ram_sense_decad12.ap
    alliance/src/cells/src/ramlib/ram_sense_decad12.vbe
    alliance/src/cells/src/ramlib/ram_sense_decad2.ap
    alliance/src/cells/src/ramlib/ram_sense_decad2.vbe
    alliance/src/cells/src/ramlib/ram_sense_decad3.ap
    alliance/src/cells/src/ramlib/ram_sense_decad3.vbe
    alliance/src/cells/src/ramlib/ram_sense_decad4.ap
    alliance/src/cells/src/ramlib/ram_sense_decad4.vbe
    alliance/src/cells/src/ramlib/ram_sense_decad5.ap
    alliance/src/cells/src/ramlib/ram_sense_decad5.vbe
    alliance/src/cells/src/ramlib/ramlib.lef
    alliance/src/cells/src/rflib/CATAL
    alliance/src/cells/src/rflib/Makefile.am
    alliance/src/cells/src/rflib/rf_dec_bufad0.ap
    alliance/src/cells/src/rflib/rf_dec_bufad0.vbe
    alliance/src/cells/src/rflib/rf_dec_bufad1.ap
    alliance/src/cells/src/rflib/rf_dec_bufad1.vbe
    alliance/src/cells/src/rflib/rf_dec_bufad2.ap
    alliance/src/cells/src/rflib/rf_dec_bufad2.vbe
    alliance/src/cells/src/rflib/rf_dec_nand2.ap
    alliance/src/cells/src/rflib/rf_dec_nand2.vbe
    alliance/src/cells/src/rflib/rf_dec_nand3.ap
    alliance/src/cells/src/rflib/rf_dec_nand3.vbe
    alliance/src/cells/src/rflib/rf_dec_nand4.ap
    alliance/src/cells/src/rflib/rf_dec_nand4.vbe
    alliance/src/cells/src/rflib/rf_dec_nao3.ap
    alliance/src/cells/src/rflib/rf_dec_nao3.vbe
    alliance/src/cells/src/rflib/rf_dec_nbuf.ap
    alliance/src/cells/src/rflib/rf_dec_nbuf.vbe
    alliance/src/cells/src/rflib/rf_dec_nor3.ap
    alliance/src/cells/src/rflib/rf_dec_nor3.vbe
    alliance/src/cells/src/rflib/rf_fifo_buf.ap
    alliance/src/cells/src/rflib/rf_fifo_buf.vbe
    alliance/src/cells/src/rflib/rf_fifo_clock.ap
    alliance/src/cells/src/rflib/rf_fifo_clock.vbe
    alliance/src/cells/src/rflib/rf_fifo_empty.ap
    alliance/src/cells/src/rflib/rf_fifo_empty.vbe
    alliance/src/cells/src/rflib/rf_fifo_full.ap
    alliance/src/cells/src/rflib/rf_fifo_full.vbe
    alliance/src/cells/src/rflib/rf_fifo_inc.ap
    alliance/src/cells/src/rflib/rf_fifo_inc.vbe
    alliance/src/cells/src/rflib/rf_fifo_nop.ap
    alliance/src/cells/src/rflib/rf_fifo_nop.vbe
    alliance/src/cells/src/rflib/rf_fifo_ok.ap
    alliance/src/cells/src/rflib/rf_fifo_ok.vbe
    alliance/src/cells/src/rflib/rf_fifo_orand4.ap
    alliance/src/cells/src/rflib/rf_fifo_orand4.vbe
    alliance/src/cells/src/rflib/rf_fifo_orand5.ap
    alliance/src/cells/src/rflib/rf_fifo_orand5.vbe
    alliance/src/cells/src/rflib/rf_fifo_ptreset.ap
    alliance/src/cells/src/rflib/rf_fifo_ptreset.vbe
    alliance/src/cells/src/rflib/rf_fifo_ptset.ap
    alliance/src/cells/src/rflib/rf_fifo_ptset.vbe
    alliance/src/cells/src/rflib/rf_inmux_buf_2.ap
    alliance/src/cells/src/rflib/rf_inmux_buf_2.vbe
    alliance/src/cells/src/rflib/rf_inmux_buf_4.ap
    alliance/src/cells/src/rflib/rf_inmux_buf_4.vbe
    alliance/src/cells/src/rflib/rf_inmux_mem.ap
    alliance/src/cells/src/rflib/rf_inmux_mem.vbe
    alliance/src/cells/src/rflib/rf_mid_buf_2.ap
    alliance/src/cells/src/rflib/rf_mid_buf_2.vbe
    alliance/src/cells/src/rflib/rf_mid_buf_4.ap
    alliance/src/cells/src/rflib/rf_mid_buf_4.vbe
    alliance/src/cells/src/rflib/rf_mid_mem.ap
    alliance/src/cells/src/rflib/rf_mid_mem.vbe
    alliance/src/cells/src/rflib/rf_mid_mem_r0.ap
    alliance/src/cells/src/rflib/rf_mid_mem_r0.vbe
    alliance/src/cells/src/rflib/rf_out_buf_2.ap
    alliance/src/cells/src/rflib/rf_out_buf_2.vbe
    alliance/src/cells/src/rflib/rf_out_buf_4.ap
    alliance/src/cells/src/rflib/rf_out_buf_4.vbe
    alliance/src/cells/src/rflib/rf_out_mem.ap
    alliance/src/cells/src/rflib/rf_out_mem.vbe
    alliance/src/cells/src/rflib/rflib.lef
    alliance/src/cells/src/romlib/CATAL
    alliance/src/cells/src/romlib/Makefile.am
    alliance/src/cells/src/romlib/rom_data_insel.ap
    alliance/src/cells/src/romlib/rom_data_insel.vbe
    alliance/src/cells/src/romlib/rom_data_invss.ap
    alliance/src/cells/src/romlib/rom_data_invss.vbe
    alliance/src/cells/src/romlib/rom_data_midsel.ap
    alliance/src/cells/src/romlib/rom_data_midsel.vbe
    alliance/src/cells/src/romlib/rom_data_midvss.ap
    alliance/src/cells/src/romlib/rom_data_midvss.vbe
    alliance/src/cells/src/romlib/rom_data_outsel.ap
    alliance/src/cells/src/romlib/rom_data_outsel.vbe
    alliance/src/cells/src/romlib/rom_data_outsel_ts.ap
    alliance/src/cells/src/romlib/rom_data_outsel_ts.vbe
    alliance/src/cells/src/romlib/rom_data_outvss.ap
    alliance/src/cells/src/romlib/rom_data_outvss.vbe
    alliance/src/cells/src/romlib/rom_data_outvss_ts.ap
    alliance/src/cells/src/romlib/rom_data_outvss_ts.vbe
    alliance/src/cells/src/romlib/rom_dec_adbuf.ap
    alliance/src/cells/src/romlib/rom_dec_adbuf.vbe
    alliance/src/cells/src/romlib/rom_dec_col2.ap
    alliance/src/cells/src/romlib/rom_dec_col2.vbe
    alliance/src/cells/src/romlib/rom_dec_col3.ap
    alliance/src/cells/src/romlib/rom_dec_col3.vbe
    alliance/src/cells/src/romlib/rom_dec_col4.ap
    alliance/src/cells/src/romlib/rom_dec_col4.vbe
    alliance/src/cells/src/romlib/rom_dec_colbuf.ap
    alliance/src/cells/src/romlib/rom_dec_colbuf.vbe
    alliance/src/cells/src/romlib/rom_dec_line01.ap
    alliance/src/cells/src/romlib/rom_dec_line01.vbe
    alliance/src/cells/src/romlib/rom_dec_line23.ap
    alliance/src/cells/src/romlib/rom_dec_line23.vbe
    alliance/src/cells/src/romlib/rom_dec_line45.ap
    alliance/src/cells/src/romlib/rom_dec_line45.vbe
    alliance/src/cells/src/romlib/rom_dec_line67.ap
    alliance/src/cells/src/romlib/rom_dec_line67.vbe
    alliance/src/cells/src/romlib/rom_dec_nop.ap
    alliance/src/cells/src/romlib/rom_dec_nop.vbe
    alliance/src/cells/src/romlib/rom_dec_prech.ap
    alliance/src/cells/src/romlib/rom_dec_prech.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux01.ap
    alliance/src/cells/src/romlib/rom_dec_selmux01.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux01_ts.ap
    alliance/src/cells/src/romlib/rom_dec_selmux01_ts.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux23.ap
    alliance/src/cells/src/romlib/rom_dec_selmux23.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux23_ts.ap
    alliance/src/cells/src/romlib/rom_dec_selmux23_ts.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux45.ap
    alliance/src/cells/src/romlib/rom_dec_selmux45.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux45_ts.ap
    alliance/src/cells/src/romlib/rom_dec_selmux45_ts.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux67.ap
    alliance/src/cells/src/romlib/rom_dec_selmux67.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux67_128.ap
    alliance/src/cells/src/romlib/rom_dec_selmux67_128.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux67_128_ts.ap
    alliance/src/cells/src/romlib/rom_dec_selmux67_128_ts.vbe
    alliance/src/cells/src/romlib/rom_dec_selmux67_ts.ap
    alliance/src/cells/src/romlib/rom_dec_selmux67_ts.vbe
    alliance/src/cells/src/romlib/romlib.lef
    alliance/src/cells/src/sxlib/000000002.dat
    alliance/src/cells/src/sxlib/000000003.dat
    alliance/src/cells/src/sxlib/000000004.dat
    alliance/src/cells/src/sxlib/000000005.dat
    alliance/src/cells/src/sxlib/000000006.dat
    alliance/src/cells/src/sxlib/000000007.dat
    alliance/src/cells/src/sxlib/000000008.dat
    alliance/src/cells/src/sxlib/000000009.dat
    alliance/src/cells/src/sxlib/000000010.dat
    alliance/src/cells/src/sxlib/000000011.dat
    alliance/src/cells/src/sxlib/000000012.dat
    alliance/src/cells/src/sxlib/000000013.dat
    alliance/src/cells/src/sxlib/000000014.dat
    alliance/src/cells/src/sxlib/000000015.dat
    alliance/src/cells/src/sxlib/000000016.dat
    alliance/src/cells/src/sxlib/000000017.dat
    alliance/src/cells/src/sxlib/000000018.dat
    alliance/src/cells/src/sxlib/000000019.dat
    alliance/src/cells/src/sxlib/000000020.dat
    alliance/src/cells/src/sxlib/000000021.dat
    alliance/src/cells/src/sxlib/000000022.dat
    alliance/src/cells/src/sxlib/000000023.dat
    alliance/src/cells/src/sxlib/000000024.dat
    alliance/src/cells/src/sxlib/000000025.dat
    alliance/src/cells/src/sxlib/000000026.dat
    alliance/src/cells/src/sxlib/000000027.dat
    alliance/src/cells/src/sxlib/000000028.dat
    alliance/src/cells/src/sxlib/000000029.dat
    alliance/src/cells/src/sxlib/000000030.dat
    alliance/src/cells/src/sxlib/000000031.dat
    alliance/src/cells/src/sxlib/000000032.dat
    alliance/src/cells/src/sxlib/000000033.dat
    alliance/src/cells/src/sxlib/000000034.dat
    alliance/src/cells/src/sxlib/000000035.dat
    alliance/src/cells/src/sxlib/000000036.dat
    alliance/src/cells/src/sxlib/000000037.dat
    alliance/src/cells/src/sxlib/000000038.dat
    alliance/src/cells/src/sxlib/000000039.dat
    alliance/src/cells/src/sxlib/000000040.dat
    alliance/src/cells/src/sxlib/000000041.dat
    alliance/src/cells/src/sxlib/000000042.dat
    alliance/src/cells/src/sxlib/000000043.dat
    alliance/src/cells/src/sxlib/000000044.dat
    alliance/src/cells/src/sxlib/000000045.dat
    alliance/src/cells/src/sxlib/000000046.dat
    alliance/src/cells/src/sxlib/000000047.dat
    alliance/src/cells/src/sxlib/000000048.dat
    alliance/src/cells/src/sxlib/000000049.dat
    alliance/src/cells/src/sxlib/000000050.dat
    alliance/src/cells/src/sxlib/000000051.dat
    alliance/src/cells/src/sxlib/000000052.dat
    alliance/src/cells/src/sxlib/000000053.dat
    alliance/src/cells/src/sxlib/000000054.dat
    alliance/src/cells/src/sxlib/000000055.dat
    alliance/src/cells/src/sxlib/000000056.dat
    alliance/src/cells/src/sxlib/000000057.dat
    alliance/src/cells/src/sxlib/000000058.dat
    alliance/src/cells/src/sxlib/000000059.dat
    alliance/src/cells/src/sxlib/000000060.dat
    alliance/src/cells/src/sxlib/000000061.dat
    alliance/src/cells/src/sxlib/000000062.dat
    alliance/src/cells/src/sxlib/000000063.dat
    alliance/src/cells/src/sxlib/000000064.dat
    alliance/src/cells/src/sxlib/000000065.dat
    alliance/src/cells/src/sxlib/000000066.dat
    alliance/src/cells/src/sxlib/000000067.dat
    alliance/src/cells/src/sxlib/000000068.dat
    alliance/src/cells/src/sxlib/000000069.dat
    alliance/src/cells/src/sxlib/000000070.dat
    alliance/src/cells/src/sxlib/000000071.dat
    alliance/src/cells/src/sxlib/000000072.dat
    alliance/src/cells/src/sxlib/000000073.dat
    alliance/src/cells/src/sxlib/000000074.dat
    alliance/src/cells/src/sxlib/000000075.dat
    alliance/src/cells/src/sxlib/000000076.dat
    alliance/src/cells/src/sxlib/000000077.dat
    alliance/src/cells/src/sxlib/000000078.dat
    alliance/src/cells/src/sxlib/000000079.dat
    alliance/src/cells/src/sxlib/000000080.dat
    alliance/src/cells/src/sxlib/000000081.dat
    alliance/src/cells/src/sxlib/000000082.dat
    alliance/src/cells/src/sxlib/000000083.dat
    alliance/src/cells/src/sxlib/000000084.dat
    alliance/src/cells/src/sxlib/000000085.dat
    alliance/src/cells/src/sxlib/000000086.dat
    alliance/src/cells/src/sxlib/000000087.dat
    alliance/src/cells/src/sxlib/000000088.dat
    alliance/src/cells/src/sxlib/000000089.dat
    alliance/src/cells/src/sxlib/000000090.dat
    alliance/src/cells/src/sxlib/000000091.dat
    alliance/src/cells/src/sxlib/000000092.dat
    alliance/src/cells/src/sxlib/000000093.dat
    alliance/src/cells/src/sxlib/000000094.dat
    alliance/src/cells/src/sxlib/000000095.dat
    alliance/src/cells/src/sxlib/CATAL
    alliance/src/cells/src/sxlib/CIRCUIT.IDX
    alliance/src/cells/src/sxlib/Makefile.am
    alliance/src/cells/src/sxlib/Makefile.liban
    alliance/src/cells/src/sxlib/a2_x2.al
    alliance/src/cells/src/sxlib/a2_x2.ap
    alliance/src/cells/src/sxlib/a2_x2.sym
    alliance/src/cells/src/sxlib/a2_x2.vbe
    alliance/src/cells/src/sxlib/a2_x2.vhd
    alliance/src/cells/src/sxlib/a2_x4.al
    alliance/src/cells/src/sxlib/a2_x4.ap
    alliance/src/cells/src/sxlib/a2_x4.sym
    alliance/src/cells/src/sxlib/a2_x4.vbe
    alliance/src/cells/src/sxlib/a2_x4.vhd
    alliance/src/cells/src/sxlib/a3_x2.al
    alliance/src/cells/src/sxlib/a3_x2.ap
    alliance/src/cells/src/sxlib/a3_x2.sym
    alliance/src/cells/src/sxlib/a3_x2.vbe
    alliance/src/cells/src/sxlib/a3_x2.vhd
    alliance/src/cells/src/sxlib/a3_x4.al
    alliance/src/cells/src/sxlib/a3_x4.ap
    alliance/src/cells/src/sxlib/a3_x4.sym
    alliance/src/cells/src/sxlib/a3_x4.vbe
    alliance/src/cells/src/sxlib/a3_x4.vhd
    alliance/src/cells/src/sxlib/a4_x2.al
    alliance/src/cells/src/sxlib/a4_x2.ap
    alliance/src/cells/src/sxlib/a4_x2.sym
    alliance/src/cells/src/sxlib/a4_x2.vbe
    alliance/src/cells/src/sxlib/a4_x2.vhd
    alliance/src/cells/src/sxlib/a4_x4.al
    alliance/src/cells/src/sxlib/a4_x4.ap
    alliance/src/cells/src/sxlib/a4_x4.sym
    alliance/src/cells/src/sxlib/a4_x4.vbe
    alliance/src/cells/src/sxlib/a4_x4.vhd
    alliance/src/cells/src/sxlib/an12_x1.al
    alliance/src/cells/src/sxlib/an12_x1.ap
    alliance/src/cells/src/sxlib/an12_x1.sym
    alliance/src/cells/src/sxlib/an12_x1.vbe
    alliance/src/cells/src/sxlib/an12_x1.vhd
    alliance/src/cells/src/sxlib/an12_x4.al
    alliance/src/cells/src/sxlib/an12_x4.ap
    alliance/src/cells/src/sxlib/an12_x4.sym
    alliance/src/cells/src/sxlib/an12_x4.vbe
    alliance/src/cells/src/sxlib/an12_x4.vhd
    alliance/src/cells/src/sxlib/ao22_x2.al
    alliance/src/cells/src/sxlib/ao22_x2.ap
    alliance/src/cells/src/sxlib/ao22_x2.sym
    alliance/src/cells/src/sxlib/ao22_x2.vbe
    alliance/src/cells/src/sxlib/ao22_x2.vhd
    alliance/src/cells/src/sxlib/ao22_x4.al
    alliance/src/cells/src/sxlib/ao22_x4.ap
    alliance/src/cells/src/sxlib/ao22_x4.sym
    alliance/src/cells/src/sxlib/ao22_x4.vbe
    alliance/src/cells/src/sxlib/ao22_x4.vhd
    alliance/src/cells/src/sxlib/ao2o22_x2.al
    alliance/src/cells/src/sxlib/ao2o22_x2.ap
    alliance/src/cells/src/sxlib/ao2o22_x2.sym
    alliance/src/cells/src/sxlib/ao2o22_x2.vbe
    alliance/src/cells/src/sxlib/ao2o22_x2.vhd
    alliance/src/cells/src/sxlib/ao2o22_x4.al
    alliance/src/cells/src/sxlib/ao2o22_x4.ap
    alliance/src/cells/src/sxlib/ao2o22_x4.sym
    alliance/src/cells/src/sxlib/ao2o22_x4.vbe
    alliance/src/cells/src/sxlib/ao2o22_x4.vhd
    alliance/src/cells/src/sxlib/buf_x2.al
    alliance/src/cells/src/sxlib/buf_x2.ap
    alliance/src/cells/src/sxlib/buf_x2.sym
    alliance/src/cells/src/sxlib/buf_x2.vbe
    alliance/src/cells/src/sxlib/buf_x2.vhd
    alliance/src/cells/src/sxlib/buf_x4.al
    alliance/src/cells/src/sxlib/buf_x4.ap
    alliance/src/cells/src/sxlib/buf_x4.sym
    alliance/src/cells/src/sxlib/buf_x4.vbe
    alliance/src/cells/src/sxlib/buf_x4.vhd
    alliance/src/cells/src/sxlib/buf_x8.al
    alliance/src/cells/src/sxlib/buf_x8.ap
    alliance/src/cells/src/sxlib/buf_x8.sym
    alliance/src/cells/src/sxlib/buf_x8.vbe
    alliance/src/cells/src/sxlib/buf_x8.vhd
    alliance/src/cells/src/sxlib/fulladder_x2.al
    alliance/src/cells/src/sxlib/fulladder_x2.ap
    alliance/src/cells/src/sxlib/fulladder_x2.vbe
    alliance/src/cells/src/sxlib/fulladder_x2.vhd
    alliance/src/cells/src/sxlib/fulladder_x4.al
    alliance/src/cells/src/sxlib/fulladder_x4.ap
    alliance/src/cells/src/sxlib/fulladder_x4.vbe
    alliance/src/cells/src/sxlib/fulladder_x4.vhd
    alliance/src/cells/src/sxlib/halfadder_x2.al
    alliance/src/cells/src/sxlib/halfadder_x2.ap
    alliance/src/cells/src/sxlib/halfadder_x2.vbe
    alliance/src/cells/src/sxlib/halfadder_x2.vhd
    alliance/src/cells/src/sxlib/halfadder_x4.al
    alliance/src/cells/src/sxlib/halfadder_x4.ap
    alliance/src/cells/src/sxlib/halfadder_x4.vbe
    alliance/src/cells/src/sxlib/halfadder_x4.vhd
    alliance/src/cells/src/sxlib/inv_x1.al
    alliance/src/cells/src/sxlib/inv_x1.ap
    alliance/src/cells/src/sxlib/inv_x1.sym
    alliance/src/cells/src/sxlib/inv_x1.vbe
    alliance/src/cells/src/sxlib/inv_x1.vhd
    alliance/src/cells/src/sxlib/inv_x2.al
    alliance/src/cells/src/sxlib/inv_x2.ap
    alliance/src/cells/src/sxlib/inv_x2.sym
    alliance/src/cells/src/sxlib/inv_x2.vbe
    alliance/src/cells/src/sxlib/inv_x2.vhd
    alliance/src/cells/src/sxlib/inv_x4.al
    alliance/src/cells/src/sxlib/inv_x4.ap
    alliance/src/cells/src/sxlib/inv_x4.sym
    alliance/src/cells/src/sxlib/inv_x4.vbe
    alliance/src/cells/src/sxlib/inv_x4.vhd
    alliance/src/cells/src/sxlib/inv_x8.al
    alliance/src/cells/src/sxlib/inv_x8.ap
    alliance/src/cells/src/sxlib/inv_x8.sym
    alliance/src/cells/src/sxlib/inv_x8.vbe
    alliance/src/cells/src/sxlib/inv_x8.vhd
    alliance/src/cells/src/sxlib/mx2_x2.al
    alliance/src/cells/src/sxlib/mx2_x2.ap
    alliance/src/cells/src/sxlib/mx2_x2.sym
    alliance/src/cells/src/sxlib/mx2_x2.vbe
    alliance/src/cells/src/sxlib/mx2_x2.vhd
    alliance/src/cells/src/sxlib/mx2_x4.al
    alliance/src/cells/src/sxlib/mx2_x4.ap
    alliance/src/cells/src/sxlib/mx2_x4.sym
    alliance/src/cells/src/sxlib/mx2_x4.vbe
    alliance/src/cells/src/sxlib/mx2_x4.vhd
    alliance/src/cells/src/sxlib/mx3_x2.al
    alliance/src/cells/src/sxlib/mx3_x2.ap
    alliance/src/cells/src/sxlib/mx3_x2.vbe
    alliance/src/cells/src/sxlib/mx3_x2.vhd
    alliance/src/cells/src/sxlib/mx3_x4.al
    alliance/src/cells/src/sxlib/mx3_x4.ap
    alliance/src/cells/src/sxlib/mx3_x4.vbe
    alliance/src/cells/src/sxlib/mx3_x4.vhd
    alliance/src/cells/src/sxlib/na2_x1.al
    alliance/src/cells/src/sxlib/na2_x1.ap
    alliance/src/cells/src/sxlib/na2_x1.sym
    alliance/src/cells/src/sxlib/na2_x1.vbe
    alliance/src/cells/src/sxlib/na2_x1.vhd
    alliance/src/cells/src/sxlib/na2_x4.al
    alliance/src/cells/src/sxlib/na2_x4.ap
    alliance/src/cells/src/sxlib/na2_x4.sym
    alliance/src/cells/src/sxlib/na2_x4.vbe
    alliance/src/cells/src/sxlib/na2_x4.vhd
    alliance/src/cells/src/sxlib/na3_x1.al
    alliance/src/cells/src/sxlib/na3_x1.ap
    alliance/src/cells/src/sxlib/na3_x1.sym
    alliance/src/cells/src/sxlib/na3_x1.vbe
    alliance/src/cells/src/sxlib/na3_x1.vhd
    alliance/src/cells/src/sxlib/na3_x4.al
    alliance/src/cells/src/sxlib/na3_x4.ap
    alliance/src/cells/src/sxlib/na3_x4.sym
    alliance/src/cells/src/sxlib/na3_x4.vbe
    alliance/src/cells/src/sxlib/na3_x4.vhd
    alliance/src/cells/src/sxlib/na4_x1.al
    alliance/src/cells/src/sxlib/na4_x1.ap
    alliance/src/cells/src/sxlib/na4_x1.sym
    alliance/src/cells/src/sxlib/na4_x1.vbe
    alliance/src/cells/src/sxlib/na4_x1.vhd
    alliance/src/cells/src/sxlib/na4_x4.al
    alliance/src/cells/src/sxlib/na4_x4.ap
    alliance/src/cells/src/sxlib/na4_x4.sym
    alliance/src/cells/src/sxlib/na4_x4.vbe
    alliance/src/cells/src/sxlib/na4_x4.vhd
    alliance/src/cells/src/sxlib/nao22_x1.al
    alliance/src/cells/src/sxlib/nao22_x1.ap
    alliance/src/cells/src/sxlib/nao22_x1.sym
    alliance/src/cells/src/sxlib/nao22_x1.vbe
    alliance/src/cells/src/sxlib/nao22_x1.vhd
    alliance/src/cells/src/sxlib/nao22_x4.al
    alliance/src/cells/src/sxlib/nao22_x4.ap
    alliance/src/cells/src/sxlib/nao22_x4.sym
    alliance/src/cells/src/sxlib/nao22_x4.vbe
    alliance/src/cells/src/sxlib/nao22_x4.vhd
    alliance/src/cells/src/sxlib/nao2o22_x1.al
    alliance/src/cells/src/sxlib/nao2o22_x1.ap
    alliance/src/cells/src/sxlib/nao2o22_x1.sym
    alliance/src/cells/src/sxlib/nao2o22_x1.vbe
    alliance/src/cells/src/sxlib/nao2o22_x1.vhd
    alliance/src/cells/src/sxlib/nao2o22_x4.al
    alliance/src/cells/src/sxlib/nao2o22_x4.ap
    alliance/src/cells/src/sxlib/nao2o22_x4.sym
    alliance/src/cells/src/sxlib/nao2o22_x4.vbe
    alliance/src/cells/src/sxlib/nao2o22_x4.vhd
    alliance/src/cells/src/sxlib/nmx2_x1.al
    alliance/src/cells/src/sxlib/nmx2_x1.ap
    alliance/src/cells/src/sxlib/nmx2_x1.sym
    alliance/src/cells/src/sxlib/nmx2_x1.vbe
    alliance/src/cells/src/sxlib/nmx2_x1.vhd
    alliance/src/cells/src/sxlib/nmx2_x4.al
    alliance/src/cells/src/sxlib/nmx2_x4.ap
    alliance/src/cells/src/sxlib/nmx2_x4.sym
    alliance/src/cells/src/sxlib/nmx2_x4.vbe
    alliance/src/cells/src/sxlib/nmx2_x4.vhd
    alliance/src/cells/src/sxlib/nmx3_x1.al
    alliance/src/cells/src/sxlib/nmx3_x1.ap
    alliance/src/cells/src/sxlib/nmx3_x1.vbe
    alliance/src/cells/src/sxlib/nmx3_x1.vhd
    alliance/src/cells/src/sxlib/nmx3_x4.al
    alliance/src/cells/src/sxlib/nmx3_x4.ap
    alliance/src/cells/src/sxlib/nmx3_x4.vbe
    alliance/src/cells/src/sxlib/nmx3_x4.vhd
    alliance/src/cells/src/sxlib/no2_x1.al
    alliance/src/cells/src/sxlib/no2_x1.ap
    alliance/src/cells/src/sxlib/no2_x1.sym
    alliance/src/cells/src/sxlib/no2_x1.vbe
    alliance/src/cells/src/sxlib/no2_x1.vhd
    alliance/src/cells/src/sxlib/no2_x4.al
    alliance/src/cells/src/sxlib/no2_x4.ap
    alliance/src/cells/src/sxlib/no2_x4.sym
    alliance/src/cells/src/sxlib/no2_x4.vbe
    alliance/src/cells/src/sxlib/no2_x4.vhd
    alliance/src/cells/src/sxlib/no3_x1.al
    alliance/src/cells/src/sxlib/no3_x1.ap
    alliance/src/cells/src/sxlib/no3_x1.sym
    alliance/src/cells/src/sxlib/no3_x1.vbe
    alliance/src/cells/src/sxlib/no3_x1.vhd
    alliance/src/cells/src/sxlib/no3_x4.al
    alliance/src/cells/src/sxlib/no3_x4.ap
    alliance/src/cells/src/sxlib/no3_x4.sym
    alliance/src/cells/src/sxlib/no3_x4.vbe
    alliance/src/cells/src/sxlib/no3_x4.vhd
    alliance/src/cells/src/sxlib/no4_x1.al
    alliance/src/cells/src/sxlib/no4_x1.ap
    alliance/src/cells/src/sxlib/no4_x1.sym
    alliance/src/cells/src/sxlib/no4_x1.vbe
    alliance/src/cells/src/sxlib/no4_x1.vhd
    alliance/src/cells/src/sxlib/no4_x4.al
    alliance/src/cells/src/sxlib/no4_x4.ap
    alliance/src/cells/src/sxlib/no4_x4.sym
    alliance/src/cells/src/sxlib/no4_x4.vbe
    alliance/src/cells/src/sxlib/no4_x4.vhd
    alliance/src/cells/src/sxlib/noa22_x1.al
    alliance/src/cells/src/sxlib/noa22_x1.ap
    alliance/src/cells/src/sxlib/noa22_x1.sym
    alliance/src/cells/src/sxlib/noa22_x1.vbe
    alliance/src/cells/src/sxlib/noa22_x1.vhd
    alliance/src/cells/src/sxlib/noa22_x4.al
    alliance/src/cells/src/sxlib/noa22_x4.ap
    alliance/src/cells/src/sxlib/noa22_x4.sym
    alliance/src/cells/src/sxlib/noa22_x4.vbe
    alliance/src/cells/src/sxlib/noa22_x4.vhd
    alliance/src/cells/src/sxlib/noa2a22_x1.al
    alliance/src/cells/src/sxlib/noa2a22_x1.ap
    alliance/src/cells/src/sxlib/noa2a22_x1.sym
    alliance/src/cells/src/sxlib/noa2a22_x1.vbe
    alliance/src/cells/src/sxlib/noa2a22_x1.vhd
    alliance/src/cells/src/sxlib/noa2a22_x4.al
    alliance/src/cells/src/sxlib/noa2a22_x4.ap
    alliance/src/cells/src/sxlib/noa2a22_x4.sym
    alliance/src/cells/src/sxlib/noa2a22_x4.vbe
    alliance/src/cells/src/sxlib/noa2a22_x4.vhd
    alliance/src/cells/src/sxlib/noa2a2a23_x1.al
    alliance/src/cells/src/sxlib/noa2a2a23_x1.ap
    alliance/src/cells/src/sxlib/noa2a2a23_x1.sym
    alliance/src/cells/src/sxlib/noa2a2a23_x1.vbe
    alliance/src/cells/src/sxlib/noa2a2a23_x1.vhd
    alliance/src/cells/src/sxlib/noa2a2a23_x4.al
    alliance/src/cells/src/sxlib/noa2a2a23_x4.ap
    alliance/src/cells/src/sxlib/noa2a2a23_x4.sym
    alliance/src/cells/src/sxlib/noa2a2a23_x4.vbe
    alliance/src/cells/src/sxlib/noa2a2a23_x4.vhd
    alliance/src/cells/src/sxlib/noa2a2a2a24_x1.al
    alliance/src/cells/src/sxlib/noa2a2a2a24_x1.ap
    alliance/src/cells/src/sxlib/noa2a2a2a24_x1.sym
    alliance/src/cells/src/sxlib/noa2a2a2a24_x1.vbe
    alliance/src/cells/src/sxlib/noa2a2a2a24_x1.vhd
    alliance/src/cells/src/sxlib/noa2a2a2a24_x4.al
    alliance/src/cells/src/sxlib/noa2a2a2a24_x4.ap
    alliance/src/cells/src/sxlib/noa2a2a2a24_x4.sym
    alliance/src/cells/src/sxlib/noa2a2a2a24_x4.vbe
    alliance/src/cells/src/sxlib/noa2a2a2a24_x4.vhd
    alliance/src/cells/src/sxlib/noa2ao222_x1.al
    alliance/src/cells/src/sxlib/noa2ao222_x1.ap
    alliance/src/cells/src/sxlib/noa2ao222_x1.vbe
    alliance/src/cells/src/sxlib/noa2ao222_x1.vhd
    alliance/src/cells/src/sxlib/noa2ao222_x2.sym
    alliance/src/cells/src/sxlib/noa2ao222_x4.al
    alliance/src/cells/src/sxlib/noa2ao222_x4.ap
    alliance/src/cells/src/sxlib/noa2ao222_x4.sym
    alliance/src/cells/src/sxlib/noa2ao222_x4.vbe
    alliance/src/cells/src/sxlib/noa2ao222_x4.vhd
    alliance/src/cells/src/sxlib/noa3ao322_x1.al
    alliance/src/cells/src/sxlib/noa3ao322_x1.ap
    alliance/src/cells/src/sxlib/noa3ao322_x1.vbe
    alliance/src/cells/src/sxlib/noa3ao322_x1.vhd
    alliance/src/cells/src/sxlib/noa3ao322_x4.al
    alliance/src/cells/src/sxlib/noa3ao322_x4.ap
    alliance/src/cells/src/sxlib/noa3ao322_x4.sym
    alliance/src/cells/src/sxlib/noa3ao322_x4.vbe
    alliance/src/cells/src/sxlib/noa3ao322_x4.vhd
    alliance/src/cells/src/sxlib/nts_x1.al
    alliance/src/cells/src/sxlib/nts_x1.ap
    alliance/src/cells/src/sxlib/nts_x1.sym
    alliance/src/cells/src/sxlib/nts_x1.vbe
    alliance/src/cells/src/sxlib/nts_x1.vhd
    alliance/src/cells/src/sxlib/nts_x2.al
    alliance/src/cells/src/sxlib/nts_x2.ap
    alliance/src/cells/src/sxlib/nts_x2.sym
    alliance/src/cells/src/sxlib/nts_x2.vbe
    alliance/src/cells/src/sxlib/nts_x2.vhd
    alliance/src/cells/src/sxlib/nxr2_x1.al
    alliance/src/cells/src/sxlib/nxr2_x1.ap
    alliance/src/cells/src/sxlib/nxr2_x1.sym
    alliance/src/cells/src/sxlib/nxr2_x1.vbe
    alliance/src/cells/src/sxlib/nxr2_x1.vhd
    alliance/src/cells/src/sxlib/nxr2_x4.al
    alliance/src/cells/src/sxlib/nxr2_x4.ap
    alliance/src/cells/src/sxlib/nxr2_x4.sym
    alliance/src/cells/src/sxlib/nxr2_x4.vbe
    alliance/src/cells/src/sxlib/nxr2_x4.vhd
    alliance/src/cells/src/sxlib/o2_x2.al
    alliance/src/cells/src/sxlib/o2_x2.ap
    alliance/src/cells/src/sxlib/o2_x2.sym
    alliance/src/cells/src/sxlib/o2_x2.vbe
    alliance/src/cells/src/sxlib/o2_x2.vhd
    alliance/src/cells/src/sxlib/o2_x4.al
    alliance/src/cells/src/sxlib/o2_x4.ap
    alliance/src/cells/src/sxlib/o2_x4.sym
    alliance/src/cells/src/sxlib/o2_x4.vbe
    alliance/src/cells/src/sxlib/o2_x4.vhd
    alliance/src/cells/src/sxlib/o3_x2.al
    alliance/src/cells/src/sxlib/o3_x2.ap
    alliance/src/cells/src/sxlib/o3_x2.sym
    alliance/src/cells/src/sxlib/o3_x2.vbe
    alliance/src/cells/src/sxlib/o3_x2.vhd
    alliance/src/cells/src/sxlib/o3_x4.al
    alliance/src/cells/src/sxlib/o3_x4.ap
    alliance/src/cells/src/sxlib/o3_x4.sym
    alliance/src/cells/src/sxlib/o3_x4.vbe
    alliance/src/cells/src/sxlib/o3_x4.vhd
    alliance/src/cells/src/sxlib/o4_x2.al
    alliance/src/cells/src/sxlib/o4_x2.ap
    alliance/src/cells/src/sxlib/o4_x2.sym
    alliance/src/cells/src/sxlib/o4_x2.vbe
    alliance/src/cells/src/sxlib/o4_x2.vhd
    alliance/src/cells/src/sxlib/o4_x4.al
    alliance/src/cells/src/sxlib/o4_x4.ap
    alliance/src/cells/src/sxlib/o4_x4.sym
    alliance/src/cells/src/sxlib/o4_x4.vbe
    alliance/src/cells/src/sxlib/o4_x4.vhd
    alliance/src/cells/src/sxlib/oa22_x2.al
    alliance/src/cells/src/sxlib/oa22_x2.ap
    alliance/src/cells/src/sxlib/oa22_x2.sym
    alliance/src/cells/src/sxlib/oa22_x2.vbe
    alliance/src/cells/src/sxlib/oa22_x2.vhd
    alliance/src/cells/src/sxlib/oa22_x4.al
    alliance/src/cells/src/sxlib/oa22_x4.ap
    alliance/src/cells/src/sxlib/oa22_x4.sym
    alliance/src/cells/src/sxlib/oa22_x4.vbe
    alliance/src/cells/src/sxlib/oa22_x4.vhd
    alliance/src/cells/src/sxlib/oa2a22_x2.al
    alliance/src/cells/src/sxlib/oa2a22_x2.ap
    alliance/src/cells/src/sxlib/oa2a22_x2.sym
    alliance/src/cells/src/sxlib/oa2a22_x2.vbe
    alliance/src/cells/src/sxlib/oa2a22_x2.vhd
    alliance/src/cells/src/sxlib/oa2a22_x4.al
    alliance/src/cells/src/sxlib/oa2a22_x4.ap
    alliance/src/cells/src/sxlib/oa2a22_x4.sym
    alliance/src/cells/src/sxlib/oa2a22_x4.vbe
    alliance/src/cells/src/sxlib/oa2a22_x4.vhd
    alliance/src/cells/src/sxlib/oa2a2a23_x2.al
    alliance/src/cells/src/sxlib/oa2a2a23_x2.ap
    alliance/src/cells/src/sxlib/oa2a2a23_x2.sym
    alliance/src/cells/src/sxlib/oa2a2a23_x2.vbe
    alliance/src/cells/src/sxlib/oa2a2a23_x2.vhd
    alliance/src/cells/src/sxlib/oa2a2a23_x4.al
    alliance/src/cells/src/sxlib/oa2a2a23_x4.ap
    alliance/src/cells/src/sxlib/oa2a2a23_x4.sym
    alliance/src/cells/src/sxlib/oa2a2a23_x4.vbe
    alliance/src/cells/src/sxlib/oa2a2a23_x4.vhd
    alliance/src/cells/src/sxlib/oa2a2a2a24_x2.al
    alliance/src/cells/src/sxlib/oa2a2a2a24_x2.ap
    alliance/src/cells/src/sxlib/oa2a2a2a24_x2.sym
    alliance/src/cells/src/sxlib/oa2a2a2a24_x2.vbe
    alliance/src/cells/src/sxlib/oa2a2a2a24_x2.vhd
    alliance/src/cells/src/sxlib/oa2a2a2a24_x4.al
    alliance/src/cells/src/sxlib/oa2a2a2a24_x4.ap
    alliance/src/cells/src/sxlib/oa2a2a2a24_x4.sym
    alliance/src/cells/src/sxlib/oa2a2a2a24_x4.vbe
    alliance/src/cells/src/sxlib/oa2a2a2a24_x4.vhd
    alliance/src/cells/src/sxlib/oa2ao222_x2.al
    alliance/src/cells/src/sxlib/oa2ao222_x2.ap
    alliance/src/cells/src/sxlib/oa2ao222_x2.sym
    alliance/src/cells/src/sxlib/oa2ao222_x2.vbe
    alliance/src/cells/src/sxlib/oa2ao222_x2.vhd
    alliance/src/cells/src/sxlib/oa2ao222_x4.al
    alliance/src/cells/src/sxlib/oa2ao222_x4.ap
    alliance/src/cells/src/sxlib/oa2ao222_x4.sym
    alliance/src/cells/src/sxlib/oa2ao222_x4.vbe
    alliance/src/cells/src/sxlib/oa2ao222_x4.vhd
    alliance/src/cells/src/sxlib/oa3ao322_x1.sym
    alliance/src/cells/src/sxlib/oa3ao322_x2.al
    alliance/src/cells/src/sxlib/oa3ao322_x2.ap
    alliance/src/cells/src/sxlib/oa3ao322_x2.sym
    alliance/src/cells/src/sxlib/oa3ao322_x2.vbe
    alliance/src/cells/src/sxlib/oa3ao322_x2.vhd
    alliance/src/cells/src/sxlib/oa3ao322_x4.al
    alliance/src/cells/src/sxlib/oa3ao322_x4.ap
    alliance/src/cells/src/sxlib/oa3ao322_x4.sym
    alliance/src/cells/src/sxlib/oa3ao322_x4.vbe
    alliance/src/cells/src/sxlib/oa3ao322_x4.vhd
    alliance/src/cells/src/sxlib/on12_x1.al
    alliance/src/cells/src/sxlib/on12_x1.ap
    alliance/src/cells/src/sxlib/on12_x1.sym
    alliance/src/cells/src/sxlib/on12_x1.vbe
    alliance/src/cells/src/sxlib/on12_x1.vhd
    alliance/src/cells/src/sxlib/on12_x4.al
    alliance/src/cells/src/sxlib/on12_x4.ap
    alliance/src/cells/src/sxlib/on12_x4.sym
    alliance/src/cells/src/sxlib/on12_x4.vbe
    alliance/src/cells/src/sxlib/on12_x4.vhd
    alliance/src/cells/src/sxlib/one_x0.al
    alliance/src/cells/src/sxlib/one_x0.ap
    alliance/src/cells/src/sxlib/one_x0.sym
    alliance/src/cells/src/sxlib/one_x0.vbe
    alliance/src/cells/src/sxlib/one_x0.vhd
    alliance/src/cells/src/sxlib/powmid_x0.ap
    alliance/src/cells/src/sxlib/powmid_x0.vbe
    alliance/src/cells/src/sxlib/powmid_x0.vhd
    alliance/src/cells/src/sxlib/rowend_x0.al
    alliance/src/cells/src/sxlib/rowend_x0.ap
    alliance/src/cells/src/sxlib/rowend_x0.vbe
    alliance/src/cells/src/sxlib/rowend_x0.vhd
    alliance/src/cells/src/sxlib/sff1_x4.al
    alliance/src/cells/src/sxlib/sff1_x4.ap
    alliance/src/cells/src/sxlib/sff1_x4.sym
    alliance/src/cells/src/sxlib/sff1_x4.vbe
    alliance/src/cells/src/sxlib/sff1_x4.vhd
    alliance/src/cells/src/sxlib/sff2_x4.al
    alliance/src/cells/src/sxlib/sff2_x4.ap
    alliance/src/cells/src/sxlib/sff2_x4.sym
    alliance/src/cells/src/sxlib/sff2_x4.vbe
    alliance/src/cells/src/sxlib/sff2_x4.vhd
    alliance/src/cells/src/sxlib/sff3_x4.al
    alliance/src/cells/src/sxlib/sff3_x4.ap
    alliance/src/cells/src/sxlib/sff3_x4.vbe
    alliance/src/cells/src/sxlib/sff3_x4.vhd
    alliance/src/cells/src/sxlib/sxlib.cct
    alliance/src/cells/src/sxlib/sxlib.db
    alliance/src/cells/src/sxlib/sxlib.lef
    alliance/src/cells/src/sxlib/sxlib.lib
    alliance/src/cells/src/sxlib/sxlib.sdb
    alliance/src/cells/src/sxlib/sxlib.slib
    alliance/src/cells/src/sxlib/sxlib_FTGS.vhd
    alliance/src/cells/src/sxlib/sxlib_FTSM.vhd
    alliance/src/cells/src/sxlib/sxlib_UDSM.vhd
    alliance/src/cells/src/sxlib/sxlib_VITAL.vhd
    alliance/src/cells/src/sxlib/sxlib_Vcomponents.vhd
    alliance/src/cells/src/sxlib/sxlib_Vtables.vhd
    alliance/src/cells/src/sxlib/sxlib_components.vhd
    alliance/src/cells/src/sxlib/tie_x0.al
    alliance/src/cells/src/sxlib/tie_x0.ap
    alliance/src/cells/src/sxlib/tie_x0.vbe
    alliance/src/cells/src/sxlib/tie_x0.vhd
    alliance/src/cells/src/sxlib/ts_x4.al
    alliance/src/cells/src/sxlib/ts_x4.ap
    alliance/src/cells/src/sxlib/ts_x4.sym
    alliance/src/cells/src/sxlib/ts_x4.vbe
    alliance/src/cells/src/sxlib/ts_x4.vhd
    alliance/src/cells/src/sxlib/ts_x8.al
    alliance/src/cells/src/sxlib/ts_x8.ap
    alliance/src/cells/src/sxlib/ts_x8.sym
    alliance/src/cells/src/sxlib/ts_x8.vbe
    alliance/src/cells/src/sxlib/ts_x8.vhd
    alliance/src/cells/src/sxlib/xr2_x1.al
    alliance/src/cells/src/sxlib/xr2_x1.ap
    alliance/src/cells/src/sxlib/xr2_x1.sym
    alliance/src/cells/src/sxlib/xr2_x1.vbe
    alliance/src/cells/src/sxlib/xr2_x1.vhd
    alliance/src/cells/src/sxlib/xr2_x4.al
    alliance/src/cells/src/sxlib/xr2_x4.ap
    alliance/src/cells/src/sxlib/xr2_x4.sym
    alliance/src/cells/src/sxlib/xr2_x4.vbe
    alliance/src/cells/src/sxlib/xr2_x4.vhd
    alliance/src/cells/src/sxlib/zero_x0.al
    alliance/src/cells/src/sxlib/zero_x0.ap
    alliance/src/cells/src/sxlib/zero_x0.sym
    alliance/src/cells/src/sxlib/zero_x0.vbe
    alliance/src/cells/src/sxlib/zero_x0.vhd
    alliance/src/configure.in
    alliance/src/ctl/Makefile.am
    alliance/src/ctl/configure.in
    alliance/src/ctl/man5/Makefile.am
    alliance/src/ctl/man5/ctl.5
    alliance/src/ctl/src/Makefile.am
    alliance/src/ctl/src/ctl.h
    alliance/src/ctl/src/ctladd.c
    alliance/src/ctl/src/ctladd.h
    alliance/src/ctl/src/ctlalloc.c
    alliance/src/ctl/src/ctlalloc.h
    alliance/src/ctl/src/ctldel.c
    alliance/src/ctl/src/ctldel.h
    alliance/src/ctl/src/ctlenv.c
    alliance/src/ctl/src/ctlenv.h
    alliance/src/ctl/src/ctlerror.c
    alliance/src/ctl/src/ctlerror.h
    alliance/src/ctl/src/ctlfree.c
    alliance/src/ctl/src/ctlfree.h
    alliance/src/ctl/src/ctlsearch.c
    alliance/src/ctl/src/ctlsearch.h
    alliance/src/ctl/src/ctlview.c
    alliance/src/ctl/src/ctlview.h
    alliance/src/ctp/Makefile.am
    alliance/src/ctp/configure.in
    alliance/src/ctp/src/Makefile.am
    alliance/src/ctp/src/ctp.h
    alliance/src/ctp/src/ctp_bedef.h
    alliance/src/ctp/src/ctp_blex.h
    alliance/src/ctp/src/ctp_bspec.c
    alliance/src/ctp/src/ctp_bspec.h
    alliance/src/ctp/src/ctp_byacc.h
    alliance/src/ctp/src/ctp_l.l
    alliance/src/ctp/src/ctp_parse.c
    alliance/src/ctp/src/ctp_util.c
    alliance/src/ctp/src/ctp_util.h
    alliance/src/ctp/src/ctp_utype.h
    alliance/src/ctp/src/ctp_y.y
    alliance/src/ctp/src/main.c
    alliance/src/distrib/Makefile.am
    alliance/src/distrib/alliance.spec.in
    alliance/src/distrib/cd-root/Readme.html
    alliance/src/distrib/cd-root/alliance.ico
    alliance/src/distrib/cd-root/alliancelogo.gif
    alliance/src/distrib/cd-root/autorun
    alliance/src/distrib/cd-root/autorun.inf
    alliance/src/distrib/cd-root/cdrom.gif
    alliance/src/distrib/cd-root/wstart.exe
    alliance/src/distrib/configure.in
    alliance/src/distrib/doc/Makefile.am
    alliance/src/distrib/doc/alc_bug_report.1
    alliance/src/distrib/doc/alc_origin.1
    alliance/src/distrib/etc/Makefile.am
    alliance/src/distrib/etc/alc_env.csh.in
    alliance/src/distrib/etc/alc_env.sh.in
    alliance/src/distrib/mkdistrib
    alliance/src/distrib/myspec
    alliance/src/distrib/old/Alliance Home Page.url
    alliance/src/distrib/old/Linux.mk
    alliance/src/distrib/old/README.man
    alliance/src/distrib/old/TODO
    alliance/src/distrib/old/alc.buildlist
    alliance/src/distrib/old/alc.ext
    alliance/src/distrib/old/alc.responsables
    alliance/src/distrib/old/alc_env.bat
    alliance/src/distrib/old/alc_env.bat.in
    alliance/src/distrib/old/alc_env.csh
    alliance/src/distrib/old/alc_env.csh.in
    alliance/src/distrib/old/alc_env.sh
    alliance/src/distrib/old/alc_env.sh.in
    alliance/src/distrib/old/alliance-readme-after.txt
    alliance/src/distrib/old/alliance-readme-before.txt
    alliance/src/distrib/old/alliance.ico
    alliance/src/distrib/old/alliance.iss
    alliance/src/distrib/old/alliance.spec
    alliance/src/distrib/old/alliance_formats.1
    alliance/src/distrib/old/alliance_os.mk.in
    alliance/src/distrib/old/alliance_programming.1
    alliance/src/distrib/old/alliance_tools
    alliance/src/distrib/old/alliance_tools.1
    alliance/src/distrib/old/alliance_tools2
    alliance/src/distrib/old/alliance_tools3
    alliance/src/distrib/old/alliance_tools_news
    alliance/src/distrib/old/avcs.hhc
    alliance/src/distrib/old/avcs.hhk
    alliance/src/distrib/old/avcs.hhp
    alliance/src/distrib/old/configure.in.orig
    alliance/src/distrib/old/libraries.mk
    alliance/src/distrib/old/m2hlink
    alliance/src/distrib/old/man2html
    alliance/src/distrib/old/mk-distrib
    alliance/src/distrib/old/multibuild
    alliance/src/distrib/old/multibuild-nt
    alliance/src/distrib/old/multiconf
    alliance/src/distrib/old/mysed.pl
    alliance/src/distrib/old/spimodel.cfg
    alliance/src/distrib/old/whatis
    alliance/src/documentation/tutorials/place_and_route/src/Makefile
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/Makefile
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/amd2901_chip.c
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/amd2901_chip.rin
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/amd2901_core.c
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/amd2901_core.ioc
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/amd2901_ctl.lax
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/amd2901_ctl.vbe
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/amd2901_dpt.c
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/amd2901_dpt.vbe
    alliance/src/documentation/tutorials/place_and_route/src/amd2901/pattern.c
    alliance/src/documentation/tutorials/place_and_route/src/buffer/Makefile
    alliance/src/documentation/tutorials/place_and_route/src/buffer/buf_x2.ap
    alliance/src/documentation/tutorials/place_and_route/src/buffer/buffer.vbe
    alliance/src/documentation/tutorials/place_and_route/src/inversor/Makefile
    alliance/src/documentation/tutorials/place_and_route/src/inversor/inv_x1.ap
    alliance/src/documentation/tutorials/place_and_route/src/inversor/inversor.vbe
    alliance/src/documentation/tutorials/place_and_route/tex/Makefile
    alliance/src/documentation/tutorials/place_and_route/tex/amd2901.epsi
    alliance/src/documentation/tutorials/place_and_route/tex/bloc.fig
    alliance/src/documentation/tutorials/place_and_route/tex/buff_x1.fig
    alliance/src/documentation/tutorials/place_and_route/tex/colonnes.fig
    alliance/src/documentation/tutorials/place_and_route/tex/controleplace.fig
    alliance/src/documentation/tutorials/place_and_route/tex/dpt-all-1.fig
    alliance/src/documentation/tutorials/place_and_route/tex/gabarit2_sx.fig
    alliance/src/documentation/tutorials/place_and_route/tex/gabarit3_sx.fig
    alliance/src/documentation/tutorials/place_and_route/tex/gabarit_sx.fig
    alliance/src/documentation/tutorials/place_and_route/tex/hier.fig
    alliance/src/documentation/tutorials/place_and_route/tex/hierarchie.fig
    alliance/src/documentation/tutorials/place_and_route/tex/inv_x1.fig
    alliance/src/documentation/tutorials/place_and_route/tex/place_and_route.tex
    alliance/src/documentation/tutorials/place_and_route/tex/placement.fig
    alliance/src/documentation/tutorials/place_and_route/tex/preplacement.fig
    alliance/src/documentation/tutorials/place_and_route/tex/stick.fig
    alliance/src/documentation/tutorials/place_and_route.pdf
    alliance/src/documentation/tutorials/simulation/src/Makefile
    alliance/src/documentation/tutorials/simulation/src/addaccu_beh/Makefile
    alliance/src/documentation/tutorials/simulation/src/addaccu_beh/addaccu.vbe
    alliance/src/documentation/tutorials/simulation/src/addaccu_beh/addaccu_dly.vbe
    alliance/src/documentation/tutorials/simulation/src/addaccu_beh/patterns.pat
    alliance/src/documentation/tutorials/simulation/src/addaccu_beh/patterns_dly.pat
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/Makefile
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/accu.vbe
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/accu.vst
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/addaccu.vbe
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/addaccu.vst
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/alu.vbe
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/alu.vst
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/mux.vbe
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/mux.vst
    alliance/src/documentation/tutorials/simulation/src/addaccu_struct/pat_new.c
    alliance/src/documentation/tutorials/simulation/tex/Makefile
    alliance/src/documentation/tutorials/simulation/tex/addac.fig
    alliance/src/documentation/tutorials/simulation/tex/addac.jpg
    alliance/src/documentation/tutorials/simulation/tex/cpt3.epsi
    alliance/src/documentation/tutorials/simulation/tex/simulation.tex
    alliance/src/documentation/tutorials/simulation.pdf
    alliance/src/documentation/tutorials/synthesis/src/Makefile
    alliance/src/documentation/tutorials/synthesis/src/amd2901/Makefile
    alliance/src/documentation/tutorials/synthesis/src/amd2901/amd.vst
    alliance/src/documentation/tutorials/synthesis/src/amd2901/amd2901_chip.c
    alliance/src/documentation/tutorials/synthesis/src/amd2901/amd2901_core.c
    alliance/src/documentation/tutorials/synthesis/src/amd2901/amd2901_ctl.c
    alliance/src/documentation/tutorials/synthesis/src/amd2901/amd2901_ctl.vbe
    alliance/src/documentation/tutorials/synthesis/src/amd2901/amd2901_dpt.c
    alliance/src/documentation/tutorials/synthesis/src/amd2901/amd2901_dpt.vbe
    alliance/src/documentation/tutorials/synthesis/src/amd2901/circuit.c
    alliance/src/documentation/tutorials/synthesis/src/amd2901/data_path.c
    alliance/src/documentation/tutorials/synthesis/src/amd2901/pat.pat
    alliance/src/documentation/tutorials/synthesis/src/amd2901/pattern.c
    alliance/src/documentation/tutorials/synthesis/src/amd2901/pattern.pat
    alliance/src/documentation/tutorials/synthesis/src/amdbug/Makefile
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_0.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_1.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_10.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_11.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_12.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_13.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_14.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_15.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_16.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_17.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_18.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_19.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_2.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_20.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_21.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_22.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_23.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_24.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_3.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_4.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_5.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_6.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_7.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_8.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_9.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amd_ok.vbe
    alliance/src/documentation/tutorials/synthesis/src/amdbug/amdfindbug.c
    alliance/src/documentation/tutorials/synthesis/src/digicode/Makefile
    alliance/src/documentation/tutorials/synthesis/src/digicode/digicode.fsm
    alliance/src/documentation/tutorials/synthesis/src/digicode/digicode.pat
    alliance/src/documentation/tutorials/synthesis/src/digicode/paramfile.lax
    alliance/src/documentation/tutorials/synthesis/src/digicode/scan.path
    alliance/src/documentation/tutorials/synthesis/src/meter5/Makefile
    alliance/src/documentation/tutorials/synthesis/src/meter5/cpt5.fsm
    alliance/src/documentation/tutorials/synthesis/src/meter5/cpt5.pat
    alliance/src/documentation/tutorials/synthesis/tex/Makefile
    alliance/src/documentation/tutorials/synthesis/tex/T_RC.fig
    alliance/src/documentation/tutorials/synthesis/tex/amd2901.epsi
    alliance/src/documentation/tutorials/synthesis/tex/automate.fig
    alliance/src/documentation/tutorials/synthesis/tex/bloc.fig
    alliance/src/documentation/tutorials/synthesis/tex/clavier.fig
    alliance/src/documentation/tutorials/synthesis/tex/ctl-alu-1.fig
    alliance/src/documentation/tutorials/synthesis/tex/ctl-mrs-1.fig
    alliance/src/documentation/tutorials/synthesis/tex/ctl-wen-1.fig
    alliance/src/documentation/tutorials/synthesis/tex/ctldecode.fig
    alliance/src/documentation/tutorials/synthesis/tex/ctldecodebw.fig
    alliance/src/documentation/tutorials/synthesis/tex/datap.fig
    alliance/src/documentation/tutorials/synthesis/tex/dpt-all-1.fig
    alliance/src/documentation/tutorials/synthesis/tex/dpt-alu-1.fig
    alliance/src/documentation/tutorials/synthesis/tex/dptbanc.fig
    alliance/src/documentation/tutorials/synthesis/tex/ex_digicode.fig
    alliance/src/documentation/tutorials/synthesis/tex/exemple1.fig
    alliance/src/documentation/tutorials/synthesis/tex/exemple2.fig
    alliance/src/documentation/tutorials/synthesis/tex/graphe1.fig
    alliance/src/documentation/tutorials/synthesis/tex/graphe_solution_digicode.fig
    alliance/src/documentation/tutorials/synthesis/tex/hier.fig
    alliance/src/documentation/tutorials/synthesis/tex/synthese.fig
    alliance/src/documentation/tutorials/synthesis/tex/synthesis.tex
    alliance/src/documentation/tutorials/synthesis.pdf
    alliance/src/dreal/Makefile.am
    alliance/src/dreal/configure.in
    alliance/src/dreal/etc/Makefile.am
    alliance/src/dreal/etc/cmos.dreal
    alliance/src/dreal/man1/Makefile.am
    alliance/src/dreal/man1/dreal.1
    alliance/src/dreal/src/GMC.h
    alliance/src/dreal/src/GMC_create.c
    alliance/src/dreal/src/GMC_create.h
    alliance/src/dreal/src/GMC_dialog.c
    alliance/src/dreal/src/GMC_dialog.h
    alliance/src/dreal/src/GMC_menu.c
    alliance/src/dreal/src/GMC_menu.h
    alliance/src/dreal/src/GMC_message.c
    alliance/src/dreal/src/GMC_message.h
    alliance/src/dreal/src/GMC_panel.c
    alliance/src/dreal/src/GMC_panel.h
    alliance/src/dreal/src/GME.h
    alliance/src/dreal/src/GME_dialog.c
    alliance/src/dreal/src/GME_dialog.h
    alliance/src/dreal/src/GME_edit.c
    alliance/src/dreal/src/GME_edit.h
    alliance/src/dreal/src/GME_menu.c
    alliance/src/dreal/src/GME_menu.h
    alliance/src/dreal/src/GME_message.c
    alliance/src/dreal/src/GME_message.h
    alliance/src/dreal/src/GME_modify.c
    alliance/src/dreal/src/GME_modify.h
    alliance/src/dreal/src/GME_panel.c
    alliance/src/dreal/src/GME_panel.h
    alliance/src/dreal/src/GME_search.c
    alliance/src/dreal/src/GME_search.h
    alliance/src/dreal/src/GME_select.c
    alliance/src/dreal/src/GME_select.h
    alliance/src/dreal/src/GMF.h
    alliance/src/dreal/src/GMF_dialog.c
    alliance/src/dreal/src/GMF_dialog.h
    alliance/src/dreal/src/GMF_file.c
    alliance/src/dreal/src/GMF_file.h
    alliance/src/dreal/src/GMF_menu.c
    alliance/src/dreal/src/GMF_menu.h
    alliance/src/dreal/src/GMF_panel.c
    alliance/src/dreal/src/GMF_panel.h
    alliance/src/dreal/src/GMH.h
    alliance/src/dreal/src/GMH_help.c
    alliance/src/dreal/src/GMH_help.h
    alliance/src/dreal/src/GMH_menu.c
    alliance/src/dreal/src/GMH_menu.h
    alliance/src/dreal/src/GMH_panel.c
    alliance/src/dreal/src/GMH_panel.h
    alliance/src/dreal/src/GMS.h
    alliance/src/dreal/src/GMS_dialog.c
    alliance/src/dreal/src/GMS_dialog.h
    alliance/src/dreal/src/GMS_menu.c
    alliance/src/dreal/src/GMS_menu.h
    alliance/src/dreal/src/GMS_panel.c
    alliance/src/dreal/src/GMS_panel.h
    alliance/src/dreal/src/GMS_setup.c
    alliance/src/dreal/src/GMS_setup.h
    alliance/src/dreal/src/GMT.h
    alliance/src/dreal/src/GMT_dialog.c
    alliance/src/dreal/src/GMT_dialog.h
    alliance/src/dreal/src/GMT_menu.c
    alliance/src/dreal/src/GMT_menu.h
    alliance/src/dreal/src/GMT_message.c
    alliance/src/dreal/src/GMT_message.h
    alliance/src/dreal/src/GMT_panel.c
    alliance/src/dreal/src/GMT_panel.h
    alliance/src/dreal/src/GMT_tools.c
    alliance/src/dreal/src/GMT_tools.h
    alliance/src/dreal/src/GMV.h
    alliance/src/dreal/src/GMV_dialog.c
    alliance/src/dreal/src/GMV_dialog.h
    alliance/src/dreal/src/GMV_map.c
    alliance/src/dreal/src/GMV_map.h
    alliance/src/dreal/src/GMV_menu.c
    alliance/src/dreal/src/GMV_menu.h
    alliance/src/dreal/src/GMV_message.c
    alliance/src/dreal/src/GMV_message.h
    alliance/src/dreal/src/GMV_panel.c
    alliance/src/dreal/src/GMV_panel.h
    alliance/src/dreal/src/GMV_view.c
    alliance/src/dreal/src/GMV_view.h
    alliance/src/dreal/src/GMX.h
    alliance/src/dreal/src/GMX_color.c
    alliance/src/dreal/src/GMX_color.h
    alliance/src/dreal/src/GMX_cursor.c
    alliance/src/dreal/src/GMX_cursor.h
    alliance/src/dreal/src/GMX_dialog.c
    alliance/src/dreal/src/GMX_dialog.h
    alliance/src/dreal/src/GMX_event.c
    alliance/src/dreal/src/GMX_event.h
    alliance/src/dreal/src/GMX_graphic.c
    alliance/src/dreal/src/GMX_graphic.h
    alliance/src/dreal/src/GMX_grid.c
    alliance/src/dreal/src/GMX_grid.h
    alliance/src/dreal/src/GMX_icon.c
    alliance/src/dreal/src/GMX_icon.h
    alliance/src/dreal/src/GMX_menu.c
    alliance/src/dreal/src/GMX_menu.h
    alliance/src/dreal/src/GMX_message.c
    alliance/src/dreal/src/GMX_message.h
    alliance/src/dreal/src/GMX_motif.c
    alliance/src/dreal/src/GMX_motif.h
    alliance/src/dreal/src/GMX_panel.c
    alliance/src/dreal/src/GMX_panel.h
    alliance/src/dreal/src/GMX_view.c
    alliance/src/dreal/src/GMX_view.h
    alliance/src/dreal/src/GRD.h
    alliance/src/dreal/src/GRD_error.c
    alliance/src/dreal/src/GRD_error.h
    alliance/src/dreal/src/GRD_rds.c
    alliance/src/dreal/src/GRD_rds.h
    alliance/src/dreal/src/GRD_search.c
    alliance/src/dreal/src/GRD_search.h
    alliance/src/dreal/src/GRD_select.c
    alliance/src/dreal/src/GRD_select.h
    alliance/src/dreal/src/GRD_undo.c
    alliance/src/dreal/src/GRD_undo.h
    alliance/src/dreal/src/GRD_window.c
    alliance/src/dreal/src/GRD_window.h
    alliance/src/dreal/src/GSB.h
    alliance/src/dreal/src/GSB_error.c
    alliance/src/dreal/src/GSB_error.h
    alliance/src/dreal/src/GSB_parse.c
    alliance/src/dreal/src/GSB_parse.h
    alliance/src/dreal/src/GSB_share.c
    alliance/src/dreal/src/GSB_share.h
    alliance/src/dreal/src/GTB.h
    alliance/src/dreal/src/GTB_cursor.c
    alliance/src/dreal/src/GTB_cursor.h
    alliance/src/dreal/src/GTB_dialog.c
    alliance/src/dreal/src/GTB_dialog.h
    alliance/src/dreal/src/GTB_icon.c
    alliance/src/dreal/src/GTB_icon.h
    alliance/src/dreal/src/GTB_menu.c
    alliance/src/dreal/src/GTB_menu.h
    alliance/src/dreal/src/GTB_panel.c
    alliance/src/dreal/src/GTB_panel.h
    alliance/src/dreal/src/GTB_pixmap.c
    alliance/src/dreal/src/GTB_pixmap.h
    alliance/src/dreal/src/LIP6bw.h
    alliance/src/dreal/src/Makefile.am
    alliance/src/dreal/src/dreal.c
    alliance/src/dreal/src/dreal.h
    alliance/src/druc/Makefile.am
    alliance/src/druc/configure.in
    alliance/src/druc/man1/Makefile.am
    alliance/src/druc/man1/druc.1
    alliance/src/druc/src/Makefile.am
    alliance/src/druc/src/defdefin.c
    alliance/src/druc/src/defdefin.h
    alliance/src/druc/src/defexclu.c
    alliance/src/druc/src/defexclu.h
    alliance/src/druc/src/definclu.c
    alliance/src/druc/src/definclu.h
    alliance/src/druc/src/definter.c
    alliance/src/druc/src/definter.h
    alliance/src/druc/src/defresiz.c
    alliance/src/druc/src/defresiz.h
    alliance/src/druc/src/deftools.c
    alliance/src/druc/src/deftools.h
    alliance/src/druc/src/defunion.c
    alliance/src/druc/src/defunion.h
    alliance/src/druc/src/drucbath.c
    alliance/src/druc/src/drucbath.h
    alliance/src/druc/src/drucgral.c
    alliance/src/druc/src/drucgral_test.c
    alliance/src/druc/src/druchier.c
    alliance/src/druc/src/druchier.h
    alliance/src/druc/src/drucmin.c
    alliance/src/druc/src/drucmin.h
    alliance/src/druc/src/drucompi.c
    alliance/src/druc/src/drucompi.h
    alliance/src/druc/src/drucompi_l.l
    alliance/src/druc/src/drucompi_y.y
    alliance/src/druc/src/drucring.c
    alliance/src/druc/src/drucring.h
    alliance/src/druc/src/drucutil.c
    alliance/src/druc/src/drucutil.h
    alliance/src/druc/src/vmcaract.c
    alliance/src/druc/src/vmcaract.h
    alliance/src/druc/src/vmcasmld.c
    alliance/src/druc/src/vmcasmld.h
    alliance/src/druc/src/vmcerror.c
    alliance/src/druc/src/vmcerror.h
    alliance/src/druc/src/vmcmesur.c
    alliance/src/druc/src/vmcmesur.h
    alliance/src/druc/src/vmcrelat.c
    alliance/src/druc/src/vmcrelat.h
    alliance/src/druc/src/vmctools.c
    alliance/src/druc/src/vmctools.h
    alliance/src/druc/src/vmcunify.c
    alliance/src/druc/src/vmcunify.h
    alliance/src/druc/src/vrd.h
    alliance/src/elp/Makefile.am
    alliance/src/elp/configure.in
    alliance/src/elp/etc/Makefile.am
    alliance/src/elp/etc/prol.elp
    alliance/src/elp/src/Makefile
    alliance/src/elp/src/Makefile.am
    alliance/src/elp/src/elp.c
    alliance/src/elp/src/elp.h
    alliance/src/elp/src/elp_l.l
    alliance/src/elp/src/elp_y.y
    alliance/src/elp/src/elperror.c
    alliance/src/exp/Makefile.am
    alliance/src/exp/configure.in
    alliance/src/exp/doc/Makefile.am
    alliance/src/exp/doc/exp.1
    alliance/src/exp/src/Makefile.am
    alliance/src/exp/src/exp.h
    alliance/src/exp/src/expl.l
    alliance/src/exp/src/expy.y
    alliance/src/exp/src/ht.c
    alliance/src/exp/src/ht.h
    alliance/src/exp/src/main.c
    alliance/src/fks/Makefile.am
    alliance/src/fks/configure.in
    alliance/src/fks/src/Makefile.am
    alliance/src/fks/src/fks.h
    alliance/src/fks/src/fksdrive.c
    alliance/src/fks/src/fksdrive.h
    alliance/src/fks/src/fkserror.c
    alliance/src/fks/src/fkserror.h
    alliance/src/fks/src/fksparse.c
    alliance/src/fks/src/fksparse.h
    alliance/src/flatbeh/Makefile.am
    alliance/src/flatbeh/configure.in
    alliance/src/flatbeh/doc/Makefile.am
    alliance/src/flatbeh/doc/abstract.1
    alliance/src/flatbeh/doc/flatbeh.1
    alliance/src/flatbeh/src/Makefile.am
    alliance/src/flatbeh/src/abstract.c
    alliance/src/flatbeh/src/abstract.h
    alliance/src/flatbeh/src/main.c
    alliance/src/flatbeh/src/utils.c
    alliance/src/flatbeh/src/utils.h
    alliance/src/flatlo/Makefile.am
    alliance/src/flatlo/configure.in
    alliance/src/flatlo/doc/Makefile.am
    alliance/src/flatlo/doc/flatlo.1
    alliance/src/flatlo/src/Makefile.am
    alliance/src/flatlo/src/flatlo.c
    alliance/src/flatph/Makefile.am
    alliance/src/flatph/configure.in
    alliance/src/flatph/doc/Makefile.am
    alliance/src/flatph/doc/flatph.1
    alliance/src/flatph/src/Makefile.am
    alliance/src/flatph/src/flatph.c
    alliance/src/fmi/Makefile.am
    alliance/src/fmi/configure.in
    alliance/src/fmi/man1/Makefile.am
    alliance/src/fmi/man1/fmi.1
    alliance/src/fmi/src/Makefile.am
    alliance/src/fmi/src/fmi_bdd.c
    alliance/src/fmi/src/fmi_bdd.h
    alliance/src/fmi/src/fmi_main.c
    alliance/src/fmi/src/fmi_main.h
    alliance/src/fmi/src/fmi_optim.c
    alliance/src/fmi/src/fmi_optim.h
    alliance/src/fmi/src/fmi_parse.c
    alliance/src/fmi/src/fmi_parse.h
    alliance/src/fsm/Makefile.am
    alliance/src/fsm/configure.in
    alliance/src/fsm/man1/Makefile.am
    alliance/src/fsm/man1/fsm.1
    alliance/src/fsm/man5/Makefile.am
    alliance/src/fsm/man5/fsm.5
    alliance/src/fsm/src/Makefile.am
    alliance/src/fsm/src/fsm.h
    alliance/src/fsm/src/fsmadd.c
    alliance/src/fsm/src/fsmadd.h
    alliance/src/fsm/src/fsmalloc.c
    alliance/src/fsm/src/fsmalloc.h
    alliance/src/fsm/src/fsmbdd.c
    alliance/src/fsm/src/fsmbdd.h
    alliance/src/fsm/src/fsmdel.c
    alliance/src/fsm/src/fsmdel.h
    alliance/src/fsm/src/fsmerror.c
    alliance/src/fsm/src/fsmerror.h
    alliance/src/fsm/src/fsmfree.c
    alliance/src/fsm/src/fsmfree.h
    alliance/src/fsm/src/fsmorder.c
    alliance/src/fsm/src/fsmorder.h
    alliance/src/fsm/src/fsmsearch.c
    alliance/src/fsm/src/fsmsearch.h
    alliance/src/fsm/src/fsmsimp.c
    alliance/src/fsm/src/fsmsimp.h
    alliance/src/fsm/src/fsmview.c
    alliance/src/fsm/src/fsmview.h
    alliance/src/fsm/src/main.c
    alliance/src/fsp/Makefile.am
    alliance/src/fsp/configure.in
    alliance/src/fsp/man1/Makefile.am
    alliance/src/fsp/man1/fsp.1
    alliance/src/fsp/src/Makefile.am
    alliance/src/fsp/src/fsp_comp.c
    alliance/src/fsp/src/fsp_comp.h
    alliance/src/fsp/src/fsp_debug.c
    alliance/src/fsp/src/fsp_debug.h
    alliance/src/fsp/src/fsp_main.c
    alliance/src/fsp/src/fsp_main.h
    alliance/src/fsp/src/fsp_proof.c
    alliance/src/fsp/src/fsp_proof.h
    alliance/src/ftl/Makefile.am
    alliance/src/ftl/configure.in
    alliance/src/ftl/src/Makefile.am
    alliance/src/ftl/src/ftl.h
    alliance/src/ftl/src/ftlacces.c
    alliance/src/ftl/src/ftlacces.h
    alliance/src/ftl/src/ftlerror.c
    alliance/src/ftl/src/ftlerror.h
    alliance/src/ftl/src/main.c
    alliance/src/fvh/Makefile.am
    alliance/src/fvh/configure.in
    alliance/src/fvh/src/Makefile.am
    alliance/src/fvh/src/fbh_add.c
    alliance/src/fvh/src/fbh_del.c
    alliance/src/fvh/src/fbh_env.c
    alliance/src/fvh/src/fbh_fre.c
    alliance/src/fvh/src/fbh_rin.c
    alliance/src/fvh/src/fbh_rmv.c
    alliance/src/fvh/src/fbh_typ.c
    alliance/src/fvh/src/fbh_uti.c
    alliance/src/fvh/src/fbh_view.c
    alliance/src/fvh/src/fbl_bcomp_l.l
    alliance/src/fvh/src/fbl_bcomp_y.y
    alliance/src/fvh/src/fbl_bedef.h
    alliance/src/fvh/src/fbl_blex.h
    alliance/src/fvh/src/fbl_bspec.c
    alliance/src/fvh/src/fbl_bspec.h
    alliance/src/fvh/src/fbl_byacc.h
    alliance/src/fvh/src/fbl_drive.c
    alliance/src/fvh/src/fbl_drive.h
    alliance/src/fvh/src/fbl_utdef.h
    alliance/src/fvh/src/fbl_util.c
    alliance/src/fvh/src/fbl_util.h
    alliance/src/fvh/src/fbl_utype.h
    alliance/src/fvh/src/fvh.h
    alliance/src/fvh/src/fvhdrive.c
    alliance/src/fvh/src/fvhdrive.h
    alliance/src/fvh/src/fvherror.c
    alliance/src/fvh/src/fvherror.h
    alliance/src/fvh/src/fvhfbh2fsm.c
    alliance/src/fvh/src/fvhfbh2fsm.h
    alliance/src/fvh/src/fvhparse.c
    alliance/src/fvh/src/fvhparse.h
    alliance/src/gcp/Makefile.am
    alliance/src/gcp/configure.in
    alliance/src/gcp/src/Makefile.am
    alliance/src/gcp/src/c_ccomp.y
    alliance/src/gcp/src/c_cdecl.c
    alliance/src/gcp/src/c_cdecl.h
    alliance/src/gcp/src/c_clex.c
    alliance/src/gcp/src/c_clex.h
    alliance/src/gcp/src/c_common.c
    alliance/src/gcp/src/c_common.h
    alliance/src/gcp/src/c_convert.c
    alliance/src/gcp/src/c_convert.h
    alliance/src/gcp/src/c_ctypeck.c
    alliance/src/gcp/src/c_ctypeck.h
    alliance/src/gcp/src/c_debug.c
    alliance/src/gcp/src/c_debug.h
    alliance/src/gcp/src/c_expand.c
    alliance/src/gcp/src/c_expand.h
    alliance/src/gcp/src/c_flags.c
    alliance/src/gcp/src/c_flags.h
    alliance/src/gcp/src/c_foldconst.c
    alliance/src/gcp/src/c_foldconst.h
    alliance/src/gcp/src/c_gperf.h
    alliance/src/gcp/src/c_parse.c
    alliance/src/gcp/src/c_parse.h
    alliance/src/gcp/src/c_stmt.c
    alliance/src/gcp/src/c_stmt.h
    alliance/src/gcp/src/c_tree.c
    alliance/src/gcp/src/c_tree.h
    alliance/src/gcp/src/c_treecompat.h
    alliance/src/gcp/src/gcp.h
    alliance/src/gcp/src/main.c
    alliance/src/genlib/Makefile.am
    alliance/src/genlib/configure.in
    alliance/src/genlib/doc/Makefile.am
    alliance/src/genlib/doc/build_doc.sh
    alliance/src/genlib/doc/genlib/Makefile.am
    alliance/src/genlib/doc/genlib/genlib.html
    alliance/src/genlib/doc/genlib/man_dpgen_adsb2f.html
    alliance/src/genlib/doc/genlib/man_dpgen_and2.html
    alliance/src/genlib/doc/genlib/man_dpgen_and3.html
    alliance/src/genlib/doc/genlib/man_dpgen_and4.html
    alliance/src/genlib/doc/genlib/man_dpgen_buff.html
    alliance/src/genlib/doc/genlib/man_dpgen_buse.html
    alliance/src/genlib/doc/genlib/man_dpgen_const.html
    alliance/src/genlib/doc/genlib/man_dpgen_dff.html
    alliance/src/genlib/doc/genlib/man_dpgen_dfft.html
    alliance/src/genlib/doc/genlib/man_dpgen_inv.html
    alliance/src/genlib/doc/genlib/man_dpgen_mux2.html
    alliance/src/genlib/doc/genlib/man_dpgen_nand2.html
    alliance/src/genlib/doc/genlib/man_dpgen_nand2mask.html
    alliance/src/genlib/doc/genlib/man_dpgen_nand3.html
    alliance/src/genlib/doc/genlib/man_dpgen_nand4.html
    alliance/src/genlib/doc/genlib/man_dpgen_nbuse.html
    alliance/src/genlib/doc/genlib/man_dpgen_nmux2.html
    alliance/src/genlib/doc/genlib/man_dpgen_nor2.html
    alliance/src/genlib/doc/genlib/man_dpgen_nor2mask.html
    alliance/src/genlib/doc/genlib/man_dpgen_nor3.html
    alliance/src/genlib/doc/genlib/man_dpgen_nor4.html
    alliance/src/genlib/doc/genlib/man_dpgen_nul.html
    alliance/src/genlib/doc/genlib/man_dpgen_or2.html
    alliance/src/genlib/doc/genlib/man_dpgen_or3.html
    alliance/src/genlib/doc/genlib/man_dpgen_or4.html
    alliance/src/genlib/doc/genlib/man_dpgen_rf1.html
    alliance/src/genlib/doc/genlib/man_dpgen_rf1d.html
    alliance/src/genlib/doc/genlib/man_dpgen_rom2.html
    alliance/src/genlib/doc/genlib/man_dpgen_rom4.html
    alliance/src/genlib/doc/genlib/man_dpgen_sff.html
    alliance/src/genlib/doc/genlib/man_dpgen_sfft.html
    alliance/src/genlib/doc/genlib/man_dpgen_shift.html
    alliance/src/genlib/doc/genlib/man_dpgen_xnor2.html
    alliance/src/genlib/doc/genlib/man_dpgen_xnor2mask.html
    alliance/src/genlib/doc/genlib/man_dpgen_xor2.html
    alliance/src/genlib/doc/genlib/man_genlib.html
    alliance/src/genlib/doc/genlib/man_genlib_macro.html
    alliance/src/genlib/doc/genlib/ref_genlib.html
    alliance/src/genlib/doc/genlib/stylesheet-images/caution.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/home.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/important.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/next.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/note.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/prev.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/tip.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/toc-blank.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/toc-minus.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/toc-plus.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/up.gif
    alliance/src/genlib/doc/genlib/stylesheet-images/warning.gif
    alliance/src/genlib/doc/genlib.pdf
    alliance/src/genlib/doc/genlib.sgm
    alliance/src/genlib/doc/man_dpgen_adsb2f.sgm
    alliance/src/genlib/doc/man_dpgen_and2.sgm
    alliance/src/genlib/doc/man_dpgen_and3.sgm
    alliance/src/genlib/doc/man_dpgen_and4.sgm
    alliance/src/genlib/doc/man_dpgen_buff.sgm
    alliance/src/genlib/doc/man_dpgen_buse.sgm
    alliance/src/genlib/doc/man_dpgen_const.sgm
    alliance/src/genlib/doc/man_dpgen_dff.sgm
    alliance/src/genlib/doc/man_dpgen_dfft.sgm
    alliance/src/genlib/doc/man_dpgen_inv.sgm
    alliance/src/genlib/doc/man_dpgen_mux2.sgm
    alliance/src/genlib/doc/man_dpgen_nand2.sgm
    alliance/src/genlib/doc/man_dpgen_nand2mask.sgm
    alliance/src/genlib/doc/man_dpgen_nand3.sgm
    alliance/src/genlib/doc/man_dpgen_nand4.sgm
    alliance/src/genlib/doc/man_dpgen_nbuse.sgm
    alliance/src/genlib/doc/man_dpgen_nmux2.sgm
    alliance/src/genlib/doc/man_dpgen_nor2.sgm
    alliance/src/genlib/doc/man_dpgen_nor2mask.sgm
    alliance/src/genlib/doc/man_dpgen_nor3.sgm
    alliance/src/genlib/doc/man_dpgen_nor4.sgm
    alliance/src/genlib/doc/man_dpgen_nul.sgm
    alliance/src/genlib/doc/man_dpgen_or2.sgm
    alliance/src/genlib/doc/man_dpgen_or3.sgm
    alliance/src/genlib/doc/man_dpgen_or4.sgm
    alliance/src/genlib/doc/man_dpgen_rf1.sgm
    alliance/src/genlib/doc/man_dpgen_rf1d.sgm
    alliance/src/genlib/doc/man_dpgen_rom2.sgm
    alliance/src/genlib/doc/man_dpgen_rom4.sgm
    alliance/src/genlib/doc/man_dpgen_see_also.sgm
    alliance/src/genlib/doc/man_dpgen_sff.sgm
    alliance/src/genlib/doc/man_dpgen_sfft.sgm
    alliance/src/genlib/doc/man_dpgen_shift.sgm
    alliance/src/genlib/doc/man_dpgen_shrot.sgm
    alliance/src/genlib/doc/man_dpgen_xnor2.sgm
    alliance/src/genlib/doc/man_dpgen_xnor2mask.sgm
    alliance/src/genlib/doc/man_dpgen_xor2.sgm
    alliance/src/genlib/doc/man_genlib.sgm
    alliance/src/genlib/doc/man_genlib_macro.sgm
    alliance/src/genlib/man1/Makefile.am
    alliance/src/genlib/man1/genlib.1
    alliance/src/genlib/man3/DPGEN_ADSB2F.3
    alliance/src/genlib/man3/DPGEN_AND2.3
    alliance/src/genlib/man3/DPGEN_AND3.3
    alliance/src/genlib/man3/DPGEN_AND4.3
    alliance/src/genlib/man3/DPGEN_BUFF.3
    alliance/src/genlib/man3/DPGEN_BUSE.3
    alliance/src/genlib/man3/DPGEN_CONST.3
    alliance/src/genlib/man3/DPGEN_DFF.3
    alliance/src/genlib/man3/DPGEN_DFFT.3
    alliance/src/genlib/man3/DPGEN_INV.3
    alliance/src/genlib/man3/DPGEN_MUX2.3
    alliance/src/genlib/man3/DPGEN_NAND2.3
    alliance/src/genlib/man3/DPGEN_NAND2MASK.3
    alliance/src/genlib/man3/DPGEN_NAND3.3
    alliance/src/genlib/man3/DPGEN_NAND4.3
    alliance/src/genlib/man3/DPGEN_NBUSE.3
    alliance/src/genlib/man3/DPGEN_NMUX2.3
    alliance/src/genlib/man3/DPGEN_NOR2.3
    alliance/src/genlib/man3/DPGEN_NOR2MASK.3
    alliance/src/genlib/man3/DPGEN_NOR3.3
    alliance/src/genlib/man3/DPGEN_NOR4.3
    alliance/src/genlib/man3/DPGEN_NUL.3
    alliance/src/genlib/man3/DPGEN_OR2.3
    alliance/src/genlib/man3/DPGEN_OR3.3
    alliance/src/genlib/man3/DPGEN_OR4.3
    alliance/src/genlib/man3/DPGEN_RF1.3
    alliance/src/genlib/man3/DPGEN_RF1D.3
    alliance/src/genlib/man3/DPGEN_ROM2.3
    alliance/src/genlib/man3/DPGEN_ROM4.3
    alliance/src/genlib/man3/DPGEN_SFF.3
    alliance/src/genlib/man3/DPGEN_SFFT.3
    alliance/src/genlib/man3/DPGEN_SHIFT.3
    alliance/src/genlib/man3/DPGEN_SHROT.3
    alliance/src/genlib/man3/DPGEN_XNOR2.3
    alliance/src/genlib/man3/DPGEN_XNOR2MASK.3
    alliance/src/genlib/man3/DPGEN_XOR2.3
    alliance/src/genlib/man3/GENLIB_BUS.3
    alliance/src/genlib/man3/GENLIB_COPY_UP_ALL_CON.3
    alliance/src/genlib/man3/GENLIB_COPY_UP_ALL_REF.3
    alliance/src/genlib/man3/GENLIB_COPY_UP_CON.3
    alliance/src/genlib/man3/GENLIB_COPY_UP_CON_FACE.3
    alliance/src/genlib/man3/GENLIB_COPY_UP_REF.3
    alliance/src/genlib/man3/GENLIB_COPY_UP_SEG.3
    alliance/src/genlib/man3/GENLIB_DEF_AB.3
    alliance/src/genlib/man3/GENLIB_DEF_LOFIG.3
    alliance/src/genlib/man3/GENLIB_DEF_PHFIG.3
    alliance/src/genlib/man3/GENLIB_DEF_PHINS.3
    alliance/src/genlib/man3/GENLIB_DEF_PHSC.3
    alliance/src/genlib/man3/GENLIB_ELM.3
    alliance/src/genlib/man3/GENLIB_FLATTEN_ALL_LOINS.3
    alliance/src/genlib/man3/GENLIB_FLATTEN_ALL_PHINS.3
    alliance/src/genlib/man3/GENLIB_FLATTEN_LOFIG.3
    alliance/src/genlib/man3/GENLIB_FLATTEN_PHFIG.3
    alliance/src/genlib/man3/GENLIB_GET_CON_X.3
    alliance/src/genlib/man3/GENLIB_GET_CON_Y.3
    alliance/src/genlib/man3/GENLIB_GET_INS_X.3
    alliance/src/genlib/man3/GENLIB_GET_INS_Y.3
    alliance/src/genlib/man3/GENLIB_GET_REF_X.3
    alliance/src/genlib/man3/GENLIB_GET_REF_Y.3
    alliance/src/genlib/man3/GENLIB_HEIGHT.3
    alliance/src/genlib/man3/GENLIB_LOAD_LOFIG.3
    alliance/src/genlib/man3/GENLIB_LOAD_PHFIG.3
    alliance/src/genlib/man3/GENLIB_LOCAP.3
    alliance/src/genlib/man3/GENLIB_LOCON.3
    alliance/src/genlib/man3/GENLIB_LOINS.3
    alliance/src/genlib/man3/GENLIB_LOINSE.3
    alliance/src/genlib/man3/GENLIB_LORES.3
    alliance/src/genlib/man3/GENLIB_LOSELF.3
    alliance/src/genlib/man3/GENLIB_LOSIG.3
    alliance/src/genlib/man3/GENLIB_LOSIGMERGE.3
    alliance/src/genlib/man3/GENLIB_LOTRS.3
    alliance/src/genlib/man3/GENLIB_MACRO.3
    alliance/src/genlib/man3/GENLIB_OUTLINE.3
    alliance/src/genlib/man3/GENLIB_PHCON.3
    alliance/src/genlib/man3/GENLIB_PHREF.3
    alliance/src/genlib/man3/GENLIB_PHSEG.3
    alliance/src/genlib/man3/GENLIB_PHVIA.3
    alliance/src/genlib/man3/GENLIB_PLACE.3
    alliance/src/genlib/man3/GENLIB_PLACE_BOTTOM.3
    alliance/src/genlib/man3/GENLIB_PLACE_CON_REF.3
    alliance/src/genlib/man3/GENLIB_PLACE_LEFT.3
    alliance/src/genlib/man3/GENLIB_PLACE_ON.3
    alliance/src/genlib/man3/GENLIB_PLACE_RIGHT.3
    alliance/src/genlib/man3/GENLIB_PLACE_SEG_REF.3
    alliance/src/genlib/man3/GENLIB_PLACE_TOP.3
    alliance/src/genlib/man3/GENLIB_PLACE_VIA_REF.3
    alliance/src/genlib/man3/GENLIB_REVERSE_PHCON.3
    alliance/src/genlib/man3/GENLIB_SAVE_LOFIG.3
    alliance/src/genlib/man3/GENLIB_SAVE_PHFIG.3
    alliance/src/genlib/man3/GENLIB_SAVE_PHSC.3
    alliance/src/genlib/man3/GENLIB_SC_BOTTOM.3
    alliance/src/genlib/man3/GENLIB_SC_LEFT.3
    alliance/src/genlib/man3/GENLIB_SC_PLACE.3
    alliance/src/genlib/man3/GENLIB_SC_RIGHT.3
    alliance/src/genlib/man3/GENLIB_SC_TOP.3
    alliance/src/genlib/man3/GENLIB_SET_LOCAP.3
    alliance/src/genlib/man3/GENLIB_SET_LORES.3
    alliance/src/genlib/man3/GENLIB_SET_LOSELF.3
    alliance/src/genlib/man3/GENLIB_UNFLATTEN_LOFIG.3
    alliance/src/genlib/man3/GENLIB_WIRE1.3
    alliance/src/genlib/man3/GENLIB_WIRE2.3
    alliance/src/genlib/man3/GENLIB_WIRE3.3
    alliance/src/genlib/man3/Makefile.am
    alliance/src/genlib/src/GNU_Defs.h
    alliance/src/genlib/src/Makefile.am
    alliance/src/genlib/src/debugoff.h
    alliance/src/genlib/src/debugon.h
    alliance/src/genlib/src/dgn.h
    alliance/src/genlib/src/dpgen_Adder.c
    alliance/src/genlib/src/dpgen_Defs.h
    alliance/src/genlib/src/dpgen_Macro.c
    alliance/src/genlib/src/dpgen_Nul.c
    alliance/src/genlib/src/dpgen_RAM.c
    alliance/src/genlib/src/dpgen_RF1.c
    alliance/src/genlib/src/dpgen_RF2.c
    alliance/src/genlib/src/dpgen_ROM.c
    alliance/src/genlib/src/dpgen_ROM_code.y
    alliance/src/genlib/src/dpgen_Regular.c
    alliance/src/genlib/src/dpgen_Shifter.c
    alliance/src/genlib/src/dpgen_uROM.c
    alliance/src/genlib/src/genlib.c
    alliance/src/genlib/src/genlib.h
    alliance/src/genlib/src/genlib.sh
    alliance/src/genlib/src/mbkgen.h
    alliance/src/genlib/src/mgn.h
    alliance/src/genlib/src/util_Const.c
    alliance/src/genlib/src/util_Defs.h
    alliance/src/genlib/src/util_Genlib.c
    alliance/src/genlib/src/util_Misc.c
    alliance/src/genlib/src/util_Sys.c
    alliance/src/genpat/Makefile.am
    alliance/src/genpat/configure.in
    alliance/src/genpat/doc/Makefile.am
    alliance/src/genpat/doc/man1/Makefile.am
    alliance/src/genpat/doc/man1/genpat.1
    alliance/src/genpat/doc/man3/AFFECT.3
    alliance/src/genpat/doc/man3/ARRAY.3
    alliance/src/genpat/doc/man3/DECLAR.3
    alliance/src/genpat/doc/man3/DEF_GENPAT.3
    alliance/src/genpat/doc/man3/GETCPAT.3
    alliance/src/genpat/doc/man3/INIT.3
    alliance/src/genpat/doc/man3/LABEL.3
    alliance/src/genpat/doc/man3/Makefile.am
    alliance/src/genpat/doc/man3/SAVE.3
    alliance/src/genpat/src/AFFECT.c
    alliance/src/genpat/src/ARRAY.c
    alliance/src/genpat/src/CONV.c
    alliance/src/genpat/src/DECLAR.c
    alliance/src/genpat/src/DEF_GEN.c
    alliance/src/genpat/src/GETCPAT.c
    alliance/src/genpat/src/INIT.c
    alliance/src/genpat/src/LABEL.c
    alliance/src/genpat/src/Makefile
    alliance/src/genpat/src/Makefile.am
    alliance/src/genpat/src/SAVE.c
    alliance/src/genpat/src/SAV_GEN.c
    alliance/src/genpat/src/SETTUNIT.c
    alliance/src/genpat/src/genpat.h
    alliance/src/genpat/src/genpat.sh
    alliance/src/genpat/src/libpat_l.c
    alliance/src/genpat/src/libpat_l.h
    alliance/src/genview/src/gcc-1.42/COPYING
    alliance/src/genview/src/gcc-1.42/ChangeLog
    alliance/src/genview/src/gcc-1.42/INSTALL
    alliance/src/genview/src/gcc-1.42/Makefile
    alliance/src/genview/src/gcc-1.42/OChangeLog
    alliance/src/genview/src/gcc-1.42/PROBLEMS
    alliance/src/genview/src/gcc-1.42/PROJECTS
    alliance/src/genview/src/gcc-1.42/README
    alliance/src/genview/src/gcc-1.42/README-ALTOS
    alliance/src/genview/src/gcc-1.42/README-ENCAP
    alliance/src/genview/src/gcc-1.42/README-NS32K
    alliance/src/genview/src/gcc-1.42/README-VMS
    alliance/src/genview/src/gcc-1.42/README-X11
    alliance/src/genview/src/gcc-1.42/SERVICE
    alliance/src/genview/src/gcc-1.42/alloca.c
    alliance/src/genview/src/gcc-1.42/assert.h
    alliance/src/genview/src/gcc-1.42/aux-output.c
    alliance/src/genview/src/gcc-1.42/basic-block.h
    alliance/src/genview/src/gcc-1.42/c-convert.c
    alliance/src/genview/src/gcc-1.42/c-decl.c
    alliance/src/genview/src/gcc-1.42/c-parse.gperf
    alliance/src/genview/src/gcc-1.42/c-parse.h
    alliance/src/genview/src/gcc-1.42/c-parse.output
    alliance/src/genview/src/gcc-1.42/c-parse.tab.c
    alliance/src/genview/src/gcc-1.42/c-parse.y
    alliance/src/genview/src/gcc-1.42/c-tree.h
    alliance/src/genview/src/gcc-1.42/c-typeck.c
    alliance/src/genview/src/gcc-1.42/caller-save.c
    alliance/src/genview/src/gcc-1.42/cexp.c
    alliance/src/genview/src/gcc-1.42/cexp.y
    alliance/src/genview/src/gcc-1.42/combine.c
    alliance/src/genview/src/gcc-1.42/conditions.h
    alliance/src/genview/src/gcc-1.42/config/mu.md
    alliance/src/genview/src/gcc-1.42/config/out-mu.c
    alliance/src/genview/src/gcc-1.42/config/tm-mu.h
    alliance/src/genview/src/gcc-1.42/config/xm-mu.h
    alliance/src/genview/src/gcc-1.42/config-gcc.com
    alliance/src/genview/src/gcc-1.42/config.gcc
    alliance/src/genview/src/gcc-1.42/config.h
    alliance/src/genview/src/gcc-1.42/config.status
    alliance/src/genview/src/gcc-1.42/cpp.aux
    alliance/src/genview/src/gcc-1.42/cpp.cps
    alliance/src/genview/src/gcc-1.42/cpp.fns
    alliance/src/genview/src/gcc-1.42/cpp.info
    alliance/src/genview/src/gcc-1.42/cpp.info-1
    alliance/src/genview/src/gcc-1.42/cpp.info-2
    alliance/src/genview/src/gcc-1.42/cpp.texinfo
    alliance/src/genview/src/gcc-1.42/cse.c
    alliance/src/genview/src/gcc-1.42/dbranch.c
    alliance/src/genview/src/gcc-1.42/dbxout.c
    alliance/src/genview/src/gcc-1.42/ecoff-cmp
    alliance/src/genview/src/gcc-1.42/emit-rtl.c
    alliance/src/genview/src/gcc-1.42/explow.c
    alliance/src/genview/src/gcc-1.42/expmed.c
    alliance/src/genview/src/gcc-1.42/expr.c
    alliance/src/genview/src/gcc-1.42/expr.h
    alliance/src/genview/src/gcc-1.42/final.c
    alliance/src/genview/src/gcc-1.42/fixcpp
    alliance/src/genview/src/gcc-1.42/fixinc.new
    alliance/src/genview/src/gcc-1.42/fixincludes
    alliance/src/genview/src/gcc-1.42/fixincludes-V4
    alliance/src/genview/src/gcc-1.42/flags.h
    alliance/src/genview/src/gcc-1.42/flow.c
    alliance/src/genview/src/gcc-1.42/fold-const.c
    alliance/src/genview/src/gcc-1.42/gcc.1
    alliance/src/genview/src/gcc-1.42/gcc.aux
    alliance/src/genview/src/gcc-1.42/gcc.c
    alliance/src/genview/src/gcc-1.42/gcc.cp
    alliance/src/genview/src/gcc-1.42/gcc.cps
    alliance/src/genview/src/gcc-1.42/gcc.fn
    alliance/src/genview/src/gcc-1.42/gcc.hlp
    alliance/src/genview/src/gcc-1.42/gcc.info
    alliance/src/genview/src/gcc-1.42/gcc.info-1
    alliance/src/genview/src/gcc-1.42/gcc.info-10
    alliance/src/genview/src/gcc-1.42/gcc.info-11
    alliance/src/genview/src/gcc-1.42/gcc.info-2
    alliance/src/genview/src/gcc-1.42/gcc.info-3
    alliance/src/genview/src/gcc-1.42/gcc.info-4
    alliance/src/genview/src/gcc-1.42/gcc.info-5
    alliance/src/genview/src/gcc-1.42/gcc.info-6
    alliance/src/genview/src/gcc-1.42/gcc.info-7
    alliance/src/genview/src/gcc-1.42/gcc.info-8
    alliance/src/genview/src/gcc-1.42/gcc.info-9
    alliance/src/genview/src/gcc-1.42/gcc.ky
    alliance/src/genview/src/gcc-1.42/gcc.log
    alliance/src/genview/src/gcc-1.42/gcc.pg
    alliance/src/genview/src/gcc-1.42/gcc.texinfo
    alliance/src/genview/src/gcc-1.42/gcc.toc
    alliance/src/genview/src/gcc-1.42/gcc.tp
    alliance/src/genview/src/gcc-1.42/gcc.vr
    alliance/src/genview/src/gcc-1.42/gdbfiles.h
    alliance/src/genview/src/gcc-1.42/gencodes
    alliance/src/genview/src/gcc-1.42/gencodes.c
    alliance/src/genview/src/gcc-1.42/genconfig
    alliance/src/genview/src/gcc-1.42/genconfig.c
    alliance/src/genview/src/gcc-1.42/genemit
    alliance/src/genview/src/gcc-1.42/genemit.c
    alliance/src/genview/src/gcc-1.42/genextract
    alliance/src/genview/src/gcc-1.42/genextract.c
    alliance/src/genview/src/gcc-1.42/genflags
    alliance/src/genview/src/gcc-1.42/genflags.c
    alliance/src/genview/src/gcc-1.42/genoutput
    alliance/src/genview/src/gcc-1.42/genoutput.c
    alliance/src/genview/src/gcc-1.42/genpeep
    alliance/src/genview/src/gcc-1.42/genpeep.c
    alliance/src/genview/src/gcc-1.42/genrecog
    alliance/src/genview/src/gcc-1.42/genrecog.c
    alliance/src/genview/src/gcc-1.42/global-alloc.c
    alliance/src/genview/src/gcc-1.42/gnulib.c
    alliance/src/genview/src/gcc-1.42/gnulib2.c
    alliance/src/genview/src/gcc-1.42/gstab.h
    alliance/src/genview/src/gcc-1.42/gstdarg.h
    alliance/src/genview/src/gcc-1.42/gvarargs.h
    alliance/src/genview/src/gcc-1.42/hard-params.c
    alliance/src/genview/src/gcc-1.42/hard-reg-set.h
    alliance/src/genview/src/gcc-1.42/input.h
    alliance/src/genview/src/gcc-1.42/insn-codes.h
    alliance/src/genview/src/gcc-1.42/insn-config.h
    alliance/src/genview/src/gcc-1.42/insn-emit.c
    alliance/src/genview/src/gcc-1.42/insn-extract.c
    alliance/src/genview/src/gcc-1.42/insn-flags.h
    alliance/src/genview/src/gcc-1.42/insn-output.c
    alliance/src/genview/src/gcc-1.42/insn-peep.c
    alliance/src/genview/src/gcc-1.42/insn-recog.c
    alliance/src/genview/src/gcc-1.42/integrate.c
    alliance/src/genview/src/gcc-1.42/jump.c
    alliance/src/genview/src/gcc-1.42/limits.h
    alliance/src/genview/src/gcc-1.42/local-alloc.c
    alliance/src/genview/src/gcc-1.42/loop.c
    alliance/src/genview/src/gcc-1.42/machmode.def
    alliance/src/genview/src/gcc-1.42/make-cc1.com
    alliance/src/genview/src/gcc-1.42/make-cccp.com
    alliance/src/genview/src/gcc-1.42/make.com
    alliance/src/genview/src/gcc-1.42/masm386.c
    alliance/src/genview/src/gcc-1.42/math-68881.h
    alliance/src/genview/src/gcc-1.42/md
    alliance/src/genview/src/gcc-1.42/move-if-change
    alliance/src/genview/src/gcc-1.42/nmake
    alliance/src/genview/src/gcc-1.42/obstack.c
    alliance/src/genview/src/gcc-1.42/obstack.h
    alliance/src/genview/src/gcc-1.42/optabs.c
    alliance/src/genview/src/gcc-1.42/output.h
    alliance/src/genview/src/gcc-1.42/print-self.c
    alliance/src/genview/src/gcc-1.42/print-self1.c
    alliance/src/genview/src/gcc-1.42/print-tree.c
    alliance/src/genview/src/gcc-1.42/proto.h
    alliance/src/genview/src/gcc-1.42/real.h
    alliance/src/genview/src/gcc-1.42/recog.c
    alliance/src/genview/src/gcc-1.42/recog.h
    alliance/src/genview/src/gcc-1.42/regclass.c
    alliance/src/genview/src/gcc-1.42/regs.h
    alliance/src/genview/src/gcc-1.42/reload.c
    alliance/src/genview/src/gcc-1.42/reload.h
    alliance/src/genview/src/gcc-1.42/reload1.c
    alliance/src/genview/src/gcc-1.42/rtl.c
    alliance/src/genview/src/gcc-1.42/rtl.def
    alliance/src/genview/src/gcc-1.42/rtl.h
    alliance/src/genview/src/gcc-1.42/rtlanal.c
    alliance/src/genview/src/gcc-1.42/sdbout.c
    alliance/src/genview/src/gcc-1.42/stab.def
    alliance/src/genview/src/gcc-1.42/stamp-codes
    alliance/src/genview/src/gcc-1.42/stamp-config
    alliance/src/genview/src/gcc-1.42/stamp-emit
    alliance/src/genview/src/gcc-1.42/stamp-extract
    alliance/src/genview/src/gcc-1.42/stamp-flags
    alliance/src/genview/src/gcc-1.42/stamp-output
    alliance/src/genview/src/gcc-1.42/stamp-peep
    alliance/src/genview/src/gcc-1.42/stamp-recog
    alliance/src/genview/src/gcc-1.42/stddef.h
    alliance/src/genview/src/gcc-1.42/stmt.c
    alliance/src/genview/src/gcc-1.42/stor-layout.c
    alliance/src/genview/src/gcc-1.42/stupid.c
    alliance/src/genview/src/gcc-1.42/symout.c
    alliance/src/genview/src/gcc-1.42/symseg.h
    alliance/src/genview/src/gcc-1.42/texinfo.tex
    alliance/src/genview/src/gcc-1.42/tm.h
    alliance/src/genview/src/gcc-1.42/toplev.c
    alliance/src/genview/src/gcc-1.42/tree.c
    alliance/src/genview/src/gcc-1.42/tree.def
    alliance/src/genview/src/gcc-1.42/tree.h
    alliance/src/genview/src/gcc-1.42/typeclass.h
    alliance/src/genview/src/gcc-1.42/va-i860.h
    alliance/src/genview/src/gcc-1.42/va-mips.h
    alliance/src/genview/src/gcc-1.42/va-pyr.h
    alliance/src/genview/src/gcc-1.42/va-sparc.h
    alliance/src/genview/src/gcc-1.42/va-spur.h
    alliance/src/genview/src/gcc-1.42/varasm.c
    alliance/src/genview/src/gcc-1.42/version.c
    alliance/src/genview/src/genview/C_utils.c
    alliance/src/genview/src/genview/C_utils.h
    alliance/src/genview/src/genview/C_win.c
    alliance/src/genview/src/genview/C_win.h
    alliance/src/genview/src/genview/D_stdlib.c
    alliance/src/genview/src/genview/D_stdlib.h
    alliance/src/genview/src/genview/G_cache.c
    alliance/src/genview/src/genview/G_cache.h
    alliance/src/genview/src/genview/G_global.c
    alliance/src/genview/src/genview/G_global.h
    alliance/src/genview/src/genview/G_inspect.c
    alliance/src/genview/src/genview/G_inspect.h
    alliance/src/genview/src/genview/G_move.c
    alliance/src/genview/src/genview/G_move.h
    alliance/src/genview/src/genview/G_parse.c
    alliance/src/genview/src/genview/G_parse.h
    alliance/src/genview/src/genview/G_peek.c
    alliance/src/genview/src/genview/G_peek.h
    alliance/src/genview/src/genview/G_rpeek.c
    alliance/src/genview/src/genview/G_rpeek.h
    alliance/src/genview/src/genview/G_string.c
    alliance/src/genview/src/genview/G_string.h
    alliance/src/genview/src/genview/G_user.c
    alliance/src/genview/src/genview/G_user.h
    alliance/src/genview/src/genview/M_win.c
    alliance/src/genview/src/genview/M_win.h
    alliance/src/genview/src/genview/Makefile
    alliance/src/genview/src/genview/V_area.c
    alliance/src/genview/src/genview/V_area.h
    alliance/src/genview/src/genview/V_boxes.c
    alliance/src/genview/src/genview/V_boxes.h
    alliance/src/genview/src/genview/V_clear.c
    alliance/src/genview/src/genview/V_clear.h
    alliance/src/genview/src/genview/V_clip.c
    alliance/src/genview/src/genview/V_clip.h
    alliance/src/genview/src/genview/V_colors.c
    alliance/src/genview/src/genview/V_colors.h
    alliance/src/genview/src/genview/V_drv.c
    alliance/src/genview/src/genview/V_drv.h
    alliance/src/genview/src/genview/V_peek.c
    alliance/src/genview/src/genview/V_peek.h
    alliance/src/genview/src/genview/V_put.c
    alliance/src/genview/src/genview/V_put.h
    alliance/src/genview/src/genview/V_scroll.c
    alliance/src/genview/src/genview/V_scroll.h
    alliance/src/genview/src/genview/V_str.c
    alliance/src/genview/src/genview/V_str.h
    alliance/src/genview/src/genview/c_menu.h
    alliance/src/genview/src/genview/d_asm.c
    alliance/src/genview/src/genview/d_asm.h
    alliance/src/genview/src/genview/d_asm.lex
    alliance/src/genview/src/genview/d_asm.yac
    alliance/src/genview/src/genview/d_codes.h
    alliance/src/genview/src/genview/d_dbx.c
    alliance/src/genview/src/genview/d_dbx.h
    alliance/src/genview/src/genview/d_dbx.yac
    alliance/src/genview/src/genview/d_dbx_trace.c
    alliance/src/genview/src/genview/d_exec.c
    alliance/src/genview/src/genview/d_fonc.h
    alliance/src/genview/src/genview/d_interp.c
    alliance/src/genview/src/genview/d_interp_fonc.c
    alliance/src/genview/src/genview/d_interp_lib.h
    alliance/src/genview/src/genview/d_interp_sig.c
    alliance/src/genview/src/genview/d_lex.c
    alliance/src/genview/src/genview/d_tabcodes.c
    alliance/src/genview/src/genview/d_term.c
    alliance/src/genview/src/genview/d_yac.c
    alliance/src/genview/src/genview/e_edit.h
    alliance/src/genview/src/genview/e_menu.c
    alliance/src/genview/src/genview/e_menu.h
    alliance/src/genview/src/genview/e_vi_cmd.c
    alliance/src/genview/src/genview/e_vi_display.c
    alliance/src/genview/src/genview/e_win.c
    alliance/src/genview/src/genview/genview.c
    alliance/src/genview/src/genview/genview.h
    alliance/src/genview/src/genview/grog_genview.c
    alliance/src/genview/src/genview/i_lines.h
    alliance/src/genview/src/genview/i_menu.c
    alliance/src/genview/src/genview/i_menu.h
    alliance/src/genview/src/genview/i_rl.c
    alliance/src/genview/src/genview/i_win.c
    alliance/src/genview/src/genview/m_menu.c
    alliance/src/genview/src/genview/m_menu.h
    alliance/src/genview/src/genview/m_mes_id.h
    alliance/src/genview/src/genview/t_menu.c
    alliance/src/genview/src/genview/t_menu.h
    alliance/src/genview/src/genview/t_rl.c
    alliance/src/genview/src/genview/t_win.c
    alliance/src/genview/src/genview/v_extern.h
    alliance/src/genview/src/genview/v_menu.c
    alliance/src/genview/src/genview/v_menu.h
    alliance/src/genview/src/genview/v_view.h
    alliance/src/graal/Makefile.am
    alliance/src/graal/configure.in
    alliance/src/graal/etc/Makefile.am
    alliance/src/graal/etc/cmos.graal
    alliance/src/graal/man1/Makefile.am
    alliance/src/graal/man1/graal.1
    alliance/src/graal/src/GMC.h
    alliance/src/graal/src/GMC_create.c
    alliance/src/graal/src/GMC_create.h
    alliance/src/graal/src/GMC_dialog.c
    alliance/src/graal/src/GMC_dialog.h
    alliance/src/graal/src/GMC_menu.c
    alliance/src/graal/src/GMC_menu.h
    alliance/src/graal/src/GMC_message.c
    alliance/src/graal/src/GMC_message.h
    alliance/src/graal/src/GMC_panel.c
    alliance/src/graal/src/GMC_panel.h
    alliance/src/graal/src/GME.h
    alliance/src/graal/src/GME_dialog.c
    alliance/src/graal/src/GME_dialog.h
    alliance/src/graal/src/GME_edit.c
    alliance/src/graal/src/GME_edit.h
    alliance/src/graal/src/GME_menu.c
    alliance/src/graal/src/GME_menu.h
    alliance/src/graal/src/GME_message.c
    alliance/src/graal/src/GME_message.h
    alliance/src/graal/src/GME_modify.c
    alliance/src/graal/src/GME_modify.h
    alliance/src/graal/src/GME_panel.c
    alliance/src/graal/src/GME_panel.h
    alliance/src/graal/src/GME_search.c
    alliance/src/graal/src/GME_search.h
    alliance/src/graal/src/GME_select.c
    alliance/src/graal/src/GME_select.h
    alliance/src/graal/src/GMF.h
    alliance/src/graal/src/GMF_dialog.c
    alliance/src/graal/src/GMF_dialog.h
    alliance/src/graal/src/GMF_file.c
    alliance/src/graal/src/GMF_file.h
    alliance/src/graal/src/GMF_menu.c
    alliance/src/graal/src/GMF_menu.h
    alliance/src/graal/src/GMF_panel.c
    alliance/src/graal/src/GMF_panel.h
    alliance/src/graal/src/GMH.h
    alliance/src/graal/src/GMH_help.c
    alliance/src/graal/src/GMH_help.h
    alliance/src/graal/src/GMH_menu.c
    alliance/src/graal/src/GMH_menu.h
    alliance/src/graal/src/GMH_panel.c
    alliance/src/graal/src/GMH_panel.h
    alliance/src/graal/src/GMS.h
    alliance/src/graal/src/GMS_dialog.c
    alliance/src/graal/src/GMS_dialog.h
    alliance/src/graal/src/GMS_menu.c
    alliance/src/graal/src/GMS_menu.h
    alliance/src/graal/src/GMS_panel.c
    alliance/src/graal/src/GMS_panel.h
    alliance/src/graal/src/GMS_setup.c
    alliance/src/graal/src/GMS_setup.h
    alliance/src/graal/src/GMT.h
    alliance/src/graal/src/GMT_dialog.c
    alliance/src/graal/src/GMT_dialog.h
    alliance/src/graal/src/GMT_druc.c
    alliance/src/graal/src/GMT_druc.h
    alliance/src/graal/src/GMT_menu.c
    alliance/src/graal/src/GMT_menu.h
    alliance/src/graal/src/GMT_message.c
    alliance/src/graal/src/GMT_message.h
    alliance/src/graal/src/GMT_panel.c
    alliance/src/graal/src/GMT_panel.h
    alliance/src/graal/src/GMT_tools.c
    alliance/src/graal/src/GMT_tools.h
    alliance/src/graal/src/GMV.h
    alliance/src/graal/src/GMV_dialog.c
    alliance/src/graal/src/GMV_dialog.h
    alliance/src/graal/src/GMV_map.c
    alliance/src/graal/src/GMV_map.h
    alliance/src/graal/src/GMV_menu.c
    alliance/src/graal/src/GMV_menu.h
    alliance/src/graal/src/GMV_message.c
    alliance/src/graal/src/GMV_message.h
    alliance/src/graal/src/GMV_panel.c
    alliance/src/graal/src/GMV_panel.h
    alliance/src/graal/src/GMV_view.c
    alliance/src/graal/src/GMV_view.h
    alliance/src/graal/src/GMX.h
    alliance/src/graal/src/GMX_color.c
    alliance/src/graal/src/GMX_color.h
    alliance/src/graal/src/GMX_cursor.c
    alliance/src/graal/src/GMX_cursor.h
    alliance/src/graal/src/GMX_dialog.c
    alliance/src/graal/src/GMX_dialog.h
    alliance/src/graal/src/GMX_event.c
    alliance/src/graal/src/GMX_event.h
    alliance/src/graal/src/GMX_graphic.c
    alliance/src/graal/src/GMX_graphic.h
    alliance/src/graal/src/GMX_grid.c
    alliance/src/graal/src/GMX_grid.h
    alliance/src/graal/src/GMX_icon.c
    alliance/src/graal/src/GMX_icon.h
    alliance/src/graal/src/GMX_menu.c
    alliance/src/graal/src/GMX_menu.h
    alliance/src/graal/src/GMX_message.c
    alliance/src/graal/src/GMX_message.h
    alliance/src/graal/src/GMX_motif.c
    alliance/src/graal/src/GMX_motif.h
    alliance/src/graal/src/GMX_panel.c
    alliance/src/graal/src/GMX_panel.h
    alliance/src/graal/src/GMX_view.c
    alliance/src/graal/src/GMX_view.h
    alliance/src/graal/src/GRM.h
    alliance/src/graal/src/GRM_connector.c
    alliance/src/graal/src/GRM_connector.h
    alliance/src/graal/src/GRM_druc.c
    alliance/src/graal/src/GRM_druc.h
    alliance/src/graal/src/GRM_equi.c
    alliance/src/graal/src/GRM_equi.h
    alliance/src/graal/src/GRM_error.c
    alliance/src/graal/src/GRM_error.h
    alliance/src/graal/src/GRM_mbkrds.c
    alliance/src/graal/src/GRM_mbkrds.h
    alliance/src/graal/src/GRM_peek.c
    alliance/src/graal/src/GRM_peek.h
    alliance/src/graal/src/GRM_search.c
    alliance/src/graal/src/GRM_search.h
    alliance/src/graal/src/GRM_select.c
    alliance/src/graal/src/GRM_select.h
    alliance/src/graal/src/GRM_undo.c
    alliance/src/graal/src/GRM_undo.h
    alliance/src/graal/src/GRM_window.c
    alliance/src/graal/src/GRM_window.h
    alliance/src/graal/src/GSB.h
    alliance/src/graal/src/GSB_error.c
    alliance/src/graal/src/GSB_error.h
    alliance/src/graal/src/GSB_parse.c
    alliance/src/graal/src/GSB_parse.h
    alliance/src/graal/src/GSB_share.c
    alliance/src/graal/src/GSB_share.h
    alliance/src/graal/src/GTB.h
    alliance/src/graal/src/GTB_cursor.c
    alliance/src/graal/src/GTB_cursor.h
    alliance/src/graal/src/GTB_dialog.c
    alliance/src/graal/src/GTB_dialog.h
    alliance/src/graal/src/GTB_icon.c
    alliance/src/graal/src/GTB_icon.h
    alliance/src/graal/src/GTB_menu.c
    alliance/src/graal/src/GTB_menu.h
    alliance/src/graal/src/GTB_panel.c
    alliance/src/graal/src/GTB_panel.h
    alliance/src/graal/src/GTB_pixmap.c
    alliance/src/graal/src/GTB_pixmap.h
    alliance/src/graal/src/LIP6bw.h
    alliance/src/graal/src/Makefile.am
    alliance/src/graal/src/graal.c
    alliance/src/graal/src/graal.h
    alliance/src/grog/cells/Makefile
    alliance/src/grog/cells/grbl4_c.ap
    alliance/src/grog/cells/grbl4_c.sc
    alliance/src/grog/cells/grbl4_c.txt
    alliance/src/grog/cells/grmbob_c.ap
    alliance/src/grog/cells/grmbob_c.sc
    alliance/src/grog/cells/grmbob_c.txt
    alliance/src/grog/cells/grmbs_c.ap
    alliance/src/grog/cells/grmbs_c.sc
    alliance/src/grog/cells/grmbs_c.txt
    alliance/src/grog/cells/grmbt_c.ap
    alliance/src/grog/cells/grmbt_c.sc
    alliance/src/grog/cells/grmbt_c.txt
    alliance/src/grog/cells/grmfeed_c.ap
    alliance/src/grog/cells/grmfeed_c.sc
    alliance/src/grog/cells/grmfeed_c.txt
    alliance/src/grog/cells/grmfill_c.ap
    alliance/src/grog/cells/grmfill_c.sc
    alliance/src/grog/cells/grmfill_c.txt
    alliance/src/grog/cells/grmli_c.ap
    alliance/src/grog/cells/grmli_c.sc
    alliance/src/grog/cells/grmli_c.txt
    alliance/src/grog/cells/grmmot_c.ap
    alliance/src/grog/cells/grmmot_c.sc
    alliance/src/grog/cells/grmmot_c.txt
    alliance/src/grog/cells/grmmt_c.ap
    alliance/src/grog/cells/grmmt_c.sc
    alliance/src/grog/cells/grmmt_c.txt
    alliance/src/grog/cells/grmmx_c.ap
    alliance/src/grog/cells/grmmx_c.sc
    alliance/src/grog/cells/grmmx_c.txt
    alliance/src/grog/cells/grmob_c.ap
    alliance/src/grog/cells/grmob_c.sc
    alliance/src/grog/cells/grmob_c.txt
    alliance/src/grog/cells/grmobh_c.ap
    alliance/src/grog/cells/grmobh_c.sc
    alliance/src/grog/cells/grmobh_c.txt
    alliance/src/grog/cells/grmoebh_c.ap
    alliance/src/grog/cells/grmoebh_c.sc
    alliance/src/grog/cells/grmoebh_c.txt
    alliance/src/grog/cells/grmoth_c.ap
    alliance/src/grog/cells/grmoth_c.sc
    alliance/src/grog/cells/grmoth_c.txt
    alliance/src/grog/cells/grmrbom_c.ap
    alliance/src/grog/cells/grmrbom_c.sc
    alliance/src/grog/cells/grmrbom_c.txt
    alliance/src/grog/cells/grmrck_c.ap
    alliance/src/grog/cells/grmrck_c.sc
    alliance/src/grog/cells/grmrck_c.txt
    alliance/src/grog/cells/grmrick_c.ap
    alliance/src/grog/cells/grmrick_c.sc
    alliance/src/grog/cells/grmrick_c.txt
    alliance/src/grog/cells/grmrl_c.ap
    alliance/src/grog/cells/grmrl_c.sc
    alliance/src/grog/cells/grmrl_c.txt
    alliance/src/grog/cells/grmrs_c.ap
    alliance/src/grog/cells/grmrs_c.sc
    alliance/src/grog/cells/grmrs_c.txt
    alliance/src/grog/cells/grmrst_c.ap
    alliance/src/grog/cells/grmrst_c.sc
    alliance/src/grog/cells/grmrst_c.txt
    alliance/src/grog/cells/grmrw0_c.ap
    alliance/src/grog/cells/grmrw0_c.sc
    alliance/src/grog/cells/grmrw0_c.txt
    alliance/src/grog/cells/grmrw1_c.ap
    alliance/src/grog/cells/grmrw1_c.sc
    alliance/src/grog/cells/grmrw1_c.txt
    alliance/src/grog/cells/grmrw2_c.ap
    alliance/src/grog/cells/grmrw2_c.sc
    alliance/src/grog/cells/grmrw2_c.txt
    alliance/src/grog/cells/grmrw3_c.ap
    alliance/src/grog/cells/grmrw3_c.sc
    alliance/src/grog/cells/grmrw3_c.txt
    alliance/src/grog/cells/grmrwb_c.ap
    alliance/src/grog/cells/grmrwb_c.sc
    alliance/src/grog/cells/grmrwb_c.txt
    alliance/src/grog/cells/grmrx0_c.ap
    alliance/src/grog/cells/grmrx0_c.sc
    alliance/src/grog/cells/grmrx0_c.txt
    alliance/src/grog/cells/grmrx1_c.ap
    alliance/src/grog/cells/grmrx1_c.sc
    alliance/src/grog/cells/grmrx1_c.txt
    alliance/src/grog/cells/grmrx2_c.ap
    alliance/src/grog/cells/grmrx2_c.sc
    alliance/src/grog/cells/grmrx2_c.txt
    alliance/src/grog/cells/grmrx3_c.ap
    alliance/src/grog/cells/grmrx3_c.sc
    alliance/src/grog/cells/grmrx3_c.txt
    alliance/src/grog/cells/grmx4_c.ap
    alliance/src/grog/cells/grmx4_c.sc
    alliance/src/grog/cells/grmx4_c.txt
    alliance/src/grog/cells/grnbom_c.ap
    alliance/src/grog/cells/grnbom_c.sc
    alliance/src/grog/cells/grnbom_c.txt
    alliance/src/grog/cells/grnbs_c.ap
    alliance/src/grog/cells/grnbs_c.sc
    alliance/src/grog/cells/grnbs_c.txt
    alliance/src/grog/cells/grnmht_c.ap
    alliance/src/grog/cells/grnmht_c.sc
    alliance/src/grog/cells/grnmht_c.txt
    alliance/src/grog/cells/grnrste_c.ap
    alliance/src/grog/cells/grnrste_c.sc
    alliance/src/grog/cells/grnrste_c.txt
    alliance/src/grog/cells/grol.db
    alliance/src/grog/cells/grol.db.3
    alliance/src/grog/cells/grp4_c.ap
    alliance/src/grog/cells/grp4_c.sc
    alliance/src/grog/cells/grp4_c.txt
    alliance/src/grog/cells/grpbom_c.ap
    alliance/src/grog/cells/grpbom_c.sc
    alliance/src/grog/cells/grpbom_c.txt
    alliance/src/grog/cells/grpbs_c.ap
    alliance/src/grog/cells/grpbs_c.sc
    alliance/src/grog/cells/grpbs_c.txt
    alliance/src/grog/cells/grpf_c.ap
    alliance/src/grog/cells/grpf_c.sc
    alliance/src/grog/cells/grpf_c.txt
    alliance/src/grog/cells/grpfeed_c.ap
    alliance/src/grog/cells/grpfeed_c.sc
    alliance/src/grog/cells/grpfeed_c.txt
    alliance/src/grog/cells/grpfeedh_c.ap
    alliance/src/grog/cells/grpfeedh_c.sc
    alliance/src/grog/cells/grpfeedh_c.txt
    alliance/src/grog/cells/grpfill_c.ap
    alliance/src/grog/cells/grpfill_c.sc
    alliance/src/grog/cells/grpfill_c.txt
    alliance/src/grog/cells/grpick_c.ap
    alliance/src/grog/cells/grpick_c.sc
    alliance/src/grog/cells/grpick_c.txt
    alliance/src/grog/cells/grpli_c.ap
    alliance/src/grog/cells/grpli_c.sc
    alliance/src/grog/cells/grpli_c.txt
    alliance/src/grog/cells/grpmht_c.ap
    alliance/src/grog/cells/grpmht_c.sc
    alliance/src/grog/cells/grpmht_c.txt
    alliance/src/grog/cells/grpmt_c.ap
    alliance/src/grog/cells/grpmt_c.sc
    alliance/src/grog/cells/grpmt_c.txt
    alliance/src/grog/cells/grpob_c.ap
    alliance/src/grog/cells/grpob_c.sc
    alliance/src/grog/cells/grpob_c.txt
    alliance/src/grog/cells/grpobhc_c.ap
    alliance/src/grog/cells/grpobhc_c.sc
    alliance/src/grog/cells/grpobhc_c.txt
    alliance/src/grog/cells/grpobhs_c.ap
    alliance/src/grog/cells/grpobhs_c.sc
    alliance/src/grog/cells/grpobhs_c.txt
    alliance/src/grog/cells/grpobhtc_c.ap
    alliance/src/grog/cells/grpobhtc_c.sc
    alliance/src/grog/cells/grpobhtc_c.txt
    alliance/src/grog/cells/grprs_c.ap
    alliance/src/grog/cells/grprs_c.sc
    alliance/src/grog/cells/grprs_c.txt
    alliance/src/grog/cells/grprst_c.ap
    alliance/src/grog/cells/grprst_c.sc
    alliance/src/grog/cells/grprst_c.txt
    alliance/src/grog/cells/grprste_c.ap
    alliance/src/grog/cells/grprste_c.sc
    alliance/src/grog/cells/grprste_c.txt
    alliance/src/grog/cells/grprw0_c.ap
    alliance/src/grog/cells/grprw0_c.sc
    alliance/src/grog/cells/grprw0_c.txt
    alliance/src/grog/cells/grprw1_c.ap
    alliance/src/grog/cells/grprw1_c.sc
    alliance/src/grog/cells/grprw1_c.txt
    alliance/src/grog/cells/grprw2_c.ap
    alliance/src/grog/cells/grprw2_c.sc
    alliance/src/grog/cells/grprw2_c.txt
    alliance/src/grog/cells/grprw3_c.ap
    alliance/src/grog/cells/grprw3_c.sc
    alliance/src/grog/cells/grprw3_c.txt
    alliance/src/grog/cells/grprx0_c.ap
    alliance/src/grog/cells/grprx0_c.sc
    alliance/src/grog/cells/grprx0_c.txt
    alliance/src/grog/cells/grprx1_c.ap
    alliance/src/grog/cells/grprx1_c.sc
    alliance/src/grog/cells/grprx1_c.txt
    alliance/src/grog/cells/grpubht_c.ap
    alliance/src/grog/cells/grpubht_c.sc
    alliance/src/grog/cells/grpubht_c.txt
    alliance/src/grog/cells/grpubob_c.ap
    alliance/src/grog/cells/grpubob_c.sc
    alliance/src/grog/cells/grpubob_c.txt
    alliance/src/grog/cells/grpubobh_c.ap
    alliance/src/grog/cells/grpubobh_c.sc
    alliance/src/grog/cells/grpubobh_c.txt
    alliance/src/grog/cells/grpubt_c.ap
    alliance/src/grog/cells/grpubt_c.sc
    alliance/src/grog/cells/grpubt_c.txt
    alliance/src/grog/cells/grrbob_c.ap
    alliance/src/grog/cells/grrbob_c.sc
    alliance/src/grog/cells/grrbob_c.txt
    alliance/src/grog/cells/grrbs1_c.ap
    alliance/src/grog/cells/grrbs1_c.sc
    alliance/src/grog/cells/grrbs1_c.txt
    alliance/src/grog/cells/grrbs2_c.ap
    alliance/src/grog/cells/grrbs2_c.sc
    alliance/src/grog/cells/grrbs2_c.txt
    alliance/src/grog/cells/grrbs3_c.ap
    alliance/src/grog/cells/grrbs3_c.sc
    alliance/src/grog/cells/grrbs3_c.txt
    alliance/src/grog/cells/grrbt_c.ap
    alliance/src/grog/cells/grrbt_c.sc
    alliance/src/grog/cells/grrbt_c.txt
    alliance/src/grog/cells/grrfeed_c.ap
    alliance/src/grog/cells/grrfeed_c.sc
    alliance/src/grog/cells/grrfeed_c.txt
    alliance/src/grog/cells/grrfill_c.ap
    alliance/src/grog/cells/grrfill_c.sc
    alliance/src/grog/cells/grrfill_c.txt
    alliance/src/grog/cells/grrli_c.ap
    alliance/src/grog/cells/grrli_c.sc
    alliance/src/grog/cells/grrli_c.txt
    alliance/src/grog/cells/grrmo_c.ap
    alliance/src/grog/cells/grrmo_c.sc
    alliance/src/grog/cells/grrmo_c.txt
    alliance/src/grog/cells/grrmt_c.ap
    alliance/src/grog/cells/grrmt_c.sc
    alliance/src/grog/cells/grrmt_c.txt
    alliance/src/grog/cells/grrmx_c.ap
    alliance/src/grog/cells/grrmx_c.sc
    alliance/src/grog/cells/grrmx_c.txt
    alliance/src/grog/cells/grrob_c.ap
    alliance/src/grog/cells/grrob_c.sc
    alliance/src/grog/cells/grrob_c.txt
    alliance/src/grog/cells/grrobh_c.ap
    alliance/src/grog/cells/grrobh_c.sc
    alliance/src/grog/cells/grrobh_c.txt
    alliance/src/grog/cells/grroebh_c.ap
    alliance/src/grog/cells/grroebh_c.sc
    alliance/src/grog/cells/grroebh_c.txt
    alliance/src/grog/cells/grroth_c.ap
    alliance/src/grog/cells/grroth_c.sc
    alliance/src/grog/cells/grroth_c.txt
    alliance/src/grog/cells/grubom_c.ap
    alliance/src/grog/cells/grubom_c.sc
    alliance/src/grog/cells/grubom_c.txt
    alliance/src/grog/cells/grufill_c.ap
    alliance/src/grog/cells/grufill_c.sc
    alliance/src/grog/cells/grufill_c.txt
    alliance/src/grog/cells/grumf_c.ap
    alliance/src/grog/cells/grumf_c.sc
    alliance/src/grog/cells/grumf_c.txt
    alliance/src/grog/cells/grumx2e_c.ap
    alliance/src/grog/cells/grumx2e_c.sc
    alliance/src/grog/cells/grumx2e_c.txt
    alliance/src/grog/cells/grumx2et_c.ap
    alliance/src/grog/cells/grumx2et_c.sc
    alliance/src/grog/cells/grumx2et_c.txt
    alliance/src/grog/cells/grumx2o_c.ap
    alliance/src/grog/cells/grumx2o_c.sc
    alliance/src/grog/cells/grumx2o_c.txt
    alliance/src/grog/cells/grumx2ot_c.ap
    alliance/src/grog/cells/grumx2ot_c.sc
    alliance/src/grog/cells/grumx2ot_c.txt
    alliance/src/grog/cells/gruobe_c.ap
    alliance/src/grog/cells/gruobe_c.sc
    alliance/src/grog/cells/gruobe_c.txt
    alliance/src/grog/cells/gruobeh_c.ap
    alliance/src/grog/cells/gruobeh_c.sc
    alliance/src/grog/cells/gruobeh_c.txt
    alliance/src/grog/cells/gruobeht_c.ap
    alliance/src/grog/cells/gruobeht_c.sc
    alliance/src/grog/cells/gruobeht_c.txt
    alliance/src/grog/cells/gruobet_c.ap
    alliance/src/grog/cells/gruobet_c.sc
    alliance/src/grog/cells/gruobet_c.txt
    alliance/src/grog/cells/gruobf_c.ap
    alliance/src/grog/cells/gruobf_c.sc
    alliance/src/grog/cells/gruobf_c.txt
    alliance/src/grog/cells/gruobfe_c.ap
    alliance/src/grog/cells/gruobfe_c.sc
    alliance/src/grog/cells/gruobfe_c.txt
    alliance/src/grog/cells/gruobfh_c.ap
    alliance/src/grog/cells/gruobfh_c.sc
    alliance/src/grog/cells/gruobfh_c.txt
    alliance/src/grog/cells/gruobfo_c.ap
    alliance/src/grog/cells/gruobfo_c.sc
    alliance/src/grog/cells/gruobfo_c.txt
    alliance/src/grog/cells/gruobo_c.ap
    alliance/src/grog/cells/gruobo_c.sc
    alliance/src/grog/cells/gruobo_c.txt
    alliance/src/grog/cells/gruoboh_c.ap
    alliance/src/grog/cells/gruoboh_c.sc
    alliance/src/grog/cells/gruoboh_c.txt
    alliance/src/grog/cells/gruoboht_c.ap
    alliance/src/grog/cells/gruoboht_c.sc
    alliance/src/grog/cells/gruoboht_c.txt
    alliance/src/grog/cells/gruobot_c.ap
    alliance/src/grog/cells/gruobot_c.sc
    alliance/src/grog/cells/gruobot_c.txt
    alliance/src/grog/cells/gruoebh_c.ap
    alliance/src/grog/cells/gruoebh_c.sc
    alliance/src/grog/cells/gruoebh_c.txt
    alliance/src/grog/cells/grurx1_c.ap
    alliance/src/grog/cells/grurx1_c.sc
    alliance/src/grog/cells/grurx1_c.txt
    alliance/src/grog/cells/grurx2_c.ap
    alliance/src/grog/cells/grurx2_c.sc
    alliance/src/grog/cells/grurx2_c.txt
    alliance/src/grog/cells/gruwi_c.ap
    alliance/src/grog/cells/gruwi_c.sc
    alliance/src/grog/cells/gruwi_c.txt
    alliance/src/grog/cells/vlsi.atr
    alliance/src/grog/cells/vlsi.boo
    alliance/src/grog/cells/vlsi.idx
    alliance/src/grog/cells/vlsi.log
    alliance/src/grog/cells/vti.boo
    alliance/src/grog/cells/vtn
    alliance/src/grog/src/gg.c
    alliance/src/grog/src/ggr001.h
    alliance/src/grog/src/grog.c
    alliance/src/grog/src/grog.h
    alliance/src/grog/src/grog_code.yac
    alliance/src/grog/src/grog_data.c
    alliance/src/grog/src/grog_icon.c
    alliance/src/grog/src/grog_layout.c
    alliance/src/grog/src/grog_netlist.c
    alliance/src/grog/src/grog_outline.c
    alliance/src/grog/src/grog_vhdl.c
    alliance/src/grog/src/main.c
    alliance/src/grog/src/vtisim.c
    alliance/src/growstk/Makefile.am
    alliance/src/growstk/configure.in
    alliance/src/growstk/src/Makefile.am
    alliance/src/growstk/src/growstk.c
    alliance/src/growstk/src/hash.c
    alliance/src/growstk/src/hash.h
    alliance/src/k2f/Makefile.am
    alliance/src/k2f/configure.in
    alliance/src/k2f/man1/Makefile.am
    alliance/src/k2f/man1/k2f.1
    alliance/src/k2f/src/Makefile.am
    alliance/src/k2f/src/k2f_error.c
    alliance/src/k2f/src/k2f_error.h
    alliance/src/k2f/src/k2f_main.c
    alliance/src/k2f/src/k2f_main.h
    alliance/src/l2p/Makefile.am
    alliance/src/l2p/configure.in
    alliance/src/l2p/man1/Makefile.am
    alliance/src/l2p/man1/l2p.1
    alliance/src/l2p/src/Makefile.am
    alliance/src/l2p/src/Makefile.sav
    alliance/src/l2p/src/dict_bw.ps
    alliance/src/l2p/src/dict_color.ps
    alliance/src/l2p/src/drive_ps.c
    alliance/src/l2p/src/l2p.c
    alliance/src/l2p/src/rps_inc.h
    alliance/src/l2p/src/tmp_dict.c
    alliance/src/l2p/src/tmp_man.c
    alliance/src/log/Makefile.am
    alliance/src/log/configure.in
    alliance/src/log/man1/Makefile.am
    alliance/src/log/man1/log.1
    alliance/src/log/man3/Makefile.am
    alliance/src/log/man3/ablToBddCct.3
    alliance/src/log/man3/addListBdd.3
    alliance/src/log/man3/applyBdd.3
    alliance/src/log/man3/applyBinBdd.3
    alliance/src/log/man3/bddToAblCct.3
    alliance/src/log/man3/composeBdd.3
    alliance/src/log/man3/constraintBdd.3
    alliance/src/log/man3/createNodeTermBdd.3
    alliance/src/log/man3/destroyBdd.3
    alliance/src/log/man3/displayBdd.3
    alliance/src/log/man3/gcNodeBdd.3
    alliance/src/log/man3/initializeBdd.3
    alliance/src/log/man3/markAllBdd.3
    alliance/src/log/man3/markBdd.3
    alliance/src/log/man3/notBdd.3
    alliance/src/log/man3/numberNodeAllBdd.3
    alliance/src/log/man3/numberNodeBdd.3
    alliance/src/log/man3/resetBdd.3
    alliance/src/log/man3/simplifDcOneBdd.3
    alliance/src/log/man3/simplifDcZeroBdd.3
    alliance/src/log/man3/supportChain_listBdd.3
    alliance/src/log/man3/upVarBdd.3
    alliance/src/log/src/Makefile.am
    alliance/src/log/src/log.h
    alliance/src/log/src/log_bdd0.c
    alliance/src/log/src/log_bdd1.c
    alliance/src/log/src/log_prefbib.c
    alliance/src/log/src/log_thash.c
    alliance/src/log/src/log_thashbdd.c
    alliance/src/log/src/log_thashloc.c
    alliance/src/loon/Makefile.am
    alliance/src/loon/configure.in
    alliance/src/loon/doc/Makefile.am
    alliance/src/loon/doc/loon.1
    alliance/src/loon/src/Makefile.am
    alliance/src/loon/src/lon_lax_param.c
    alliance/src/loon/src/lon_lax_param.h
    alliance/src/loon/src/lon_lib_format.c
    alliance/src/loon/src/lon_lib_format.h
    alliance/src/loon/src/lon_lib_matching.c
    alliance/src/loon/src/lon_lib_matching.h
    alliance/src/loon/src/lon_lib_negativ.c
    alliance/src/loon/src/lon_lib_negativ.h
    alliance/src/loon/src/lon_lib_permute.c
    alliance/src/loon/src/lon_lib_permute.h
    alliance/src/loon/src/lon_lib_reader.c
    alliance/src/loon/src/lon_lib_reader.h
    alliance/src/loon/src/lon_lib_specifications.c
    alliance/src/loon/src/lon_lib_specifications.h
    alliance/src/loon/src/lon_lib_utils.c
    alliance/src/loon/src/lon_lib_utils.h
    alliance/src/loon/src/lon_main.c
    alliance/src/loon/src/lon_normalize_DAG.c
    alliance/src/loon/src/lon_normalize_DAG.h
    alliance/src/loon/src/lon_normalize_message.c
    alliance/src/loon/src/lon_normalize_message.h
    alliance/src/loon/src/lon_normalize_power.c
    alliance/src/loon/src/lon_normalize_power.h
    alliance/src/loon/src/lon_normalize_register.c
    alliance/src/loon/src/lon_normalize_register.h
    alliance/src/loon/src/lon_normalize_simplify.c
    alliance/src/loon/src/lon_normalize_simplify.h
    alliance/src/loon/src/lon_optim_capa.c
    alliance/src/loon/src/lon_optim_capa.h
    alliance/src/loon/src/lon_optim_stats.c
    alliance/src/loon/src/lon_optim_stats.h
    alliance/src/loon/src/lon_signal_critical.c
    alliance/src/loon/src/lon_signal_critical.h
    alliance/src/loon/src/lon_signal_name.c
    alliance/src/loon/src/lon_signal_name.h
    alliance/src/loon/src/lon_signal_netlist.c
    alliance/src/loon/src/lon_signal_netlist.h
    alliance/src/loon/src/lon_signal_utils.c
    alliance/src/loon/src/lon_signal_utils.h
    alliance/src/loon/src/lon_xsch_driver.c
    alliance/src/loon/src/lon_xsch_driver.h
    alliance/src/lvx/Makefile.am
    alliance/src/lvx/configure.in
    alliance/src/lvx/doc/Makefile.am
    alliance/src/lvx/doc/lvx.1
    alliance/src/lvx/src/Makefile.am
    alliance/src/lvx/src/lvx.c
    alliance/src/lynx/Makefile.am
    alliance/src/lynx/configure.in
    alliance/src/lynx/man1/Makefile.am
    alliance/src/lynx/man1/cougar.1
    alliance/src/lynx/src/Makefile.am
    alliance/src/lynx/src/Windows95.c
    alliance/src/lynx/src/Windows95.h
    alliance/src/lynx/src/addlynxrcn.c
    alliance/src/lynx/src/addlynxrcn.h
    alliance/src/lynx/src/box.c
    alliance/src/lynx/src/box.h
    alliance/src/lynx/src/buildrcn.c
    alliance/src/lynx/src/buildrcn.h
    alliance/src/lynx/src/bulk.c
    alliance/src/lynx/src/bulk.h
    alliance/src/lynx/src/chklynxrcn.c
    alliance/src/lynx/src/chklynxrcn.h
    alliance/src/lynx/src/cutelbow.c
    alliance/src/lynx/src/cutelbow.h
    alliance/src/lynx/src/diffusion.c
    alliance/src/lynx/src/diffusion.h
    alliance/src/lynx/src/error.c
    alliance/src/lynx/src/error.h
    alliance/src/lynx/src/extract.c
    alliance/src/lynx/src/extract.h
    alliance/src/lynx/src/flatrds.c
    alliance/src/lynx/src/hole.c
    alliance/src/lynx/src/hole.h
    alliance/src/lynx/src/inter.c
    alliance/src/lynx/src/inter.h
    alliance/src/lynx/src/interval.c
    alliance/src/lynx/src/interval.h
    alliance/src/lynx/src/lynx.c
    alliance/src/lynx/src/lynx.h
    alliance/src/lynx/src/lynxrcn.h
    alliance/src/lynx/src/mbkrds.c
    alliance/src/lynx/src/mbkrds.h
    alliance/src/lynx/src/netlist.c
    alliance/src/lynx/src/netlist.h
    alliance/src/lynx/src/parse.c
    alliance/src/lynx/src/parse.h
    alliance/src/lynx/src/pattern.c
    alliance/src/lynx/src/pattern.h
    alliance/src/lynx/src/via.h
    alliance/src/lynx/src/znc.c
    alliance/src/lynx/src/znc.h
    alliance/src/mbk/Makefile.am
    alliance/src/mbk/configure.in
    alliance/src/mbk/man1/MBK_CATAL_NAME.1
    alliance/src/mbk/man1/MBK_CATA_LIB.1
    alliance/src/mbk/man1/MBK_FILTER_SFX.1
    alliance/src/mbk/man1/MBK_IN_FILTER.1
    alliance/src/mbk/man1/MBK_IN_LO.1
    alliance/src/mbk/man1/MBK_IN_PH.1
    alliance/src/mbk/man1/MBK_OUT_FILTER.1
    alliance/src/mbk/man1/MBK_OUT_LO.1
    alliance/src/mbk/man1/MBK_OUT_PH.1
    alliance/src/mbk/man1/MBK_SEPAR.1
    alliance/src/mbk/man1/MBK_TRACE_GETENV.1
    alliance/src/mbk/man1/MBK_VDD.1
    alliance/src/mbk/man1/MBK_VSS.1
    alliance/src/mbk/man1/MBK_WORK_LIB.1
    alliance/src/mbk/man1/Makefile.am
    alliance/src/mbk/man3/Makefile.am
    alliance/src/mbk/man3/addcapa.3
    alliance/src/mbk/man3/addchain.3
    alliance/src/mbk/man3/addht.3
    alliance/src/mbk/man3/addhtitem.3
    alliance/src/mbk/man3/addlocap.3
    alliance/src/mbk/man3/addlocon.3
    alliance/src/mbk/man3/addlofig.3
    alliance/src/mbk/man3/addloins.3
    alliance/src/mbk/man3/addlomodel.3
    alliance/src/mbk/man3/addlores.3
    alliance/src/mbk/man3/addloself.3
    alliance/src/mbk/man3/addlosig.3
    alliance/src/mbk/man3/addlotrs.3
    alliance/src/mbk/man3/addnum.3
    alliance/src/mbk/man3/addphcon.3
    alliance/src/mbk/man3/addphfig.3
    alliance/src/mbk/man3/addphins.3
    alliance/src/mbk/man3/addphref.3
    alliance/src/mbk/man3/addphseg.3
    alliance/src/mbk/man3/addphvia.3
    alliance/src/mbk/man3/addptype.3
    alliance/src/mbk/man3/alliancebanner.3
    alliance/src/mbk/man3/append.3
    alliance/src/mbk/man3/bigvia.3
    alliance/src/mbk/man3/chain.3
    alliance/src/mbk/man3/checkloconorder.3
    alliance/src/mbk/man3/concatname.3
    alliance/src/mbk/man3/defab.3
    alliance/src/mbk/man3/delchain.3
    alliance/src/mbk/man3/delht.3
    alliance/src/mbk/man3/delhtitem.3
    alliance/src/mbk/man3/dellocap.3
    alliance/src/mbk/man3/dellocon.3
    alliance/src/mbk/man3/dellofig.3
    alliance/src/mbk/man3/delloins.3
    alliance/src/mbk/man3/dellores.3
    alliance/src/mbk/man3/delloself.3
    alliance/src/mbk/man3/dellosig.3
    alliance/src/mbk/man3/dellotrs.3
    alliance/src/mbk/man3/delnum.3
    alliance/src/mbk/man3/delphcon.3
    alliance/src/mbk/man3/delphfig.3
    alliance/src/mbk/man3/delphins.3
    alliance/src/mbk/man3/delphref.3
    alliance/src/mbk/man3/delphseg.3
    alliance/src/mbk/man3/delphvia.3
    alliance/src/mbk/man3/delptype.3
    alliance/src/mbk/man3/downstr.3
    alliance/src/mbk/man3/filepath.3
    alliance/src/mbk/man3/flattenlofig.3
    alliance/src/mbk/man3/flattenphfig.3
    alliance/src/mbk/man3/freechain.3
    alliance/src/mbk/man3/freelomodel.3
    alliance/src/mbk/man3/freenum.3
    alliance/src/mbk/man3/freeptype.3
    alliance/src/mbk/man3/gethtitem.3
    alliance/src/mbk/man3/getlocap.3
    alliance/src/mbk/man3/getlocon.3
    alliance/src/mbk/man3/getlofig.3
    alliance/src/mbk/man3/getloins.3
    alliance/src/mbk/man3/getlomodel.3
    alliance/src/mbk/man3/getlores.3
    alliance/src/mbk/man3/getloself.3
    alliance/src/mbk/man3/getlosig.3
    alliance/src/mbk/man3/getlotrs.3
    alliance/src/mbk/man3/getphcon.3
    alliance/src/mbk/man3/getphfig.3
    alliance/src/mbk/man3/getphins.3
    alliance/src/mbk/man3/getphref.3
    alliance/src/mbk/man3/getptype.3
    alliance/src/mbk/man3/getsigname.3
    alliance/src/mbk/man3/givelosig.3
    alliance/src/mbk/man3/guessextdir.3
    alliance/src/mbk/man3/incatalog.3
    alliance/src/mbk/man3/incatalogdelete.3
    alliance/src/mbk/man3/incatalogfeed.3
    alliance/src/mbk/man3/incataloggds.3
    alliance/src/mbk/man3/instanceface.3
    alliance/src/mbk/man3/instr.3
    alliance/src/mbk/man3/isvdd.3
    alliance/src/mbk/man3/isvss.3
    alliance/src/mbk/man3/loadlofig.3
    alliance/src/mbk/man3/loadphfig.3
    alliance/src/mbk/man3/locap.3
    alliance/src/mbk/man3/locon.3
    alliance/src/mbk/man3/lofig.3
    alliance/src/mbk/man3/lofigchain.3
    alliance/src/mbk/man3/log.3
    alliance/src/mbk/man3/loins.3
    alliance/src/mbk/man3/lores.3
    alliance/src/mbk/man3/loself.3
    alliance/src/mbk/man3/losig.3
    alliance/src/mbk/man3/lotrs.3
    alliance/src/mbk/man3/mbk.3
    alliance/src/mbk/man3/mbkalloc.3
    alliance/src/mbk/man3/mbkenv.3
    alliance/src/mbk/man3/mbkfopen.3
    alliance/src/mbk/man3/mbkfree.3
    alliance/src/mbk/man3/mbkgetenv.3
    alliance/src/mbk/man3/mbkps.3
    alliance/src/mbk/man3/mbkrealloc.3
    alliance/src/mbk/man3/mbksetautoackchld.3
    alliance/src/mbk/man3/mbkunlink.3
    alliance/src/mbk/man3/mbkwaitpid.3
    alliance/src/mbk/man3/mlodebug.3
    alliance/src/mbk/man3/mphdebug.3
    alliance/src/mbk/man3/namealloc.3
    alliance/src/mbk/man3/namefind.3
    alliance/src/mbk/man3/nameindex.3
    alliance/src/mbk/man3/naturalstrcmp.3
    alliance/src/mbk/man3/phcon.3
    alliance/src/mbk/man3/phfig.3
    alliance/src/mbk/man3/phins.3
    alliance/src/mbk/man3/phref.3
    alliance/src/mbk/man3/phseg.3
    alliance/src/mbk/man3/phvia.3
    alliance/src/mbk/man3/ptype.3
    alliance/src/mbk/man3/restorealldir.3
    alliance/src/mbk/man3/restoredirvbe.3
    alliance/src/mbk/man3/reverse.3
    alliance/src/mbk/man3/rflattenlofig.3
    alliance/src/mbk/man3/rflattenphfig.3
    alliance/src/mbk/man3/savelofig.3
    alliance/src/mbk/man3/savephfig.3
    alliance/src/mbk/man3/sethtitem.3
    alliance/src/mbk/man3/setlocap.3
    alliance/src/mbk/man3/setlores.3
    alliance/src/mbk/man3/setloself.3
    alliance/src/mbk/man3/sortlocon.3
    alliance/src/mbk/man3/sortlosig.3
    alliance/src/mbk/man3/unflattenlofig.3
    alliance/src/mbk/man3/upstr.3
    alliance/src/mbk/man3/viewht.3
    alliance/src/mbk/man3/viewlo.3
    alliance/src/mbk/man3/viewlocap.3
    alliance/src/mbk/man3/viewlofig.3
    alliance/src/mbk/man3/viewlofigcon.3
    alliance/src/mbk/man3/viewloins.3
    alliance/src/mbk/man3/viewloinscon.3
    alliance/src/mbk/man3/viewlores.3
    alliance/src/mbk/man3/viewloself.3
    alliance/src/mbk/man3/viewlosig.3
    alliance/src/mbk/man3/viewlotrs.3
    alliance/src/mbk/man3/viewph.3
    alliance/src/mbk/man3/viewphcon.3
    alliance/src/mbk/man3/viewphfig.3
    alliance/src/mbk/man3/viewphins.3
    alliance/src/mbk/man3/viewphref.3
    alliance/src/mbk/man3/viewphseg.3
    alliance/src/mbk/man3/viewphvia.3
    alliance/src/mbk/man3/xyflat.3
    alliance/src/mbk/src/Makefile.am
    alliance/src/mbk/src/mbk_lo.c
    alliance/src/mbk/src/mbk_lo.h
    alliance/src/mbk/src/mbk_lo_util.c
    alliance/src/mbk/src/mbk_lo_util.h
    alliance/src/mbk/src/mbk_ph.c
    alliance/src/mbk/src/mbk_ph.h
    alliance/src/mbk/src/mbk_ph_util.c
    alliance/src/mbk/src/mbk_ph_util.h
    alliance/src/mbk/src/mbk_sys.c
    alliance/src/mbk/src/mbk_sys.h
    alliance/src/mbk/src/mbk_util.c
    alliance/src/mbk/src/mbk_util.h
    alliance/src/mbk/src/mlo.h
    alliance/src/mbk/src/mlu.h
    alliance/src/mbk/src/mph.h
    alliance/src/mbk/src/mpu.h
    alliance/src/mbk/src/mut.h
    alliance/src/mbk/src/rcn.h
    alliance/src/mbk/src/rcn_lo.c
    alliance/src/mbk/src/rcn_lo.h
    alliance/src/mbk/src/rcn_lo_util.c
    alliance/src/mbkal/Makefile.am
    alliance/src/mbkal/configure.in
    alliance/src/mbkal/doc/Makefile.am
    alliance/src/mbkal/doc/al.5
    alliance/src/mbkal/src/Makefile.am
    alliance/src/mbkal/src/alc_driv_l.c
    alliance/src/mbkal/src/alc_pars_l.c
    alliance/src/mbkal/src/alc_pars_l6.c
    alliance/src/mbkal/src/main.c
    alliance/src/mbkal/src/mal.h
    alliance/src/mbkap/Makefile.am
    alliance/src/mbkap/configure.in
    alliance/src/mbkap/src/Makefile.am
    alliance/src/mbkap/src/alc_driv_p.c
    alliance/src/mbkap/src/alc_pars_p.c
    alliance/src/mbkap/src/map.h
    alliance/src/mbkedif/Makefile.am
    alliance/src/mbkedif/configure.in
    alliance/src/mbkedif/src/Makefile.am
    alliance/src/mbkedif/src/driver.c
    alliance/src/mbkedif/src/parser_l.l
    alliance/src/mbkedif/src/parser_y.y
    alliance/src/mbkedif/src/time.c
    alliance/src/mbkhilo/Makefile.am
    alliance/src/mbkhilo/configure.in
    alliance/src/mbkhilo/src/Makefile.am
    alliance/src/mbkhilo/src/drive_hilo.c
    alliance/src/mbkmg/Makefile.am
    alliance/src/mbkmg/configure.in
    alliance/src/mbkmg/src/Makefile.am
    alliance/src/mbkmg/src/mbk2mg.c
    alliance/src/mbkmg/src/mg2mbk_l.l
    alliance/src/mbkmg/src/mg2mbk_y.y
    alliance/src/mbkmg/src/mmg.h
    alliance/src/mbkspice/Makefile.am
    alliance/src/mbkspice/configure.in
    alliance/src/mbkspice/doc/Makefile.am
    alliance/src/mbkspice/doc/spi.5
    alliance/src/mbkspice/etc/Makefile.am
    alliance/src/mbkspice/etc/spimodel.cfg
    alliance/src/mbkspice/src/Makefile.am
    alliance/src/mbkspice/src/msl.h
    alliance/src/mbkspice/src/spi_drive.c
    alliance/src/mbkspice/src/spi_drive.h
    alliance/src/mbkspice/src/spi_global.c
    alliance/src/mbkspice/src/spi_global.h
    alliance/src/mbkspice/src/spi_hash.c
    alliance/src/mbkspice/src/spi_hash.h
    alliance/src/mbkspice/src/spi_int.c
    alliance/src/mbkspice/src/spi_int.h
    alliance/src/mbkspice/src/spi_msg.c
    alliance/src/mbkspice/src/spi_msg.h
    alliance/src/mbkspice/src/spi_parse.c
    alliance/src/mbkspice/src/spi_parse.h
    alliance/src/mbkvhdl/Makefile.am
    alliance/src/mbkvhdl/configure.in
    alliance/src/mbkvhdl/src/Makefile.am
    alliance/src/mbkvhdl/src/mvl.h
    alliance/src/mbkvhdl/src/mvl_drive.c
    alliance/src/mbkvhdl/src/mvl_drive.h
    alliance/src/mbkvhdl/src/mvl_parse.c
    alliance/src/mbkvhdl/src/mvl_parse.h
    alliance/src/mbkvhdl/src/mvl_scomp_l.l
    alliance/src/mbkvhdl/src/mvl_scomp_y.y
    alliance/src/mbkvhdl/src/mvl_slex.h
    alliance/src/mbkvhdl/src/mvl_sspec.c
    alliance/src/mbkvhdl/src/mvl_sspec.h
    alliance/src/mbkvhdl/src/mvl_stdef.h
    alliance/src/mbkvhdl/src/mvl_stype.h
    alliance/src/mbkvhdl/src/mvl_syacc.h
    alliance/src/mbkvhdl/src/mvl_utdef.h
    alliance/src/mbkvhdl/src/mvl_util.c
    alliance/src/mbkvhdl/src/mvl_util.h
    alliance/src/mbkvhdl/src/mvl_utype.h
    alliance/src/mbkvhdlg/Makefile.am
    alliance/src/mbkvhdlg/configure.in
    alliance/src/mbkvhdlg/src/Makefile.am
    alliance/src/mbkvhdlg/src/gen_generic.c
    alliance/src/mbkvhdlg/src/gen_generic.h
    alliance/src/mbkvhdlg/src/gen_print.c
    alliance/src/mbkvhdlg/src/mvl_drive.c
    alliance/src/mbkvhdlg/src/mvl_drive.h
    alliance/src/mbkvhdlg/src/mvl_parse.c
    alliance/src/mbkvhdlg/src/mvl_parse.h
    alliance/src/mbkvhdlg/src/mvl_scomp_l.l
    alliance/src/mbkvhdlg/src/mvl_scomp_y.y
    alliance/src/mbkvhdlg/src/mvl_slex.h
    alliance/src/mbkvhdlg/src/mvl_sspec.c
    alliance/src/mbkvhdlg/src/mvl_sspec.h
    alliance/src/mbkvhdlg/src/mvl_stdef.h
    alliance/src/mbkvhdlg/src/mvl_stype.h
    alliance/src/mbkvhdlg/src/mvl_syacc.h
    alliance/src/mbkvhdlg/src/mvl_utdef.h
    alliance/src/mbkvhdlg/src/mvl_util.c
    alliance/src/mbkvhdlg/src/mvl_util.h
    alliance/src/mbkvhdlg/src/mvl_utype.h
    alliance/src/mbkvhdlg/src/vel_chain.c
    alliance/src/mbkvhdlg/src/vel_drive.c
    alliance/src/mbkvhdlg/src/vel_o.c
    alliance/src/mbkvhdlg/src/vel_sort.c
    alliance/src/mbkvhdlg/src/vel_util.c
    alliance/src/mbkvhdlg/src/vel_vect.c
    alliance/src/mbkvhdlg/src/vel_velo.h
    alliance/src/mbkvhdlg/src/x2vy_main.c
    alliance/src/mbkvrlog/Makefile.am
    alliance/src/mbkvrlog/configure.in
    alliance/src/mbkvrlog/src/Makefile.am
    alliance/src/mbkvrlog/src/drive_vlog.c
    alliance/src/mbkvti/Makefile.am
    alliance/src/mbkvti/configure.in
    alliance/src/mbkvti/src/Makefile.am
    alliance/src/mbkvti/src/drive_vti_l.c
    alliance/src/mbkvti/src/drive_vti_l.h
    alliance/src/mbkvti/src/drive_vti_p.c
    alliance/src/mbkvti/src/drive_vti_p.h
    alliance/src/mbkvti/src/mcl.h
    alliance/src/mbkvti/src/mcp.h
    alliance/src/mbkvti/src/parse_vti_l.c
    alliance/src/mbkvti/src/parse_vti_p.c
    alliance/src/mocha/Makefile.am
    alliance/src/mocha/configure.in
    alliance/src/mocha/man1/Makefile.am
    alliance/src/mocha/man1/moka.1
    alliance/src/mocha/src/Makefile.am
    alliance/src/mocha/src/mocha_bdd.c
    alliance/src/mocha/src/mocha_bdd.h
    alliance/src/mocha/src/mocha_beh.c
    alliance/src/mocha/src/mocha_beh.h
    alliance/src/mocha/src/mocha_check.c
    alliance/src/mocha/src/mocha_check.h
    alliance/src/mocha/src/mocha_ctl.c
    alliance/src/mocha/src/mocha_ctl.h
    alliance/src/mocha/src/mocha_debug.c
    alliance/src/mocha/src/mocha_debug.h
    alliance/src/mocha/src/mocha_fsm.c
    alliance/src/mocha/src/mocha_fsm.h
    alliance/src/mocha/src/mocha_main.c
    alliance/src/mocha/src/mocha_main.h
    alliance/src/mocha/src/mocha_shared.c
    alliance/src/mocha/src/mocha_shared.h
    alliance/src/mocha/src/mocha_syf.c
    alliance/src/mocha/src/mocha_syf.h
    alliance/src/motif.m4
    alliance/src/ocp/Makefile.am
    alliance/src/ocp/configure.in
    alliance/src/ocp/doc/Makefile.am
    alliance/src/ocp/doc/ocp.1
    alliance/src/ocp/oldgcc.m4
    alliance/src/ocp/src/Makefile.am
    alliance/src/ocp/src/common/Makefile.am
    alliance/src/ocp/src/common/PBBox.cpp
    alliance/src/ocp/src/common/PBBox.h
    alliance/src/ocp/src/common/PCommon.cpp
    alliance/src/ocp/src/common/PCommon.h
    alliance/src/ocp/src/common/PConstants.h
    alliance/src/ocp/src/common/PContainer.h
    alliance/src/ocp/src/common/PPos.cpp
    alliance/src/ocp/src/common/PPos.h
    alliance/src/ocp/src/placer/Makefile.am
    alliance/src/ocp/src/placer/Ocp.cpp
    alliance/src/ocp/src/placer/PBin.cpp
    alliance/src/ocp/src/placer/PBin.h
    alliance/src/ocp/src/placer/PCon.cpp
    alliance/src/ocp/src/placer/PCon.h
    alliance/src/ocp/src/placer/PDetPlacement.cpp
    alliance/src/ocp/src/placer/PDetPlacement.h
    alliance/src/ocp/src/placer/PDetSubRow.cpp
    alliance/src/ocp/src/placer/PDetSubRow.h
    alliance/src/ocp/src/placer/PDetToPlaceIns.cpp
    alliance/src/ocp/src/placer/PDetToPlaceIns.h
    alliance/src/ocp/src/placer/PElem.cpp
    alliance/src/ocp/src/placer/PElem.h
    alliance/src/ocp/src/placer/PFixedIns.cpp
    alliance/src/ocp/src/placer/PFixedIns.h
    alliance/src/ocp/src/placer/PIns.cpp
    alliance/src/ocp/src/placer/PIns.h
    alliance/src/ocp/src/placer/PMove.cpp
    alliance/src/ocp/src/placer/PMove.h
    alliance/src/ocp/src/placer/PNet.cpp
    alliance/src/ocp/src/placer/PNet.h
    alliance/src/ocp/src/placer/PONet.cpp
    alliance/src/ocp/src/placer/PONet.h
    alliance/src/ocp/src/placer/PPlacement.cpp
    alliance/src/ocp/src/placer/PPlacement.h
    alliance/src/ocp/src/placer/PPlacementFinal.cpp
    alliance/src/ocp/src/placer/PPlacementGlobal.cpp
    alliance/src/ocp/src/placer/PRow.cpp
    alliance/src/ocp/src/placer/PRow.h
    alliance/src/ocp/src/placer/PSubRow.cpp
    alliance/src/ocp/src/placer/PSubRow.h
    alliance/src/ocp/src/placer/PToPlaceIns.cpp
    alliance/src/ocp/src/placer/PToPlaceIns.h
    alliance/src/ocp/src/placer/iocgram.y
    alliance/src/ocp/src/placer/iocheader.h
    alliance/src/ocp/src/placer/iocscan.l
    alliance/src/ocr/Makefile.am
    alliance/src/ocr/configure.in
    alliance/src/ocr/doc/Makefile.am
    alliance/src/ocr/doc/draft
    alliance/src/ocr/doc/ocr.1
    alliance/src/ocr/src/Makefile.am
    alliance/src/ocr/src/dens/Makefile
    alliance/src/ocr/src/dens/densite.c
    alliance/src/ocr/src/include/Makefile.am
    alliance/src/ocr/src/include/display.h
    alliance/src/ocr/src/include/getOption.h
    alliance/src/ocr/src/include/mbk_tree.h
    alliance/src/ocr/src/include/ocr.h
    alliance/src/ocr/src/include/ocrAstar.h
    alliance/src/ocr/src/include/ocrConnectorUtil.h
    alliance/src/ocr/src/include/ocrGlobalRouting.h
    alliance/src/ocr/src/include/ocrInitDataBase.h
    alliance/src/ocr/src/include/ocrMst.h
    alliance/src/ocr/src/include/ocrNpoints.h
    alliance/src/ocr/src/include/ocrPath.h
    alliance/src/ocr/src/include/ocrSignalUtil.h
    alliance/src/ocr/src/include/ocrToPhFig.h
    alliance/src/ocr/src/include/ocrUtil.h
    alliance/src/ocr/src/include/ocrWPlaneLabeling.h
    alliance/src/ocr/src/include/ocrWRouting.h
    alliance/src/ocr/src/include/ocrWRoutingDataBase.h
    alliance/src/ocr/src/include/ocrWRoutingUtil.h
    alliance/src/ocr/src/include/ocrWSegLabeling.h
    alliance/src/ocr/src/include/ocrWeightedTree.h
    alliance/src/ocr/src/include/ocrWindow.h
    alliance/src/ocr/src/rout/Makefile.am
    alliance/src/ocr/src/rout/display.c
    alliance/src/ocr/src/rout/findNPointsPath.c
    alliance/src/ocr/src/rout/getOption.c
    alliance/src/ocr/src/rout/ocrAstar.cpp
    alliance/src/ocr/src/rout/ocrGlobalRouting.c
    alliance/src/ocr/src/rout/ocrMst.c
    alliance/src/ocr/src/rout/ocrRouter.c
    alliance/src/ocr/src/rout/ocrWeightedTree.c
    alliance/src/ocr/src/seg/Makefile.am
    alliance/src/ocr/src/seg/mbk_tree.c
    alliance/src/ocr/src/seg/ocrToPhFig.c
    alliance/src/ocr/src/seg/ocrUtil.c
    alliance/src/ocr/src/seg/ocrWPlaneLabeling.c
    alliance/src/ocr/src/seg/ocrWRouting.c
    alliance/src/ocr/src/seg/ocrWRoutingUtil.c
    alliance/src/ocr/src/seg/ocrWSegLabeling.c
    alliance/src/ocr/src/stat_netlist/Makefile
    alliance/src/ocr/src/stat_netlist/stat_netlist.c
    alliance/src/ocr/src/util/Makefile.am
    alliance/src/ocr/src/util/ocrConnectorUtil.c
    alliance/src/ocr/src/util/ocrDataBaseUtil.c
    alliance/src/ocr/src/util/ocrInitDataBase.c
    alliance/src/ocr/src/util/ocrSignalUtil.c
    alliance/src/ocr/src/util/ocrWindow.c
    alliance/src/pat/Makefile.am
    alliance/src/pat/configure.in
    alliance/src/pat/doc/Makefile.am
    alliance/src/pat/doc/libpat.3
    alliance/src/pat/doc/pat.5
    alliance/src/pat/src/Makefile.am
    alliance/src/pat/src/pat.h
    alliance/src/pat/src/pat_addpacom.c
    alliance/src/pat/src/pat_addpaevt.c
    alliance/src/pat/src/pat_addpagrp.c
    alliance/src/pat/src/pat_addpaini.c
    alliance/src/pat/src/pat_addpains.c
    alliance/src/pat/src/pat_addpaiol.c
    alliance/src/pat/src/pat_addpapat.c
    alliance/src/pat/src/pat_addpaseq.c
    alliance/src/pat/src/pat_crtpaiol.c
    alliance/src/pat/src/pat_error.c
    alliance/src/pat/src/pat_frepacom.c
    alliance/src/pat/src/pat_frepaevt.c
    alliance/src/pat/src/pat_frepaini.c
    alliance/src/pat/src/pat_frepaiol.c
    alliance/src/pat/src/pat_frepapat.c
    alliance/src/pat/src/pat_globals.c
    alliance/src/pat/src/pat_message.c
    alliance/src/pat/src/pat_warning.c
    alliance/src/pcbs/Makefile.am
    alliance/src/pcbs/configure.in
    alliance/src/pcbs/doc/Makefile.am
    alliance/src/pcbs/doc/emulbs.1
    alliance/src/pcbs/doc/pcbs.1
    alliance/src/pcbs/src/Makefile.am
    alliance/src/pcbs/src/bvl/Makefile.am
    alliance/src/pcbs/src/bvl/bvl999.h
    alliance/src/pcbs/src/bvl/bvl_bcomp_l.l
    alliance/src/pcbs/src/bvl/bvl_bcomp_y.y
    alliance/src/pcbs/src/bvl/bvl_bedef.h
    alliance/src/pcbs/src/bvl/bvl_blex.h
    alliance/src/pcbs/src/bvl/bvl_bspec.c
    alliance/src/pcbs/src/bvl/bvl_bspec.h
    alliance/src/pcbs/src/bvl/bvl_byacc.h
    alliance/src/pcbs/src/bvl/bvl_drive.c
    alliance/src/pcbs/src/bvl/bvl_drive.h
    alliance/src/pcbs/src/bvl/bvl_parse.c
    alliance/src/pcbs/src/bvl/bvl_parse.h
    alliance/src/pcbs/src/bvl/bvl_utdef.h
    alliance/src/pcbs/src/bvl/bvl_util.c
    alliance/src/pcbs/src/bvl/bvl_util.h
    alliance/src/pcbs/src/bvl/bvl_utype.h
    alliance/src/pcbs/src/emulbs/Makefile
    alliance/src/pcbs/src/emulbs/Makefile.am
    alliance/src/pcbs/src/emulbs/bstools.c
    alliance/src/pcbs/src/emulbs/bstools.h
    alliance/src/pcbs/src/emulbs/emul31.h
    alliance/src/pcbs/src/emulbs/emul_l.l
    alliance/src/pcbs/src/emulbs/emul_y.y
    alliance/src/pcbs/src/emulbs/emulbs.c
    alliance/src/pcbs/src/emulbs/global.h
    alliance/src/pcbs/src/emulbs/hardware_io.c
    alliance/src/pcbs/src/emulbs/hardware_io.h
    alliance/src/pcbs/src/emulbs/infos.c
    alliance/src/pcbs/src/emulbs/infos.h
    alliance/src/pcbs/src/emulbs/traduction.c
    alliance/src/pcbs/src/emulbs/traduction.h
    alliance/src/pcbs/src/emulbs/type_infos.h
    alliance/src/pcbs/src/emulbs/util.c
    alliance/src/pcbs/src/emulbs/util.h
    alliance/src/pcbs/src/emulbs/verif.c
    alliance/src/pcbs/src/emulbs/verif.h
    alliance/src/pcbs/src/lpscan/Config.in
    alliance/src/pcbs/src/lpscan/HOWTO.INSTALL
    alliance/src/pcbs/src/lpscan/Makefile
    alliance/src/pcbs/src/lpscan/lpscan.c
    alliance/src/pcbs/src/lpscan/lpscan.h
    alliance/src/pcbs/src/pcbs/Makefile
    alliance/src/pcbs/src/pcbs/Makefile.am
    alliance/src/pcbs/src/pcbs/bstools.c
    alliance/src/pcbs/src/pcbs/bstools.h
    alliance/src/pcbs/src/pcbs/emul31.h
    alliance/src/pcbs/src/pcbs/emul_y.y
    alliance/src/pcbs/src/pcbs/global.h
    alliance/src/pcbs/src/pcbs/infos.c
    alliance/src/pcbs/src/pcbs/infos.h
    alliance/src/pcbs/src/pcbs/lexeur_l.l
    alliance/src/pcbs/src/pcbs/parseur.c
    alliance/src/pcbs/src/pcbs/parseur.h
    alliance/src/pcbs/src/pcbs/pcbs.c
    alliance/src/pcbs/src/pcbs/pcbs.h
    alliance/src/pcbs/src/pcbs/pga_y.y
    alliance/src/pcbs/src/pcbs/sig.c
    alliance/src/pcbs/src/pcbs/sig.h
    alliance/src/pcbs/src/pcbs/traduction.c
    alliance/src/pcbs/src/pcbs/traduction.h
    alliance/src/pcbs/src/pcbs/type_infos.h
    alliance/src/pcbs/src/pcbs/util.c
    alliance/src/pcbs/src/pcbs/util.h
    alliance/src/pcbs/src/pcbs/verif.c
    alliance/src/pcbs/src/pcbs/verif.h
    alliance/src/phl/Makefile.am
    alliance/src/phl/configure.in
    alliance/src/phl/src/Makefile.am
    alliance/src/phl/src/pat_debug.c
    alliance/src/phl/src/pat_debug.h
    alliance/src/phl/src/pat_getusage.c
    alliance/src/phl/src/phl.h
    alliance/src/ppt/Makefile.am
    alliance/src/ppt/configure.in
    alliance/src/ppt/src/Makefile.am
    alliance/src/ppt/src/pat_decl.h
    alliance/src/ppt/src/pat_decl_l.l
    alliance/src/ppt/src/pat_decl_y.y
    alliance/src/ppt/src/pat_defs.h
    alliance/src/ppt/src/pat_desc.h
    alliance/src/ppt/src/pat_desc_y.y
    alliance/src/ppt/src/pat_drvpat.c
    alliance/src/ppt/src/pat_lodpaseq.c
    alliance/src/ppt/src/pat_pattostr.c
    alliance/src/ppt/src/pat_prspat.c
    alliance/src/ppt/src/pat_savpaseq.c
    alliance/src/ppt/src/pat_type.h
    alliance/src/ppt/src/ppt.h
    alliance/src/proof/Makefile.am
    alliance/src/proof/configure.in
    alliance/src/proof/man1/Makefile.am
    alliance/src/proof/man1/proof.1
    alliance/src/proof/src/Makefile.am
    alliance/src/proof/src/proof_compile.c
    alliance/src/proof/src/proof_compile.h
    alliance/src/proof/src/proof_main.c
    alliance/src/proof/src/proof_util.c
    alliance/src/proof/src/proof_util.h
    alliance/src/rds/Makefile.am
    alliance/src/rds/configure.in
    alliance/src/rds/etc/Makefile.am
    alliance/src/rds/etc/cmos.rds
    alliance/src/rds/man3/Makefile.am
    alliance/src/rds/man3/addrdsfig.3
    alliance/src/rds/man3/addrdsfigrec.3
    alliance/src/rds/man3/addrdsins.3
    alliance/src/rds/man3/addrdsinsrec.3
    alliance/src/rds/man3/addrdsrecwindow.3
    alliance/src/rds/man3/allocrdsfig.3
    alliance/src/rds/man3/allocrdsins.3
    alliance/src/rds/man3/allocrdsrec.3
    alliance/src/rds/man3/allocrdsrecwin.3
    alliance/src/rds/man3/allocrdswin.3
    alliance/src/rds/man3/allocrdswindow.3
    alliance/src/rds/man3/allocrdswinrec.3
    alliance/src/rds/man3/buildrdswindow.3
    alliance/src/rds/man3/conmbkrds.3
    alliance/src/rds/man3/delrdsfig.3
    alliance/src/rds/man3/delrdsfigrec.3
    alliance/src/rds/man3/delrdsins.3
    alliance/src/rds/man3/delrdsinsrec.3
    alliance/src/rds/man3/delrdsrecwindow.3
    alliance/src/rds/man3/destroyrdswindow.3
    alliance/src/rds/man3/figmbkrds.3
    alliance/src/rds/man3/freerdsfig.3
    alliance/src/rds/man3/freerdsins.3
    alliance/src/rds/man3/freerdsrec.3
    alliance/src/rds/man3/getrdsmodellist.3
    alliance/src/rds/man3/insconmbkrds.3
    alliance/src/rds/man3/insmbkrds.3
    alliance/src/rds/man3/insrefmbkrds.3
    alliance/src/rds/man3/inssegmbkrds.3
    alliance/src/rds/man3/instanceface.3
    alliance/src/rds/man3/insviambkrds.3
    alliance/src/rds/man3/loadrdsfig.3
    alliance/src/rds/man3/loadrdsparam.3
    alliance/src/rds/man3/modelmbkrds.3
    alliance/src/rds/man3/rdsalloc.3
    alliance/src/rds/man3/rdsenv.3
    alliance/src/rds/man3/rdsfree.3
    alliance/src/rds/man3/refmbkrds.3
    alliance/src/rds/man3/roundrdsrec.3
    alliance/src/rds/man3/saverdsfig.3
    alliance/src/rds/man3/searchrdsfig.3
    alliance/src/rds/man3/segmbkrds.3
    alliance/src/rds/man3/viambkrds.3
    alliance/src/rds/man3/viewrdsfig.3
    alliance/src/rds/man3/viewrdsins.3
    alliance/src/rds/man3/viewrdsparam.3
    alliance/src/rds/man3/viewrdsrec.3
    alliance/src/rds/man3/viewrdswindow.3
    alliance/src/rds/man3/viewrfmcon.3
    alliance/src/rds/man3/viewrfmfig.3
    alliance/src/rds/man3/viewrfmins.3
    alliance/src/rds/man3/viewrfmrec.3
    alliance/src/rds/man3/viewrfmref.3
    alliance/src/rds/man3/viewrfmseg.3
    alliance/src/rds/man3/viewrfmvia.3
    alliance/src/rds/src/Makefile.am
    alliance/src/rds/src/main.c
    alliance/src/rds/src/prout.c
    alliance/src/rds/src/rds.h
    alliance/src/rds/src/rdsadd.c
    alliance/src/rds/src/rdsadd.h
    alliance/src/rds/src/rdsalloc.c
    alliance/src/rds/src/rdsalloc.h
    alliance/src/rds/src/rdsdebug.c
    alliance/src/rds/src/rdsdebug.h
    alliance/src/rds/src/rdsdel.c
    alliance/src/rds/src/rdsdel.h
    alliance/src/rds/src/rdserror.c
    alliance/src/rds/src/rdserror.h
    alliance/src/rds/src/rdsfree.c
    alliance/src/rds/src/rdsfree.h
    alliance/src/rds/src/rdsview.c
    alliance/src/rds/src/rdsview.h
    alliance/src/rds/src/rfm.h
    alliance/src/rds/src/rfmacces.c
    alliance/src/rds/src/rfmacces.h
    alliance/src/rds/src/rfmerror.c
    alliance/src/rds/src/rfmerror.h
    alliance/src/rds/src/rfmview.c
    alliance/src/rds/src/rfmview.h
    alliance/src/rds/src/rpr.h
    alliance/src/rds/src/rprerror.c
    alliance/src/rds/src/rprerror.h
    alliance/src/rds/src/rprparse.c
    alliance/src/rds/src/rprparse.h
    alliance/src/rds/src/rprview.c
    alliance/src/rds/src/rprview.h
    alliance/src/rds/src/rtl.h
    alliance/src/rds/src/rtlacces.c
    alliance/src/rds/src/rtlacces.h
    alliance/src/rds/src/rtlenv.c
    alliance/src/rds/src/rtlenv.h
    alliance/src/rds/src/rtlerror.c
    alliance/src/rds/src/rtlerror.h
    alliance/src/rds/src/rut.h
    alliance/src/rds/src/rutacces.c
    alliance/src/rds/src/rutacces.h
    alliance/src/rds/src/rutequi.c
    alliance/src/rds/src/rutequi.h
    alliance/src/rds/src/ruterror.c
    alliance/src/rds/src/ruterror.h
    alliance/src/rds/src/rutpoly.c
    alliance/src/rds/src/rutpoly.h
    alliance/src/rds/src/rutunify.c
    alliance/src/rds/src/rutunify.h
    alliance/src/rds/src/rwi.h
    alliance/src/rds/src/rwiadd.c
    alliance/src/rds/src/rwiadd.h
    alliance/src/rds/src/rwialloc.c
    alliance/src/rds/src/rwialloc.h
    alliance/src/rds/src/rwibuild.c
    alliance/src/rds/src/rwibuild.h
    alliance/src/rds/src/rwidel.c
    alliance/src/rds/src/rwidel.h
    alliance/src/rds/src/rwidestroy.c
    alliance/src/rds/src/rwidestroy.h
    alliance/src/rds/src/rwierror.c
    alliance/src/rds/src/rwierror.h
    alliance/src/rds/src/rwifree.c
    alliance/src/rds/src/rwifree.h
    alliance/src/rds/src/rwiget.c
    alliance/src/rds/src/rwiget.h
    alliance/src/rds/src/rwiview.c
    alliance/src/rds/src/rwiview.h
    alliance/src/rdscif/Makefile.am
    alliance/src/rdscif/configure.in
    alliance/src/rdscif/src/Makefile.am
    alliance/src/rdscif/src/cif.h
    alliance/src/rdscif/src/cif_drive.c
    alliance/src/rdscif/src/cif_drive.h
    alliance/src/rdscif/src/cif_error.c
    alliance/src/rdscif/src/cif_error.h
    alliance/src/rdscif/src/cif_parse.c
    alliance/src/rdscif/src/cif_parse.h
    alliance/src/rdscif/src/rcf.h
    alliance/src/rdsgds/Makefile.am
    alliance/src/rdsgds/configure.in
    alliance/src/rdsgds/src/Makefile.am
    alliance/src/rdsgds/src/gds.h
    alliance/src/rdsgds/src/gds_drive.c
    alliance/src/rdsgds/src/gds_drive.h
    alliance/src/rdsgds/src/gds_error.c
    alliance/src/rdsgds/src/gds_error.h
    alliance/src/rdsgds/src/gds_parse.c
    alliance/src/rdsgds/src/gds_parse.h
    alliance/src/rdsgds/src/gds_swap.c
    alliance/src/rdsgds/src/gds_swap.h
    alliance/src/rdsgds/src/rgs.h
    alliance/src/ring/Makefile.am
    alliance/src/ring/configure.in
    alliance/src/ring/doc/Makefile.am
    alliance/src/ring/doc/ring.1
    alliance/src/ring/src/Makefile.am
    alliance/src/ring/src/barre.c
    alliance/src/ring/src/barre.h
    alliance/src/ring/src/bigvia.c
    alliance/src/ring/src/bigvia.h
    alliance/src/ring/src/compress.c
    alliance/src/ring/src/compress.h
    alliance/src/ring/src/deport.c
    alliance/src/ring/src/deport.h
    alliance/src/ring/src/distance.c
    alliance/src/ring/src/distance.h
    alliance/src/ring/src/lireplace.c
    alliance/src/ring/src/lireplace.h
    alliance/src/ring/src/lirevues.c
    alliance/src/ring/src/lirevues.h
    alliance/src/ring/src/param.c
    alliance/src/ring/src/param.h
    alliance/src/ring/src/placement.c
    alliance/src/ring/src/placement.h
    alliance/src/ring/src/posercircuit.c
    alliance/src/ring/src/posercircuit.h
    alliance/src/ring/src/ring2.c
    alliance/src/ring/src/ringram.y
    alliance/src/ring/src/rinscan.l
    alliance/src/ring/src/routage.c
    alliance/src/ring/src/routage.h
    alliance/src/ring/src/routalim.c
    alliance/src/ring/src/routalim.h
    alliance/src/ring/src/sesame.c
    alliance/src/ring/src/sesame.h
    alliance/src/ring/src/stat.c
    alliance/src/ring/src/stat.h
    alliance/src/ring/src/struct.c
    alliance/src/ring/src/struct.h
    alliance/src/ring/src/struct2.c
    alliance/src/rtd/Makefile.am
    alliance/src/rtd/configure.in
    alliance/src/rtd/src/Makefile.am
    alliance/src/rtd/src/rtd.h
    alliance/src/rtd/src/rtd_drive.c
    alliance/src/rtd/src/rtd_drive.h
    alliance/src/rtd/src/rtd_error.c
    alliance/src/rtd/src/rtd_error.h
    alliance/src/rtd/src/rtd_get.c
    alliance/src/rtd/src/rtd_get.h
    alliance/src/rtd/src/rtd_parse.c
    alliance/src/rtd/src/rtd_parse.h
    alliance/src/rtn/Makefile.am
    alliance/src/rtn/configure.in
    alliance/src/rtn/src/Makefile.am
    alliance/src/rtn/src/main.c
    alliance/src/rtn/src/rtn.h
    alliance/src/rtn/src/rtnadd.c
    alliance/src/rtn/src/rtnadd.h
    alliance/src/rtn/src/rtnalloc.c
    alliance/src/rtn/src/rtnalloc.h
    alliance/src/rtn/src/rtndel.c
    alliance/src/rtn/src/rtndel.h
    alliance/src/rtn/src/rtnerror.c
    alliance/src/rtn/src/rtnerror.h
    alliance/src/rtn/src/rtnfree.c
    alliance/src/rtn/src/rtnfree.h
    alliance/src/rtn/src/rtnget.c
    alliance/src/rtn/src/rtnget.h
    alliance/src/rtn/src/rtnsearch.c
    alliance/src/rtn/src/rtnsearch.h
    alliance/src/rtn/src/rtnview.c
    alliance/src/rtn/src/rtnview.h
    alliance/src/s2r/Makefile.am
    alliance/src/s2r/configure.in
    alliance/src/s2r/doc/Makefile.am
    alliance/src/s2r/doc/s2r.1
    alliance/src/s2r/src/Makefile.am
    alliance/src/s2r/src/generic.h
    alliance/src/s2r/src/hash.c
    alliance/src/s2r/src/hash.h
    alliance/src/s2r/src/main.c
    alliance/src/s2r/src/maxima.h
    alliance/src/s2r/src/merge.c
    alliance/src/s2r/src/merge.h
    alliance/src/s2r/src/postrat.c
    alliance/src/s2r/src/postrat.h
    alliance/src/s2r/src/rdsacces.c
    alliance/src/s2r/src/rdsacces.h
    alliance/src/s2r/src/rdsx2y.c
    alliance/src/s2r/src/statistics.c
    alliance/src/s2r/src/statistics.h
    alliance/src/scapin/Makefile.am
    alliance/src/scapin/configure.in
    alliance/src/scapin/etc/Makefile.am
    alliance/src/scapin/etc/sxlib.scapin
    alliance/src/scapin/man1/Makefile.am
    alliance/src/scapin/man1/scapin.1
    alliance/src/scapin/src/Makefile.am
    alliance/src/scapin/src/scan_insert.c
    alliance/src/scapin/src/scan_insert.h
    alliance/src/scapin/src/scan_main.c
    alliance/src/scapin/src/scan_main.h
    alliance/src/scapin/src/scan_param.c
    alliance/src/scapin/src/scan_param.h
    alliance/src/scapin/src/scan_path.c
    alliance/src/scapin/src/scan_path.h
    alliance/src/scl/Makefile.am
    alliance/src/scl/configure.in
    alliance/src/scl/src/Makefile.am
    alliance/src/scl/src/main.c
    alliance/src/scl/src/scg.h
    alliance/src/scl/src/scgbefig.c
    alliance/src/scl/src/scgbefig.h
    alliance/src/scl/src/scglofig.c
    alliance/src/scl/src/scglofig.h
    alliance/src/scl/src/scgmain.c
    alliance/src/scl/src/scgmain.h
    alliance/src/scl/src/schadd.c
    alliance/src/scl/src/schadd.h
    alliance/src/scl/src/schalloc.c
    alliance/src/scl/src/schalloc.h
    alliance/src/scl/src/schdel.c
    alliance/src/scl/src/schdel.h
    alliance/src/scl/src/schenv.c
    alliance/src/scl/src/schenv.h
    alliance/src/scl/src/scherror.c
    alliance/src/scl/src/scherror.h
    alliance/src/scl/src/schfree.c
    alliance/src/scl/src/schfree.h
    alliance/src/scl/src/schget.c
    alliance/src/scl/src/schget.h
    alliance/src/scl/src/schview.c
    alliance/src/scl/src/schview.h
    alliance/src/scl/src/scl.h
    alliance/src/scl/src/scp.h
    alliance/src/scl/src/scpadd.c
    alliance/src/scl/src/scpadd.h
    alliance/src/scl/src/scpalloc.c
    alliance/src/scl/src/scpalloc.h
    alliance/src/scl/src/scpbuild.c
    alliance/src/scl/src/scpbuild.h
    alliance/src/scl/src/scpdel.c
    alliance/src/scl/src/scpdel.h
    alliance/src/scl/src/scpfree.c
    alliance/src/scl/src/scpfree.h
    alliance/src/scl/src/scpswap.h
    alliance/src/sea/Makefile.am
    alliance/src/sea/configure.in
    alliance/src/sea/etc/Makefile.am
    alliance/src/sea/etc/cmos_12.lef
    alliance/src/sea/etc/se_defaults.mac
    alliance/src/sea/src/DEF2a.c
    alliance/src/sea/src/DEF_actions.c
    alliance/src/sea/src/DEF_actions.h
    alliance/src/sea/src/DEF_drive.c
    alliance/src/sea/src/DEF_drive.h
    alliance/src/sea/src/DEF_grammar.h
    alliance/src/sea/src/DEF_grammar_lex.l
    alliance/src/sea/src/DEF_grammar_yacc.y
    alliance/src/sea/src/GNU_Defs.h
    alliance/src/sea/src/LEF_drive.c
    alliance/src/sea/src/LEF_drive.h
    alliance/src/sea/src/LEF_drive_sxlib.c
    alliance/src/sea/src/LEF_drive_sxlib.h
    alliance/src/sea/src/MAC_drive.c
    alliance/src/sea/src/MAC_drive.h
    alliance/src/sea/src/Makefile.am
    alliance/src/sea/src/a2DEF.c
    alliance/src/sea/src/a2lef.sh
    alliance/src/sea/src/debug.c
    alliance/src/sea/src/debugoff.h
    alliance/src/sea/src/debugon.h
    alliance/src/sea/src/sea.sh
    alliance/src/sea/src/seplace.sh
    alliance/src/sea/src/seroute.sh
    alliance/src/sea/src/sxlib2LEF.c
    alliance/src/sea/src/util_Defs.h
    alliance/src/sea/src/util_Floorplan.c
    alliance/src/sea/src/util_Inter.c
    alliance/src/sea/src/util_LEFDEF.c
    alliance/src/sea/src/util_MBK.c
    alliance/src/sea/src/util_Power.c
    alliance/src/sea/src/util_RTU.c
    alliance/src/sea/src/util_Sys.c
    alliance/src/syf/Makefile.am
    alliance/src/syf/configure.in
    alliance/src/syf/man1/Makefile.am
    alliance/src/syf/man1/syf.1
    alliance/src/syf/src/Makefile.am
    alliance/src/syf/src/fbh_parse.c
    alliance/src/syf/src/fbh_parse.h
    alliance/src/syf/src/kis_parse.c
    alliance/src/syf/src/kis_parse.h
    alliance/src/syf/src/syf_asp.c
    alliance/src/syf/src/syf_asp.h
    alliance/src/syf/src/syf_bdd.c
    alliance/src/syf/src/syf_bdd.h
    alliance/src/syf/src/syf_comp.c
    alliance/src/syf/src/syf_comp.h
    alliance/src/syf/src/syf_cost.c
    alliance/src/syf/src/syf_cost.h
    alliance/src/syf/src/syf_dc.c
    alliance/src/syf/src/syf_dc.h
    alliance/src/syf/src/syf_encod.c
    alliance/src/syf/src/syf_encod.h
    alliance/src/syf/src/syf_env.c
    alliance/src/syf/src/syf_env.h
    alliance/src/syf/src/syf_error.c
    alliance/src/syf/src/syf_error.h
    alliance/src/syf/src/syf_fsm.c
    alliance/src/syf/src/syf_fsm.h
    alliance/src/syf/src/syf_fsm2fbh.c
    alliance/src/syf/src/syf_fsm2fbh.h
    alliance/src/syf/src/syf_jedi.c
    alliance/src/syf/src/syf_jedi.h
    alliance/src/syf/src/syf_main.c
    alliance/src/syf/src/syf_main.h
    alliance/src/syf/src/syf_must.c
    alliance/src/syf/src/syf_must.h
    alliance/src/syf/src/syf_onehot.c
    alliance/src/syf/src/syf_onehot.h
    alliance/src/syf/src/syf_random.c
    alliance/src/syf/src/syf_random.h
    alliance/src/syf/src/syf_simp.c
    alliance/src/syf/src/syf_simp.h
    alliance/src/syf/src/syf_synth.c
    alliance/src/syf/src/syf_synth.h
    alliance/src/syf/src/syf_tools.c
    alliance/src/syf/src/syf_tools.h
    alliance/src/syf/src/syf_user.c
    alliance/src/syf/src/syf_user.h
    alliance/src/syf/src/syf_verify.c
    alliance/src/syf/src/syf_verify.h
    alliance/src/vasy/Makefile.am
    alliance/src/vasy/configure.in
    alliance/src/vasy/man1/Makefile.am
    alliance/src/vasy/man1/vasy.1
    alliance/src/vasy/man5/Makefile.am
    alliance/src/vasy/man5/vasy.5
    alliance/src/vasy/src/Makefile.am
    alliance/src/vasy/src/vasy_analys.c
    alliance/src/vasy/src/vasy_analys.h
    alliance/src/vasy/src/vasy_array.c
    alliance/src/vasy/src/vasy_array.h
    alliance/src/vasy/src/vasy_debug.c
    alliance/src/vasy/src/vasy_debug.h
    alliance/src/vasy/src/vasy_drvalc.c
    alliance/src/vasy/src/vasy_drvalc.h
    alliance/src/vasy/src/vasy_drvrtl.c
    alliance/src/vasy/src/vasy_drvrtl.h
    alliance/src/vasy/src/vasy_drvsyn.c
    alliance/src/vasy/src/vasy_drvsyn.h
    alliance/src/vasy/src/vasy_drvvex.c
    alliance/src/vasy/src/vasy_drvvex.h
    alliance/src/vasy/src/vasy_drvvlog.c
    alliance/src/vasy/src/vasy_drvvlog.h
    alliance/src/vasy/src/vasy_elabo.c
    alliance/src/vasy/src/vasy_elabo.h
    alliance/src/vasy/src/vasy_error.c
    alliance/src/vasy/src/vasy_error.h
    alliance/src/vasy/src/vasy_func.c
    alliance/src/vasy/src/vasy_func.h
    alliance/src/vasy/src/vasy_generate.c
    alliance/src/vasy/src/vasy_generate.h
    alliance/src/vasy/src/vasy_generic.c
    alliance/src/vasy/src/vasy_generic.h
    alliance/src/vasy/src/vasy_loop.c
    alliance/src/vasy/src/vasy_loop.h
    alliance/src/vasy/src/vasy_main.c
    alliance/src/vasy/src/vasy_main.h
    alliance/src/vasy/src/vasy_mulwait.c
    alliance/src/vasy/src/vasy_mulwait.h
    alliance/src/vasy/src/vasy_onewait.c
    alliance/src/vasy/src/vasy_onewait.h
    alliance/src/vasy/src/vasy_parse.c
    alliance/src/vasy/src/vasy_parse.h
    alliance/src/vasy/src/vasy_preanal.c
    alliance/src/vasy/src/vasy_preanal.h
    alliance/src/vasy/src/vasy_redact.c
    alliance/src/vasy/src/vasy_redact.h
    alliance/src/vasy/src/vasy_redinst.c
    alliance/src/vasy/src/vasy_redinst.h
    alliance/src/vasy/src/vasy_reduce.c
    alliance/src/vasy/src/vasy_reduce.h
    alliance/src/vasy/src/vasy_redwait.c
    alliance/src/vasy/src/vasy_redwait.h
    alliance/src/vasy/src/vasy_shared.c
    alliance/src/vasy/src/vasy_shared.h
    alliance/src/vasy/src/vasy_simprtl.c
    alliance/src/vasy/src/vasy_simprtl.h
    alliance/src/vasy/src/vasy_simul.c
    alliance/src/vasy/src/vasy_simul.h
    alliance/src/vasy/src/vasy_support.c
    alliance/src/vasy/src/vasy_support.h
    alliance/src/vasy/src/vasy_synth.c
    alliance/src/vasy/src/vasy_synth.h
    alliance/src/vasy/src/vasy_vexbdd.c
    alliance/src/vasy/src/vasy_vexbdd.h
    alliance/src/vbh/Makefile.am
    alliance/src/vbh/configure.in
    alliance/src/vbh/src/Makefile.am
    alliance/src/vbh/src/vbh.h
    alliance/src/vbh/src/vbh_add.c
    alliance/src/vbh/src/vbh_crt.c
    alliance/src/vbh/src/vbh_dup.c
    alliance/src/vbh/src/vbh_fre.c
    alliance/src/vbh/src/vbh_simp.c
    alliance/src/vbh/src/vbh_view.c
    alliance/src/vbl/Makefile.am
    alliance/src/vbl/configure.in
    alliance/src/vbl/src/Makefile.am
    alliance/src/vbl/src/main.c
    alliance/src/vbl/src/vbl.h
    alliance/src/vbl/src/vbl_bcomp_l.l
    alliance/src/vbl/src/vbl_bcomp_y.y
    alliance/src/vbl/src/vbl_bedef.h
    alliance/src/vbl/src/vbl_blex.h
    alliance/src/vbl/src/vbl_bspec.c
    alliance/src/vbl/src/vbl_bspec.h
    alliance/src/vbl/src/vbl_byacc.h
    alliance/src/vbl/src/vbl_parse.c
    alliance/src/vbl/src/vbl_util.c
    alliance/src/vbl/src/vbl_util.h
    alliance/src/vbl/src/vbl_utype.h
    alliance/src/vbl/src/vhdl.yac
    alliance/src/vex/Makefile.am
    alliance/src/vex/configure.in
    alliance/src/vex/src/Makefile.am
    alliance/src/vex/src/main.c
    alliance/src/vex/src/vex.h
    alliance/src/vex/src/vexadd.c
    alliance/src/vex/src/vexadd.h
    alliance/src/vex/src/vexalloc.c
    alliance/src/vex/src/vexalloc.h
    alliance/src/vex/src/vexcreate.c
    alliance/src/vex/src/vexcreate.h
    alliance/src/vex/src/vexdel.c
    alliance/src/vex/src/vexdel.h
    alliance/src/vex/src/vexdup.c
    alliance/src/vex/src/vexdup.h
    alliance/src/vex/src/vexenv.c
    alliance/src/vex/src/vexenv.h
    alliance/src/vex/src/vexerror.c
    alliance/src/vex/src/vexerror.h
    alliance/src/vex/src/vexeval.c
    alliance/src/vex/src/vexeval.h
    alliance/src/vex/src/vexextend.c
    alliance/src/vex/src/vexextend.h
    alliance/src/vex/src/vexfree.c
    alliance/src/vex/src/vexfree.h
    alliance/src/vex/src/vexget.c
    alliance/src/vex/src/vexget.h
    alliance/src/vex/src/vexis.c
    alliance/src/vex/src/vexis.h
    alliance/src/vex/src/vexoptim.c
    alliance/src/vex/src/vexoptim.h
    alliance/src/vex/src/vexshift.c
    alliance/src/vex/src/vexshift.h
    alliance/src/vex/src/vexsimp.c
    alliance/src/vex/src/vexsimp.h
    alliance/src/vex/src/vexslice.c
    alliance/src/vex/src/vexslice.h
    alliance/src/vex/src/vexunflat.c
    alliance/src/vex/src/vexunflat.h
    alliance/src/vex/src/vexview.c
    alliance/src/vex/src/vexview.h
    alliance/src/vpd/Makefile.am
    alliance/src/vpd/configure.in
    alliance/src/vpd/src/Makefile.am
    alliance/src/vpd/src/vpd.h
    alliance/src/vpd/src/vpd_drive.c
    alliance/src/vpd/src/vpd_drive.h
    alliance/src/vpd/src/vpd_error.c
    alliance/src/vpd/src/vpd_error.h
    alliance/src/vpd/src/vpd_parse.c
    alliance/src/vpd/src/vpd_parse.h
    alliance/src/vpn/Makefile.am
    alliance/src/vpn/configure.in
    alliance/src/vpn/src/Makefile.am
    alliance/src/vpn/src/main.c
    alliance/src/vpn/src/toto.c
    alliance/src/vpn/src/vpn.h
    alliance/src/vpn/src/vpnadd.c
    alliance/src/vpn/src/vpnadd.h
    alliance/src/vpn/src/vpnalloc.c
    alliance/src/vpn/src/vpnalloc.h
    alliance/src/vpn/src/vpndel.c
    alliance/src/vpn/src/vpndel.h
    alliance/src/vpn/src/vpnenv.c
    alliance/src/vpn/src/vpnenv.h
    alliance/src/vpn/src/vpnerror.c
    alliance/src/vpn/src/vpnerror.h
    alliance/src/vpn/src/vpnfree.c
    alliance/src/vpn/src/vpnfree.h
    alliance/src/vpn/src/vpnget.c
    alliance/src/vpn/src/vpnget.h
    alliance/src/vpn/src/vpnsearch.c
    alliance/src/vpn/src/vpnsearch.h
    alliance/src/vpn/src/vpnsimp.c
    alliance/src/vpn/src/vpnsimp.h
    alliance/src/vpn/src/vpnunion.c
    alliance/src/vpn/src/vpnunion.h
    alliance/src/vpn/src/vpnview.c
    alliance/src/vpn/src/vpnview.h
    alliance/src/vtl/Makefile.am
    alliance/src/vtl/configure.in
    alliance/src/vtl/src/Makefile.am
    alliance/src/vtl/src/vtl.h
    alliance/src/vtl/src/vtlacces.c
    alliance/src/vtl/src/vtlacces.h
    alliance/src/vtl/src/vtlerror.c
    alliance/src/vtl/src/vtlerror.h
    alliance/src/vvh/Makefile.am
    alliance/src/vvh/configure.in
    alliance/src/vvh/src/Makefile.am
    alliance/src/vvh/src/vvh.h
    alliance/src/vvh/src/vvh_drive.c
    alliance/src/vvh/src/vvh_drive.h
    alliance/src/vvh/src/vvh_error.c
    alliance/src/vvh/src/vvh_error.h
    alliance/src/vvh/src/vvh_parse.c
    alliance/src/vvh/src/vvh_parse.h
    alliance/src/vvh/src/vvh_vbh2vpn.c
    alliance/src/vvh/src/vvh_vbh2vpn.h
    alliance/src/x2y/Makefile.am
    alliance/src/x2y/configure.in
    alliance/src/x2y/doc/Makefile.am
    alliance/src/x2y/doc/x2y.1
    alliance/src/x2y/src/Makefile.am
    alliance/src/x2y/src/x2y.c
    alliance/src/xfsm/Makefile.am
    alliance/src/xfsm/configure.in
    alliance/src/xfsm/etc/Makefile.am
    alliance/src/xfsm/etc/xfsm.par
    alliance/src/xfsm/src/LIP6bw.h
    alliance/src/xfsm/src/Makefile.am
    alliance/src/xfsm/src/XFS.h
    alliance/src/xfsm/src/XFS_bdd.c
    alliance/src/xfsm/src/XFS_bdd.h
    alliance/src/xfsm/src/XFS_bound.c
    alliance/src/xfsm/src/XFS_bound.h
    alliance/src/xfsm/src/XFS_error.c
    alliance/src/xfsm/src/XFS_error.h
    alliance/src/xfsm/src/XFS_fsm.c
    alliance/src/xfsm/src/XFS_fsm.h
    alliance/src/xfsm/src/XFS_object.c
    alliance/src/xfsm/src/XFS_object.h
    alliance/src/xfsm/src/XFS_select.c
    alliance/src/xfsm/src/XFS_select.h
    alliance/src/xfsm/src/XME.h
    alliance/src/xfsm/src/XME_dialog.c
    alliance/src/xfsm/src/XME_dialog.h
    alliance/src/xfsm/src/XME_edit.c
    alliance/src/xfsm/src/XME_edit.h
    alliance/src/xfsm/src/XME_menu.c
    alliance/src/xfsm/src/XME_menu.h
    alliance/src/xfsm/src/XME_message.c
    alliance/src/xfsm/src/XME_message.h
    alliance/src/xfsm/src/XME_panel.c
    alliance/src/xfsm/src/XME_panel.h
    alliance/src/xfsm/src/XME_search.c
    alliance/src/xfsm/src/XME_search.h
    alliance/src/xfsm/src/XME_select.c
    alliance/src/xfsm/src/XME_select.h
    alliance/src/xfsm/src/XMF.h
    alliance/src/xfsm/src/XMF_dialog.c
    alliance/src/xfsm/src/XMF_dialog.h
    alliance/src/xfsm/src/XMF_file.c
    alliance/src/xfsm/src/XMF_file.h
    alliance/src/xfsm/src/XMF_menu.c
    alliance/src/xfsm/src/XMF_menu.h
    alliance/src/xfsm/src/XMF_panel.c
    alliance/src/xfsm/src/XMF_panel.h
    alliance/src/xfsm/src/XMH.h
    alliance/src/xfsm/src/XMH_help.c
    alliance/src/xfsm/src/XMH_help.h
    alliance/src/xfsm/src/XMH_menu.c
    alliance/src/xfsm/src/XMH_menu.h
    alliance/src/xfsm/src/XMH_panel.c
    alliance/src/xfsm/src/XMH_panel.h
    alliance/src/xfsm/src/XMS.h
    alliance/src/xfsm/src/XMS_dialog.c
    alliance/src/xfsm/src/XMS_dialog.h
    alliance/src/xfsm/src/XMS_menu.c
    alliance/src/xfsm/src/XMS_menu.h
    alliance/src/xfsm/src/XMS_panel.c
    alliance/src/xfsm/src/XMS_panel.h
    alliance/src/xfsm/src/XMS_setup.c
    alliance/src/xfsm/src/XMS_setup.h
    alliance/src/xfsm/src/XMT.h
    alliance/src/xfsm/src/XMT_dialog.c
    alliance/src/xfsm/src/XMT_dialog.h
    alliance/src/xfsm/src/XMT_menu.c
    alliance/src/xfsm/src/XMT_menu.h
    alliance/src/xfsm/src/XMT_message.c
    alliance/src/xfsm/src/XMT_message.h
    alliance/src/xfsm/src/XMT_panel.c
    alliance/src/xfsm/src/XMT_panel.h
    alliance/src/xfsm/src/XMT_tools.c
    alliance/src/xfsm/src/XMT_tools.h
    alliance/src/xfsm/src/XMV.h
    alliance/src/xfsm/src/XMV_dialog.c
    alliance/src/xfsm/src/XMV_dialog.h
    alliance/src/xfsm/src/XMV_map.c
    alliance/src/xfsm/src/XMV_map.h
    alliance/src/xfsm/src/XMV_menu.c
    alliance/src/xfsm/src/XMV_menu.h
    alliance/src/xfsm/src/XMV_message.c
    alliance/src/xfsm/src/XMV_message.h
    alliance/src/xfsm/src/XMV_panel.c
    alliance/src/xfsm/src/XMV_panel.h
    alliance/src/xfsm/src/XMV_view.c
    alliance/src/xfsm/src/XMV_view.h
    alliance/src/xfsm/src/XMX.h
    alliance/src/xfsm/src/XMX_color.c
    alliance/src/xfsm/src/XMX_color.h
    alliance/src/xfsm/src/XMX_cursor.c
    alliance/src/xfsm/src/XMX_cursor.h
    alliance/src/xfsm/src/XMX_dialog.c
    alliance/src/xfsm/src/XMX_dialog.h
    alliance/src/xfsm/src/XMX_event.c
    alliance/src/xfsm/src/XMX_event.h
    alliance/src/xfsm/src/XMX_graphic.c
    alliance/src/xfsm/src/XMX_graphic.h
    alliance/src/xfsm/src/XMX_grid.c
    alliance/src/xfsm/src/XMX_grid.h
    alliance/src/xfsm/src/XMX_icon.c
    alliance/src/xfsm/src/XMX_icon.h
    alliance/src/xfsm/src/XMX_menu.c
    alliance/src/xfsm/src/XMX_menu.h
    alliance/src/xfsm/src/XMX_message.c
    alliance/src/xfsm/src/XMX_message.h
    alliance/src/xfsm/src/XMX_motif.c
    alliance/src/xfsm/src/XMX_motif.h
    alliance/src/xfsm/src/XMX_panel.c
    alliance/src/xfsm/src/XMX_panel.h
    alliance/src/xfsm/src/XMX_view.c
    alliance/src/xfsm/src/XMX_view.h
    alliance/src/xfsm/src/XSB.h
    alliance/src/xfsm/src/XSB_error.c
    alliance/src/xfsm/src/XSB_error.h
    alliance/src/xfsm/src/XSB_parse.c
    alliance/src/xfsm/src/XSB_parse.h
    alliance/src/xfsm/src/XSB_share.c
    alliance/src/xfsm/src/XSB_share.h
    alliance/src/xfsm/src/XTB.h
    alliance/src/xfsm/src/XTB_cursor.c
    alliance/src/xfsm/src/XTB_cursor.h
    alliance/src/xfsm/src/XTB_dialog.c
    alliance/src/xfsm/src/XTB_dialog.h
    alliance/src/xfsm/src/XTB_icon.c
    alliance/src/xfsm/src/XTB_icon.h
    alliance/src/xfsm/src/XTB_menu.c
    alliance/src/xfsm/src/XTB_menu.h
    alliance/src/xfsm/src/XTB_panel.c
    alliance/src/xfsm/src/XTB_panel.h
    alliance/src/xfsm/src/XTB_pixmap.c
    alliance/src/xfsm/src/XTB_pixmap.h
    alliance/src/xfsm/src/xfsm.c
    alliance/src/xfsm/src/xfsm.h
    alliance/src/xpat/Makefile.am
    alliance/src/xpat/configure.in
    alliance/src/xpat/etc/Makefile.am
    alliance/src/xpat/etc/xpat.par
    alliance/src/xpat/man1/Makefile.am
    alliance/src/xpat/man1/xpat.1
    alliance/src/xpat/src/LIP6bw.h
    alliance/src/xpat/src/Makefile.am
    alliance/src/xpat/src/XME.h
    alliance/src/xpat/src/XME_dialog.c
    alliance/src/xpat/src/XME_dialog.h
    alliance/src/xpat/src/XME_edit.c
    alliance/src/xpat/src/XME_edit.h
    alliance/src/xpat/src/XME_menu.c
    alliance/src/xpat/src/XME_menu.h
    alliance/src/xpat/src/XME_message.c
    alliance/src/xpat/src/XME_message.h
    alliance/src/xpat/src/XME_panel.c
    alliance/src/xpat/src/XME_panel.h
    alliance/src/xpat/src/XME_search.c
    alliance/src/xpat/src/XME_search.h
    alliance/src/xpat/src/XME_select.c
    alliance/src/xpat/src/XME_select.h
    alliance/src/xpat/src/XMF.h
    alliance/src/xpat/src/XMF_dialog.c
    alliance/src/xpat/src/XMF_dialog.h
    alliance/src/xpat/src/XMF_file.c
    alliance/src/xpat/src/XMF_file.h
    alliance/src/xpat/src/XMF_menu.c
    alliance/src/xpat/src/XMF_menu.h
    alliance/src/xpat/src/XMF_panel.c
    alliance/src/xpat/src/XMF_panel.h
    alliance/src/xpat/src/XMH.h
    alliance/src/xpat/src/XMH_help.c
    alliance/src/xpat/src/XMH_help.h
    alliance/src/xpat/src/XMH_menu.c
    alliance/src/xpat/src/XMH_menu.h
    alliance/src/xpat/src/XMH_panel.c
    alliance/src/xpat/src/XMH_panel.h
    alliance/src/xpat/src/XMS.h
    alliance/src/xpat/src/XMS_dialog.c
    alliance/src/xpat/src/XMS_dialog.h
    alliance/src/xpat/src/XMS_menu.c
    alliance/src/xpat/src/XMS_menu.h
    alliance/src/xpat/src/XMS_panel.c
    alliance/src/xpat/src/XMS_panel.h
    alliance/src/xpat/src/XMS_setup.c
    alliance/src/xpat/src/XMS_setup.h
    alliance/src/xpat/src/XMT.h
    alliance/src/xpat/src/XMT_dialog.c
    alliance/src/xpat/src/XMT_dialog.h
    alliance/src/xpat/src/XMT_menu.c
    alliance/src/xpat/src/XMT_menu.h
    alliance/src/xpat/src/XMT_message.c
    alliance/src/xpat/src/XMT_message.h
    alliance/src/xpat/src/XMT_panel.c
    alliance/src/xpat/src/XMT_panel.h
    alliance/src/xpat/src/XMT_tools.c
    alliance/src/xpat/src/XMT_tools.h
    alliance/src/xpat/src/XMV.h
    alliance/src/xpat/src/XMV_dialog.c
    alliance/src/xpat/src/XMV_dialog.h
    alliance/src/xpat/src/XMV_map.c
    alliance/src/xpat/src/XMV_map.h
    alliance/src/xpat/src/XMV_menu.c
    alliance/src/xpat/src/XMV_menu.h
    alliance/src/xpat/src/XMV_message.c
    alliance/src/xpat/src/XMV_message.h
    alliance/src/xpat/src/XMV_panel.c
    alliance/src/xpat/src/XMV_panel.h
    alliance/src/xpat/src/XMV_view.c
    alliance/src/xpat/src/XMV_view.h
    alliance/src/xpat/src/XMX.h
    alliance/src/xpat/src/XMX_color.c
    alliance/src/xpat/src/XMX_color.h
    alliance/src/xpat/src/XMX_cursor.c
    alliance/src/xpat/src/XMX_cursor.h
    alliance/src/xpat/src/XMX_dialog.c
    alliance/src/xpat/src/XMX_dialog.h
    alliance/src/xpat/src/XMX_event.c
    alliance/src/xpat/src/XMX_event.h
    alliance/src/xpat/src/XMX_graphic.c
    alliance/src/xpat/src/XMX_graphic.h
    alliance/src/xpat/src/XMX_grid.c
    alliance/src/xpat/src/XMX_grid.h
    alliance/src/xpat/src/XMX_icon.c
    alliance/src/xpat/src/XMX_icon.h
    alliance/src/xpat/src/XMX_menu.c
    alliance/src/xpat/src/XMX_menu.h
    alliance/src/xpat/src/XMX_message.c
    alliance/src/xpat/src/XMX_message.h
    alliance/src/xpat/src/XMX_motif.c
    alliance/src/xpat/src/XMX_motif.h
    alliance/src/xpat/src/XMX_panel.c
    alliance/src/xpat/src/XMX_panel.h
    alliance/src/xpat/src/XMX_view.c
    alliance/src/xpat/src/XMX_view.h
    alliance/src/xpat/src/XPT.h
    alliance/src/xpat/src/XPT_bound.c
    alliance/src/xpat/src/XPT_bound.h
    alliance/src/xpat/src/XPT_error.c
    alliance/src/xpat/src/XPT_error.h
    alliance/src/xpat/src/XPT_object.c
    alliance/src/xpat/src/XPT_object.h
    alliance/src/xpat/src/XPT_pat.c
    alliance/src/xpat/src/XPT_pat.h
    alliance/src/xpat/src/XPT_place.c
    alliance/src/xpat/src/XPT_place.h
    alliance/src/xpat/src/XPT_select.c
    alliance/src/xpat/src/XPT_select.h
    alliance/src/xpat/src/XSB.h
    alliance/src/xpat/src/XSB_error.c
    alliance/src/xpat/src/XSB_error.h
    alliance/src/xpat/src/XSB_parse.c
    alliance/src/xpat/src/XSB_parse.h
    alliance/src/xpat/src/XSB_share.c
    alliance/src/xpat/src/XSB_share.h
    alliance/src/xpat/src/XTB.h
    alliance/src/xpat/src/XTB_cursor.c
    alliance/src/xpat/src/XTB_cursor.h
    alliance/src/xpat/src/XTB_dialog.c
    alliance/src/xpat/src/XTB_dialog.h
    alliance/src/xpat/src/XTB_icon.c
    alliance/src/xpat/src/XTB_icon.h
    alliance/src/xpat/src/XTB_menu.c
    alliance/src/xpat/src/XTB_menu.h
    alliance/src/xpat/src/XTB_panel.c
    alliance/src/xpat/src/XTB_panel.h
    alliance/src/xpat/src/XTB_pixmap.c
    alliance/src/xpat/src/XTB_pixmap.h
    alliance/src/xpat/src/xpat.c
    alliance/src/xpat/src/xpat.h
    alliance/src/xpm.m4
    alliance/src/xsch/Makefile.am
    alliance/src/xsch/configure.in
    alliance/src/xsch/etc/Makefile.am
    alliance/src/xsch/etc/xsch.par
    alliance/src/xsch/man1/Makefile.am
    alliance/src/xsch/man1/xsch.1
    alliance/src/xsch/src/LIP6bw.h
    alliance/src/xsch/src/Makefile.am
    alliance/src/xsch/src/XME.h
    alliance/src/xsch/src/XME_dialog.c
    alliance/src/xsch/src/XME_dialog.h
    alliance/src/xsch/src/XME_edit.c
    alliance/src/xsch/src/XME_edit.h
    alliance/src/xsch/src/XME_menu.c
    alliance/src/xsch/src/XME_menu.h
    alliance/src/xsch/src/XME_message.c
    alliance/src/xsch/src/XME_message.h
    alliance/src/xsch/src/XME_panel.c
    alliance/src/xsch/src/XME_panel.h
    alliance/src/xsch/src/XME_search.c
    alliance/src/xsch/src/XME_search.h
    alliance/src/xsch/src/XME_select.c
    alliance/src/xsch/src/XME_select.h
    alliance/src/xsch/src/XMF.h
    alliance/src/xsch/src/XMF_dialog.c
    alliance/src/xsch/src/XMF_dialog.h
    alliance/src/xsch/src/XMF_file.c
    alliance/src/xsch/src/XMF_file.h
    alliance/src/xsch/src/XMF_menu.c
    alliance/src/xsch/src/XMF_menu.h
    alliance/src/xsch/src/XMF_panel.c
    alliance/src/xsch/src/XMF_panel.h
    alliance/src/xsch/src/XMH.h
    alliance/src/xsch/src/XMH_help.c
    alliance/src/xsch/src/XMH_help.h
    alliance/src/xsch/src/XMH_menu.c
    alliance/src/xsch/src/XMH_menu.h
    alliance/src/xsch/src/XMH_panel.c
    alliance/src/xsch/src/XMH_panel.h
    alliance/src/xsch/src/XMS.h
    alliance/src/xsch/src/XMS_dialog.c
    alliance/src/xsch/src/XMS_dialog.h
    alliance/src/xsch/src/XMS_menu.c
    alliance/src/xsch/src/XMS_menu.h
    alliance/src/xsch/src/XMS_panel.c
    alliance/src/xsch/src/XMS_panel.h
    alliance/src/xsch/src/XMS_setup.c
    alliance/src/xsch/src/XMS_setup.h
    alliance/src/xsch/src/XMT.h
    alliance/src/xsch/src/XMT_dialog.c
    alliance/src/xsch/src/XMT_dialog.h
    alliance/src/xsch/src/XMT_menu.c
    alliance/src/xsch/src/XMT_menu.h
    alliance/src/xsch/src/XMT_message.c
    alliance/src/xsch/src/XMT_message.h
    alliance/src/xsch/src/XMT_panel.c
    alliance/src/xsch/src/XMT_panel.h
    alliance/src/xsch/src/XMT_tools.c
    alliance/src/xsch/src/XMT_tools.h
    alliance/src/xsch/src/XMV.h
    alliance/src/xsch/src/XMV_dialog.c
    alliance/src/xsch/src/XMV_dialog.h
    alliance/src/xsch/src/XMV_map.c
    alliance/src/xsch/src/XMV_map.h
    alliance/src/xsch/src/XMV_menu.c
    alliance/src/xsch/src/XMV_menu.h
    alliance/src/xsch/src/XMV_message.c
    alliance/src/xsch/src/XMV_message.h
    alliance/src/xsch/src/XMV_panel.c
    alliance/src/xsch/src/XMV_panel.h
    alliance/src/xsch/src/XMV_view.c
    alliance/src/xsch/src/XMV_view.h
    alliance/src/xsch/src/XMX.h
    alliance/src/xsch/src/XMX_color.c
    alliance/src/xsch/src/XMX_color.h
    alliance/src/xsch/src/XMX_cursor.c
    alliance/src/xsch/src/XMX_cursor.h
    alliance/src/xsch/src/XMX_dialog.c
    alliance/src/xsch/src/XMX_dialog.h
    alliance/src/xsch/src/XMX_event.c
    alliance/src/xsch/src/XMX_event.h
    alliance/src/xsch/src/XMX_graphic.c
    alliance/src/xsch/src/XMX_graphic.h
    alliance/src/xsch/src/XMX_grid.c
    alliance/src/xsch/src/XMX_grid.h
    alliance/src/xsch/src/XMX_icon.c
    alliance/src/xsch/src/XMX_icon.h
    alliance/src/xsch/src/XMX_menu.c
    alliance/src/xsch/src/XMX_menu.h
    alliance/src/xsch/src/XMX_message.c
    alliance/src/xsch/src/XMX_message.h
    alliance/src/xsch/src/XMX_motif.c
    alliance/src/xsch/src/XMX_motif.h
    alliance/src/xsch/src/XMX_panel.c
    alliance/src/xsch/src/XMX_panel.h
    alliance/src/xsch/src/XMX_view.c
    alliance/src/xsch/src/XMX_view.h
    alliance/src/xsch/src/XSB.h
    alliance/src/xsch/src/XSB_error.c
    alliance/src/xsch/src/XSB_error.h
    alliance/src/xsch/src/XSB_parse.c
    alliance/src/xsch/src/XSB_parse.h
    alliance/src/xsch/src/XSB_share.c
    alliance/src/xsch/src/XSB_share.h
    alliance/src/xsch/src/XSC.h
    alliance/src/xsch/src/XSC_bound.c
    alliance/src/xsch/src/XSC_bound.h
    alliance/src/xsch/src/XSC_error.c
    alliance/src/xsch/src/XSC_error.h
    alliance/src/xsch/src/XSC_object.c
    alliance/src/xsch/src/XSC_object.h
    alliance/src/xsch/src/XSC_place.c
    alliance/src/xsch/src/XSC_place.h
    alliance/src/xsch/src/XSC_schem.c
    alliance/src/xsch/src/XSC_schem.h
    alliance/src/xsch/src/XSC_select.c
    alliance/src/xsch/src/XSC_select.h
    alliance/src/xsch/src/XTB.h
    alliance/src/xsch/src/XTB_cursor.c
    alliance/src/xsch/src/XTB_cursor.h
    alliance/src/xsch/src/XTB_dialog.c
    alliance/src/xsch/src/XTB_dialog.h
    alliance/src/xsch/src/XTB_icon.c
    alliance/src/xsch/src/XTB_icon.h
    alliance/src/xsch/src/XTB_menu.c
    alliance/src/xsch/src/XTB_menu.h
    alliance/src/xsch/src/XTB_panel.c
    alliance/src/xsch/src/XTB_panel.h
    alliance/src/xsch/src/XTB_pixmap.c
    alliance/src/xsch/src/XTB_pixmap.h
    alliance/src/xsch/src/bitmap.c
    alliance/src/xsch/src/icone.c
    alliance/src/xsch/src/xsch.c
    alliance/src/xsch/src/xsch.h
    alliance/src/xvpn/Makefile.am
    alliance/src/xvpn/configure.in
    alliance/src/xvpn/etc/Makefile.am
    alliance/src/xvpn/etc/xvpn.par
    alliance/src/xvpn/src/LIP6bw.h
    alliance/src/xvpn/src/Makefile.am
    alliance/src/xvpn/src/XME.h
    alliance/src/xvpn/src/XME_dialog.c
    alliance/src/xvpn/src/XME_dialog.h
    alliance/src/xvpn/src/XME_edit.c
    alliance/src/xvpn/src/XME_edit.h
    alliance/src/xvpn/src/XME_menu.c
    alliance/src/xvpn/src/XME_menu.h
    alliance/src/xvpn/src/XME_message.c
    alliance/src/xvpn/src/XME_message.h
    alliance/src/xvpn/src/XME_panel.c
    alliance/src/xvpn/src/XME_panel.h
    alliance/src/xvpn/src/XME_search.c
    alliance/src/xvpn/src/XME_search.h
    alliance/src/xvpn/src/XME_select.c
    alliance/src/xvpn/src/XME_select.h
    alliance/src/xvpn/src/XMF.h
    alliance/src/xvpn/src/XMF_dialog.c
    alliance/src/xvpn/src/XMF_dialog.h
    alliance/src/xvpn/src/XMF_file.c
    alliance/src/xvpn/src/XMF_file.h
    alliance/src/xvpn/src/XMF_menu.c
    alliance/src/xvpn/src/XMF_menu.h
    alliance/src/xvpn/src/XMF_panel.c
    alliance/src/xvpn/src/XMF_panel.h
    alliance/src/xvpn/src/XMH.h
    alliance/src/xvpn/src/XMH_help.c
    alliance/src/xvpn/src/XMH_help.h
    alliance/src/xvpn/src/XMH_menu.c
    alliance/src/xvpn/src/XMH_menu.h
    alliance/src/xvpn/src/XMH_panel.c
    alliance/src/xvpn/src/XMH_panel.h
    alliance/src/xvpn/src/XMS.h
    alliance/src/xvpn/src/XMS_dialog.c
    alliance/src/xvpn/src/XMS_dialog.h
    alliance/src/xvpn/src/XMS_menu.c
    alliance/src/xvpn/src/XMS_menu.h
    alliance/src/xvpn/src/XMS_panel.c
    alliance/src/xvpn/src/XMS_panel.h
    alliance/src/xvpn/src/XMS_setup.c
    alliance/src/xvpn/src/XMS_setup.h
    alliance/src/xvpn/src/XMT.h
    alliance/src/xvpn/src/XMT_dialog.c
    alliance/src/xvpn/src/XMT_dialog.h
    alliance/src/xvpn/src/XMT_menu.c
    alliance/src/xvpn/src/XMT_menu.h
    alliance/src/xvpn/src/XMT_message.c
    alliance/src/xvpn/src/XMT_message.h
    alliance/src/xvpn/src/XMT_panel.c
    alliance/src/xvpn/src/XMT_panel.h
    alliance/src/xvpn/src/XMT_tools.c
    alliance/src/xvpn/src/XMT_tools.h
    alliance/src/xvpn/src/XMV.h
    alliance/src/xvpn/src/XMV_dialog.c
    alliance/src/xvpn/src/XMV_dialog.h
    alliance/src/xvpn/src/XMV_map.c
    alliance/src/xvpn/src/XMV_map.h
    alliance/src/xvpn/src/XMV_menu.c
    alliance/src/xvpn/src/XMV_menu.h
    alliance/src/xvpn/src/XMV_message.c
    alliance/src/xvpn/src/XMV_message.h
    alliance/src/xvpn/src/XMV_panel.c
    alliance/src/xvpn/src/XMV_panel.h
    alliance/src/xvpn/src/XMV_view.c
    alliance/src/xvpn/src/XMV_view.h
    alliance/src/xvpn/src/XMX.h
    alliance/src/xvpn/src/XMX_color.c
    alliance/src/xvpn/src/XMX_color.h
    alliance/src/xvpn/src/XMX_cursor.c
    alliance/src/xvpn/src/XMX_cursor.h
    alliance/src/xvpn/src/XMX_dialog.c
    alliance/src/xvpn/src/XMX_dialog.h
    alliance/src/xvpn/src/XMX_event.c
    alliance/src/xvpn/src/XMX_event.h
    alliance/src/xvpn/src/XMX_graphic.c
    alliance/src/xvpn/src/XMX_graphic.h
    alliance/src/xvpn/src/XMX_grid.c
    alliance/src/xvpn/src/XMX_grid.h
    alliance/src/xvpn/src/XMX_icon.c
    alliance/src/xvpn/src/XMX_icon.h
    alliance/src/xvpn/src/XMX_menu.c
    alliance/src/xvpn/src/XMX_menu.h
    alliance/src/xvpn/src/XMX_message.c
    alliance/src/xvpn/src/XMX_message.h
    alliance/src/xvpn/src/XMX_motif.c
    alliance/src/xvpn/src/XMX_motif.h
    alliance/src/xvpn/src/XMX_panel.c
    alliance/src/xvpn/src/XMX_panel.h
    alliance/src/xvpn/src/XMX_view.c
    alliance/src/xvpn/src/XMX_view.h
    alliance/src/xvpn/src/XSB.h
    alliance/src/xvpn/src/XSB_error.c
    alliance/src/xvpn/src/XSB_error.h
    alliance/src/xvpn/src/XSB_parse.c
    alliance/src/xvpn/src/XSB_parse.h
    alliance/src/xvpn/src/XSB_share.c
    alliance/src/xvpn/src/XSB_share.h
    alliance/src/xvpn/src/XTB.h
    alliance/src/xvpn/src/XTB_cursor.c
    alliance/src/xvpn/src/XTB_cursor.h
    alliance/src/xvpn/src/XTB_dialog.c
    alliance/src/xvpn/src/XTB_dialog.h
    alliance/src/xvpn/src/XTB_icon.c
    alliance/src/xvpn/src/XTB_icon.h
    alliance/src/xvpn/src/XTB_menu.c
    alliance/src/xvpn/src/XTB_menu.h
    alliance/src/xvpn/src/XTB_panel.c
    alliance/src/xvpn/src/XTB_panel.h
    alliance/src/xvpn/src/XTB_pixmap.c
    alliance/src/xvpn/src/XTB_pixmap.h
    alliance/src/xvpn/src/XVP.h
    alliance/src/xvpn/src/XVP_bound.c
    alliance/src/xvpn/src/XVP_bound.h
    alliance/src/xvpn/src/XVP_error.c
    alliance/src/xvpn/src/XVP_error.h
    alliance/src/xvpn/src/XVP_object.c
    alliance/src/xvpn/src/XVP_object.h
    alliance/src/xvpn/src/XVP_select.c
    alliance/src/xvpn/src/XVP_select.h
    alliance/src/xvpn/src/xvpn.c
    alliance/src/xvpn/src/xvpn.h
    alliance/src/ylwrap
    dev/cvslargo/listes-rules/alliance/archive.txt
    dev/cvslargo/listes-rules/alliance/help.txt
    dev/cvslargo/listes-rules/alliance/rc.custom
    dev/cvslargo/listes-rules/alliance/rc.init
    dev/cvslargo/listes-rules/alliance/rc.request
    dev/cvslargo/listes-rules/alliance/rc.submit
    dev/cvslargo/listes-rules/alliance/subscribe.txt
    dev/cvslargo/listes-rules/alliance/unsubscribe.txt
    dev/cvslargo/listes-rules/archi/rc.custom
    dev/cvslargo/listes-rules/defaults/.procmailrc
    dev/cvslargo/listes-rules/defaults/rc.archive
    dev/cvslargo/listes-rules/defaults/rc.custom
    dev/cvslargo/listes-rules/defaults/rc.init
    dev/cvslargo/listes-rules/defaults/rc.main
    dev/cvslargo/listes-rules/defaults/rc.post
    dev/cvslargo/listes-rules/defaults/rc.request
    dev/cvslargo/listes-rules/defaults/rc.submit
    dev/cvslargo/listes-rules/help/rc.custom
    dev/cvslargo/listes-rules/hyp
    dev/cvslargo/listes-rules/hypermail/.hmrc
    dev/cvslargo/listes-rules/hypermail/hypermail-footer.hyp
    dev/cvslargo/listes-rules/hypermail/hypermail-index.hyp
    dev/cvslargo/listes-rules/hypermail/hypermail-msg.hyp
    dev/cvslargo/listes-rules/hypreset
    dev/cvslargo/listes-rules/splitmailbyyear
    dev/cvslargo/www/cgi-bin/czo/.swisherc.alliance
    dev/cvslargo/www/cgi-bin/czo/.swisherc.allsite
    dev/cvslargo/www/cgi-bin/czo/.swisherc.alml
    dev/cvslargo/www/cgi-bin/czo/.swisherc.education
    dev/cvslargo/www/cgi-bin/czo/.swisherc.intranet
    dev/cvslargo/www/cgi-bin/czo/.swisherc.mpc
    dev/cvslargo/www/cgi-bin/czo/.swisherc.multimedia
    dev/cvslargo/www/cgi-bin/czo/.swisherc.publications
    dev/cvslargo/www/cgi-bin/czo/.swisherc.users
    dev/cvslargo/www/cgi-bin/czo/alliance.dat
    dev/cvslargo/www/cgi-bin/czo/allsite.dat
    dev/cvslargo/www/cgi-bin/czo/alml.dat
    dev/cvslargo/www/cgi-bin/czo/counter.cgi
    dev/cvslargo/www/cgi-bin/czo/education.dat
    dev/cvslargo/www/cgi-bin/czo/execasimut.cgi
    dev/cvslargo/www/cgi-bin/czo/flag.cgi
    dev/cvslargo/www/cgi-bin/czo/hit/doit
    dev/cvslargo/www/cgi-bin/czo/hit/hit.cfg
    dev/cvslargo/www/cgi-bin/czo/hit/hit.cnt
    dev/cvslargo/www/cgi-bin/czo/hit/hit.flk
    dev/cvslargo/www/cgi-bin/czo/hit/hit.xbm
    dev/cvslargo/www/cgi-bin/czo/hit/hit1.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit1.log
    dev/cvslargo/www/cgi-bin/czo/hit/hit10.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit11.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit12.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit2.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit2.log
    dev/cvslargo/www/cgi-bin/czo/hit/hit3.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit4.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit5.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit6.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit7.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit8.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hit9.dat
    dev/cvslargo/www/cgi-bin/czo/hit/hitcfg.pl
    dev/cvslargo/www/cgi-bin/czo/hit/hitman.pl
    dev/cvslargo/www/cgi-bin/czo/hit/hitmat.cgi
    dev/cvslargo/www/cgi-bin/czo/hit/hitmat.pwd
    dev/cvslargo/www/cgi-bin/czo/hit/hitxbm.pl
    dev/cvslargo/www/cgi-bin/czo/hit/how2hit.txt
    dev/cvslargo/www/cgi-bin/czo/hit/since.xbm
    dev/cvslargo/www/cgi-bin/czo/index.html
    dev/cvslargo/www/cgi-bin/czo/intranet.dat
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/-.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/0.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/1.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/2.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/3.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/4.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/5.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/6.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/7.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/8.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/9.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/a.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/a_dolink.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/a_errlog.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/cntcnfg.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/gmtset.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/hitbadlog.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/hitcount.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/hitlnk.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/hitlog.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/look.pwd
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/lookcnfg.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/p.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/armandino/trans.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/-.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/0.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/1.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/2.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/3.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/4.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/5.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/6.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/7.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/8.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/9.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/a.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/a_dolink.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/a_errlog.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/cntcnfg.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/gmtset.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/hitbadlog.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/hitcount.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/hitlnk.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/hitlog.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/look.pwd
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/lookcnfg.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/p.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/asim/trans.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/-.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/0.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/1.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/2.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/3.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/4.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/5.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/6.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/7.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/8.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/9.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/a.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/a_dolink.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/a_errlog.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/cntcnfg.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/gmtset.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/hitbadlog.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/hitcount.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/hitlnk.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/hitlog.t
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/look.pwd
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/lookcnfg.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/p.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/edite/trans.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/counters/new.tgz
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/logcnt.cgi
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/loglook.cgi
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/linkcount.cgi
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/linkname.cgi
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/makedir.cgi
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/-.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/0.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/1.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/2.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/3.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/4.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/5.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/6.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/7.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/8.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/9.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/a.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics1/p.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/-.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/0.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/1.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/2.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/3.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/4.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/5.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/6.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/7.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/8.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/9.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/a.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/pics2/p.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/sets/cntcnfg.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/sets/gmtset.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/sets/lookcnfg.pl
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/-.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/0.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/1.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/2.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/3.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/4.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/5.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/6.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/7.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/8.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/9.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/a.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/grf0.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/grf1.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/p.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/ssi_img/trans.gif
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/testbin.cgi
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/utility.txt
    dev/cvslargo/www/cgi-bin/czo/lc/cgi-bin/private/webmster.shtml
    dev/cvslargo/www/cgi-bin/czo/lc/readme.htm
    dev/cvslargo/www/cgi-bin/czo/lc/webmster.html
    dev/cvslargo/www/cgi-bin/czo/linux.gif.cgi
    dev/cvslargo/www/cgi-bin/czo/lock.cgi
    dev/cvslargo/www/cgi-bin/czo/maintenedby.cgi
    dev/cvslargo/www/cgi-bin/czo/mpc.dat
    dev/cvslargo/www/cgi-bin/czo/multimedia.dat
    dev/cvslargo/www/cgi-bin/czo/my.cgi
    dev/cvslargo/www/cgi-bin/czo/printenv.cgi
    dev/cvslargo/www/cgi-bin/czo/private/.htaccess
    dev/cvslargo/www/cgi-bin/czo/private/search-intranet.cgi
    dev/cvslargo/www/cgi-bin/czo/private/search.log
    dev/cvslargo/www/cgi-bin/czo/publications.dat
    dev/cvslargo/www/cgi-bin/czo/search.cgi
    dev/cvslargo/www/cgi-bin/czo/searchres.cgi
    dev/cvslargo/www/cgi-bin/czo/searchwais.cgi
    dev/cvslargo/www/cgi-bin/czo/startform.cgi
    dev/cvslargo/www/cgi-bin/czo/test.cgi
    dev/cvslargo/www/cgi-bin/czo/testtime.cgi
    dev/cvslargo/www/cgi-bin/czo/users.dat
    dev/cvslargo/www/cgi-bin/czo/wwwlog.cgi
    dev/scripts/.header.gpl.c
    dev/scripts/.header.gpl.mk
    dev/scripts/.header.lgpl.c
    dev/scripts/.header.lgpl.mk
    dev/scripts/alc_update_bin
    dev/scripts/install/rpm/alliance.spec
    dev/scripts/install/windows/alliance-readme-after.txt
    dev/scripts/install/windows/alliance-readme-before.txt
    dev/scripts/install/windows/alliance.iss
    dev/scripts/marker
    dev/scripts/misc/PRINT_CELLS_DOC
    dev/scripts/misc/PRINT_TOOLS_DOC
    dev/scripts/misc/Responsables.byname
    dev/scripts/misc/alc_bug_rprt.1
    dev/scripts/misc/alc_create_bande_32a
    dev/scripts/misc/alc_create_rep
    dev/scripts/misc/alc_env.csh
    dev/scripts/misc/alc_env.sh
    dev/scripts/misc/alc_flock
    dev/scripts/misc/alc_install_account
    dev/scripts/misc/alc_link_labo_sce
    dev/scripts/misc/alc_man_test
    dev/scripts/misc/alc_man_up
    dev/scripts/misc/alc_news
    dev/scripts/misc/alc_origin.1
    dev/scripts/misc/alc_update_binaries
    dev/scripts/misc/alc_update_libraries.mk
    dev/scripts/misc/alc_update_spool
    dev/scripts/misc/alcteam
    dev/scripts/misc/alcteam.txt
    dev/scripts/misc/alliance.README
    dev/scripts/misc/alliance.lsm
    dev/scripts/misc/ccvinst
    dev/scripts/misc/changes
    dev/scripts/misc/copytool
    dev/scripts/misc/copytoolok
    dev/scripts/misc/critique.c
    dev/scripts/misc/distrib3.2
    dev/scripts/misc/dri
    dev/scripts/misc/gendeclib
    dev/scripts/misc/generic
    dev/scripts/misc/genlnxlib
    dev/scripts/misc/genspabin
    dev/scripts/misc/genspaetc
    dev/scripts/misc/genspalib
    dev/scripts/misc/inslib.c
    dev/scripts/misc/mail
    dev/scripts/misc/mail_bug_rprt.tmpl
    dev/scripts/misc/mailrhost
    dev/scripts/misc/motd
    dev/scripts/misc/mydiff
    dev/scripts/misc/responsable.c
    dev/scripts/misc/sedgpl
    dev/scripts/misc/shlock.1
    dev/scripts/misc/shlock.c
    dev/scripts/misc/wrhost
    dev/scripts/mkdistrib
This commit is contained in:
cvs2svn 2002-09-18 18:57:46 +00:00
commit 08080f650b
351 changed files with 277 additions and 72737 deletions

277
alliance/README.IRIX Normal file
View File

@ -0,0 +1,277 @@
# Alliance VLSI CAD System #
# Copyright (C) 1990, 2002 ASIM/LIP6/UPMC #
# #
# Home page : http://asim.lip6.fr/alliance/ #
# E-mail support : mailto:alliance-users@asim.lip6.fr #
# ftp site : ftp://asim.lip6.fr/pub/alliance/ #
# #
# $Id: README.IRIX,v 1.1 2002/09/18 18:57:43 pnt Exp $ #
This file discuss about installation of Alliance on IRIX machines.
===================================================================
Alliance VLSI CAD System
Copyright (C) Laboratoire LIP6 - Département ASIM
Universite Pierre et Marie Curie
4, place Jussieu
75252 Paris Cedex 05
France
"Alliance VLSI CAD System" is free Software.
Alliance is available under the terms of the GNU General Public License
GPL (http://www.gnu.org/copyleft/gpl.html).
You are welcome to use the software package even for commercial designs
without any fee. You are just required to mention :
"Designed with Alliance CAD system, Copyright (C) 1991, 2002 Université
Pierre et Marie Curie"
IRIX notes
==========
I Generalities
==============
Alliance is available for both 32-bit and 64-bit platforms:
Alliance-X.Y-IRIX-6.5-N32.tardist is a N32 ABI precompiled package
Alliance-X.Y-IRIX-6.5-N64.tardist is a N64 ABI precompiled package
where X.Y is the version number.
You can install the 64-bit version only on 64-bit machines, 32-bit
version is suitable to all machines (For more informations on the
Application Binary Interface, please see the techpubs page
at SGI: http://techpubs.sgi.com).
Sources are included but not installed by default. If you want the sources
to be installed, select the custom installation in the Software Manager
and check the box related to the sources.
II Downloading binary distribution
=================================
You can get Alliance via anonymous FTP from ftp.lip6.fr
ftp://ftp-asim.lip6.fr/pub/alliance/contrib/ (IRIX)
ftp://ftp-asim.lip6.fr/pub/alliance/ (Linux,Solaris)
If you are using a web browser, just click on the appropriate tardist file; the
Software Manager should be automatically launched.
Otherwise, download the file, untar it in a directory and run the Software Manager.
III Installation
===============
Depending on the package,
- The alliance software will be located in /usr/local/alliance/archi/IRIX with
the N32 interface
- The alliance software will be located in /usr/local/alliance/archi/IRIX64 with
the N64 interface
Note: you need to be root to run the Software Manager.
If you want the sources, then select the Customize option from the Software Manager
and check the box related to the sources.
The sources will be installed in /usr/local/alliance/archi/src.
IV Usage
========
Each user has to source alc_env.[c]sh to set Alliance environment
variables to be able to run the Alliance tools.
in sh > . /usr/local/alliance/share/etc/alc_env.sh
in csh > source /usr/local/alliance/share/etc/alc_env.csh
This sets various default environment variables which could be changed by user
later (Like MBK_OUT_LO to set the netlist output file format).
If you are a SysAdmin, you should consider linking these scripts in
the system's profile (e.g.: /etc/profile.d/ on Linux) so that configuration
would be done at user login.
If you encounter problems, check the value of these variables in alc_env.[c]sh
$ALLIANCE_OS : actually IRIX
or IRIX64
$ALLIANCE_TOP : actually /usr/local/alliance/archi/IRIX
or /usr/local/alliance/archi/IRIX64
V Optional: compilation
=======================
Get the Alliance software package and install it with the sources (see the options
in the Software Manager).
We assume that the sources are located in /usr/local/alliance/src.
We also assume that you have a working C and a working C++ compiler.
V.a Choose the ABI
------------------
On IRIX systems you can choose to use the O32, N32 or N64 part of the Application
Binary Interface, depending on your computer (for more informations on the ABI please
see the techpubs page at SGI: http://techpubs.sgi.com):
* Type "uname -s" in the shell command. If you get back "IRIX", then use the N32 libraries.
If you get "IRIX64", then use the N64 libraries.
* Or on a 64-bit system you can force a specific compilation, N32 or N64.
For a N32 compilation, set up the following compilation environment:
| setenv CC /usr/freeware/bin/gcc (optional)
| setenv CXX /usr/freeware/bin/g++ (optional)
| setenv CFLAGS "-mabi=n32 -mips3 -gdwarf-2"
| setenv OFLAGS "-mabi=n32 -mips3"
| setenv CXXFLAGS "-mabi=n32 -mips3"
| setenv SGI_ABI n32
| setenv LDFLAGS "-L/usr/freeware/lib32 -L/usr/freeware/lib32/X11" (optional)
We assume that the library path is set thru the LD_LIBRAYN32_PATH variable, for
example:
| if ! $?LD_LIBRARYN32_PATH then
| setenv LD_LIBRARYN32_PATH /usr/lib32
| else
| setenv LD_LIBRARYN32_PATH "$LD_LIBRARYN32_PATH":/usr/lib32
| endif
|
| setenv LD_LIBRARYN32_PATH "$LD_LIBRARYN32_PATH":/lib32
| setenv LD_LIBRARYN32_PATH "$LD_LIBRARYN32_PATH":/usr/lib32/X11
| setenv LD_LIBRARYN32_PATH "$LD_LIBRARYN32_PATH":/usr/Motif-2.1/lib32
| setenv LD_LIBRARYN32_PATH "$LD_LIBRARYN32_PATH":/usr/freeware/lib32
| setenv LD_LIBRARYN32_PATH "$LD_LIBRARYN32_PATH":/usr/freeware/lib32/X11
For a N64 compilation, set up the following compilation environment:
| setenv CC /usr/freeware/bin/gcc (optional)
| setenv CXX /usr/freeware/bin/g++ (optional)
| setenv CFLAGS "-mabi=64 -mips4 -gdwarf-2"
| setenv OFLAGS "-mabi=64 -mips4"
| setenv CXXFLAGS "-mabi=64 -mips4"
| setenv SGI_ABI 64
| setenv LDFLAGS "-L/usr/freeware/lib64 -L/usr/freeware/lib64/X11" (optional)
We assume that the library path is set thru the LD_LIBRAY64_PATH variable, for
example:
| if ! $?LD_LIBRARY64_PATH then
| setenv LD_LIBRARY64_PATH /usr/lib64
| else
| setenv LD_LIBRARY64_PATH "$LD_LIBRARY64_PATH":/usr/lib64
| endif
|
| setenv LD_LIBRARY64_PATH "$LD_LIBRARY64_PATH":/lib64
| setenv LD_LIBRARY64_PATH "$LD_LIBRARY64_PATH":/usr/lib64/X11
| setenv LD_LIBRARY64_PATH "$LD_LIBRARY64_PATH":/usr/Motif-2.1/lib64
| setenv LD_LIBRARY64_PATH "$LD_LIBRARY64_PATH":/usr/freeware/lib64
| setenv LD_LIBRARY64_PATH "$LD_LIBRARY64_PATH":/usr/freeware/lib64/X11
V.b Autoconf, automake
----------------------
Our advice is to create a separate directory for the compilation. For
example create a build directory in /usr/local/alliance:
| cd /usr/local/alliance/
then:
| mkdir build
| mkdir build/IRIX for a N32 compilation
or:
| mkdir build
| mkdir build/IRIX64 for a N64 compilation
Then go to /usr/local/alliance/src and run the autostuff script. It will run automatically
aclocal, autoconf and automake:
| cd /usr/local/alliance/
| ./autostuff
V.c Compilation
---------------
Go to the /usr/local/alliance/build/IRIX or /usr/local/alliance/build/IRIX64 directory and
run the configure script.
For the N32 interface:
| cd /usr/local/alliance/build/IRIX
| ../../src/configure --prefix=/usr/local/alliance/archi/IRIX --with-stabs
For the N64 interface:
| cd /usr/local/alliance/build/IRIX64
| ../../src/configure --prefix=/usr/local/alliance/archi/IRIX64 --with-stabs --enable-system64
Notes : the --prefix option allows you to choose the installation directory.
: the --with-stabs allows you to debug in dwarf format and g++ (default on SGI)
: the --enable-system64 allows you to compile on a 64-bit architecture
Then run gmake :
| gmake install
Note: run "gmake install" instead of "gmake ; gmake install", or the libraries won't be found.
Note: if make fails, try gmake as I did...
V.d Enjoy !
-----------
VI Other informations
=====================
Alliance 5.0 for IRIX was compiled on the following system:
Octane
MIPS R10000 Processor 250 MHZ IP30
IRIX 6.5.15f
autoconf
automake
aclocal
configure options: --prefix, --with-stabs, --enable-system64 on a 64-bit architecture
gnu gcc and gnu c++ compiler
gcc option: -gdwarf-2
freeware installed
gmake
Note: gdb does not support debugging 64-bit executables or programs using pthreads on IRIX. Use dbx instead.

View File

@ -1 +0,0 @@
SUBDIRS = src

View File

@ -1,45 +0,0 @@
dnl
/*
dnl This file is part of the Alliance CAD System
dnl Copyright (C) Laboratoire LIP6 - Département ASIM
dnl Universite Pierre et Marie Curie
dnl
dnl Home page : http://www-asim.lip6.fr/alliance/
dnl E-mail support : mailto:alliance-support@asim.lip6.fr
dnl
dnl This library is free software; you can redistribute it and/or modify it
dnl under the terms of the GNU Library General Public License as published
dnl by the Free Software Foundation; either version 2 of the License, or (at
dnl your option) any later version.
dnl
dnl Alliance VLSI CAD System is distributed in the hope that it will be
dnl useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
dnl Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License along
dnl with the GNU C Library; see the file COPYING. If not, write to the Free
dnl Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
dnl
dnl Purpose : Auto stuffing Alliance
dnl Almost ten years since I wrote this stuff, I just can't
dnl believe it
dnl Date : 01/02/2002
dnl Author : Frederic Petrot <Frederic.Petrot@lip6.fr>
dnl $Id: configure.in,v 1.1 2002/03/20 13:18:21 ludo Exp $
dnl
dnl
AC_INIT(src/abe.h)
AM_INIT_AUTOMAKE(abe, 2.1)
AC_PROG_INSTALL
AC_PROG_CC
AC_HEADER_STDC
AC_C_CONST
AC_PROG_RANLIB
AM_ALLIANCE
AC_OUTPUT([
Makefile
src/Makefile
])

View File

@ -1,7 +0,0 @@
CFLAGS = @CFLAGS@ \
-DALLIANCE_TOP=\"${ALLIANCE_TOP}\"
lib_LIBRARIES = libAbe.a
include_HEADERS = abe.h
libAbe_a_SOURCES = \
abe.h beh_del.c beh_error.c beh_getgenva.c beh_rmv.c beh_view.c \
beh_add.c beh_dict.c beh_fre.c beh_message.c beh_toolbug.c

View File

@ -1,321 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : abe201.h */
/* date : Feb 15 1995 */
/* version : v201 */
/* contents : defines and structure definitions used in BEH library */
/* */
/* ###--------------------------------------------------------------### */
#ifndef ABE_BEHDEF
#define ABE_BEHDEF
/* ###------------------------------------------------------### */
/* defines */
/* ###------------------------------------------------------### */
#define BEH_GENERIC 203698 /* generic ptype code */
#define BEH_STABLE 0x01 /* description used STABLE attribute */
/* ###------------------------------------------------------### */
/* structure definitions */
/* ###------------------------------------------------------### */
struct beden /* dictionary entry point */
{
struct beden *NEXT; /* next entry */
struct bedrd *DATA; /* data */
char *KEY; /* key */
};
struct bedrd /* dictionary record */
{
struct bedrd *NEXT; /* next record */
char *KEY; /* context key */
short FD0_VAL; /* data field */
short FD1_VAL; /* data field */
short FD2_VAL; /* data field */
short FD3_VAL; /* data field */
short FD4_VAL; /* data field */
short FD5_VAL; /* data field */
short FD6_VAL; /* data field */
long PNT_VAL; /* data field */
};
typedef struct befig /* behaviour figure */
{
struct befig *NEXT; /* next figure */
char *NAME; /* figure's name */
struct bereg *BEREG; /* list of internal signals (REGISTER) */
struct bemsg *BEMSG; /* list of assert instructions */
struct berin *BERIN; /* list of inputs (registers and ports) */
struct beout *BEOUT; /* list of output ports */
struct bebus *BEBUS; /* list of output ports (BUS) */
struct beaux *BEAUX; /* list of internal signals */
struct beaux *BEDLY; /* internal signals used for 'DELAYED */
struct bebux *BEBUX; /* list of internal signals (BUS) */
struct bepor *BEPOR; /* list of figure's port built in the */
/* reverse order of the port clause */
struct begen *BEGEN; /* list of generic data */
struct bepgm *BEPGM; /* list of pragmas (new field !!) */
struct bddcircuit *CIRCUI; /* Circuit pointer used during ABL to */
/* BDD transformation */
void *USER; /* reserved for user's applications */
long FLAGS;
char ERRFLG; /* error flag */
char TYPE; /* description type (not used) */
}
befig_list;
typedef struct bereg /* register */
{
struct bereg *NEXT; /* next register */
char *NAME; /* register's name */
struct biabl *BIABL; /* list of drivers (ABL) */
struct binode *BINODE; /* list of drivers (BDD) */
void *USER;
long FLAGS;
}
bereg_list;
typedef struct bemsg /* assert instruction */
{
struct bemsg *NEXT; /* next assertion */
char LEVEL; /* severity level of the assertion */
char *LABEL; /* instruction's label */
char *MESSAGE; /* assertion's message */
ablexpr *ABL; /* assertion's condition (ABL) */
struct bddnode *NODE; /* assertion's condition (BDD) */
void *USER;
long FLAGS;
}
bemsg_list;
typedef struct beout /* output port */
{
struct beout *NEXT; /* next output */
char *NAME; /* port's name */
ablexpr *ABL; /* port's equation (ABL) */
struct bddnode *NODE; /* port's equation (BDD) */
void *USER;
long FLAGS;
}
beout_list;
typedef struct bebus /* output port (BUS) */
{
struct bebus *NEXT; /* next bus port */
char *NAME; /* port's name */
struct biabl *BIABL; /* list of drivers (ABL) */
struct binode *BINODE; /* list of drivers (BDD) */
char TYPE; /* port's type : W or M */
void *USER;
long FLAGS;
}
bebus_list;
typedef struct beaux /* auxiliary signal */
{
struct beaux *NEXT; /* next signal */
char *NAME; /* signal's name */
ablexpr *ABL; /* signal's equation (ABL) */
struct bddnode *NODE; /* signal's equation (BDD) */
void *USER;
long FLAGS;
}
beaux_list;
typedef struct bebux /* internal signal (BUS) */
{
struct bebux *NEXT; /* next signal */
char *NAME; /* signal's name */
struct biabl *BIABL; /* list of drivers (ABL) */
struct binode *BINODE; /* list of drivers (BDD) */
char TYPE; /* signal's type : W or M */
void *USER;
long FLAGS;
}
bebux_list;
typedef struct bepor /* port */
{
struct bepor *NEXT; /* next port */
char *NAME; /* port's name */
char DIRECTION; /* port's mode (same as LOCON) */
char TYPE; /* port's type (B, M or W) */
void *USER;
long FLAGS;
}
bepor_list;
typedef struct biabl /* couple of ABL */
{
struct biabl *NEXT; /* next couple */
char *LABEL; /* driver's label */
ablexpr *CNDABL; /* driver's connection condition (ABL) */
ablexpr *VALABL; /* equation of driven value (ABL) */
void *USER; /* user field */
long FLAGS;
}
biabl_list;
typedef struct binode /* couple of BDD */
{
struct binode *NEXT; /* next figure */
struct bddnode *CNDNODE; /* driver's connection condition (BDD) */
struct bddnode *VALNODE; /* equation of driven value (BDD) */
void *USER;
long FLAGS;
}
binode_list;
typedef struct berin /* primary inputs */
{
struct berin *NEXT; /* next input */
char *NAME; /* input's name */
struct chain *OUT_REF; /* outputs which depends on this input */
struct chain *BUS_REF; /* busses which depends on this input */
struct chain *AUX_REF; /* aux sig. which depends on this input */
struct chain *REG_REF; /* registers which depends on this input*/
struct chain *BUX_REF; /* busses which depends on this input */
struct chain *MSG_REF; /* messages which depends on this input */
struct chain *DLY_REF; /* delayed internal signals depending ..*/
void *USER;
long FLAGS;
}
berin_list;
typedef struct begen /* generic */
{
struct begen *NEXT; /* next generic */
char *NAME; /* generic`s name */
char *TYPE; /* generic type`s name */
void *VALUE; /* generic`s value */
void *USER;
long FLAGS;
}
begen_list;
typedef struct begex
{
struct chain *OPERAND; /* list of operands or NULL for term */
unsigned int TERM ; /* operator or terminal's index */
unsigned short TYPE ; /* expression's type index */
}
begex_list;
typedef struct bepgm /* pragma */
{
struct bepgm *NEXT; /* next pragma */
char *TYPE; /* prgma's type */
char *NAME; /* object's name */
void *VALUE; /* prgma's content */
void *USER;
}
bepgm_list;
/* ###------------------------------------------------------### */
/* functions */
/* ###------------------------------------------------------### */
extern struct beaux *beh_addbeaux ();
extern struct bebux *beh_addbebux ();
extern struct bebus *beh_addbebus ();
extern struct befig *beh_addbefig ();
extern struct begen *beh_addbegen ();
extern struct bemsg *beh_addbemsg ();
extern struct beout *beh_addbeout ();
extern struct bepor *beh_addbepor ();
extern struct bereg *beh_addbereg ();
extern struct berin *beh_addberin ();
extern struct bepgm *beh_addbepgm ();
extern struct biabl *beh_addbiabl ();
extern struct binode *beh_addbinode ();
extern struct beaux *beh_delbeaux ();
extern struct bebux *beh_delbebux ();
extern struct bebus *beh_delbebus ();
extern struct befig *beh_delbefig ();
extern struct begen *beh_delbegen ();
extern struct bemsg *beh_delbemsg ();
extern struct beout *beh_delbeout ();
extern struct bepor *beh_delbepor ();
extern struct bereg *beh_delbereg ();
extern struct berin *beh_delberin ();
extern struct bepgm *beh_delbepgm ();
extern struct biabl *beh_delbiabl ();
extern struct binode *beh_delbinode ();
extern void beh_frebeaux ();
extern void beh_frebebux ();
extern void beh_frebebus ();
extern void beh_frebefig ();
extern void beh_frebegen ();
extern void beh_frebemsg ();
extern void beh_frebeout ();
extern void beh_frebepor ();
extern void beh_frebereg ();
extern void beh_freberin ();
extern void beh_frebepgm ();
extern void beh_frebiabl ();
extern void beh_frebinode ();
extern void beh_viewbefig();
extern void beh_viewbiabl();
extern void beh_viewbereg();
extern void beh_viewbebux();
extern void beh_viewbebus();
extern void beh_viewbeout();
extern void beh_viewbeaux();
extern void beh_viewbepor();
extern struct beaux *beh_rmvbeaux ();
extern struct bebux *beh_rmvbebux ();
extern struct bebus *beh_rmvbebus ();
extern struct befig *beh_rmvbefig ();
extern struct begen *beh_rmvbegen ();
extern struct bemsg *beh_rmvbemsg ();
extern struct beout *beh_rmvbeout ();
extern struct bepor *beh_rmvbepor ();
extern struct bereg *beh_rmvbereg ();
extern struct berin *beh_rmvberin ();
extern struct bepgm *beh_rmvbepgm ();
extern struct beden **beh_initab ();
extern void beh_addtab ();
extern long beh_chktab ();
extern void beh_fretab ();
extern int beh_error ();
extern void beh_message ();
extern void beh_toolbug ();
#endif

View File

@ -1,540 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbeaux.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include MUT_H
#include AUT_H
#include ABL_H
#include ABE_H
/* ###--------------------------------------------------------------### */
/* function : beh_addbeaux */
/* description : create a BEAUX structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct beaux *beh_addbeaux (lastbeaux, name, abl_expr, bdd_expr)
struct beaux *lastbeaux; /* pointer on the last beaux structure */
char *name; /* signal's name */
struct chain *abl_expr; /* signal's expression (ABL) */
struct bddnode *bdd_expr; /* signal's expression (BDD) */
{
struct beaux *ptaux;
name = namealloc (name);
ptaux = (struct beaux *) autallocblock (sizeof(struct beaux));
ptaux->NAME = name;
ptaux->ABL = abl_expr;
ptaux->NODE = bdd_expr;
ptaux->NEXT = lastbeaux;
return (ptaux);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbebus.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbebus */
/* description : create a BEBUS structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct bebus *beh_addbebus (lastbebus, name, biabl, binode, type)
struct bebus *lastbebus; /* pointer on the last bebus structure */
char *name; /* port's name */
struct biabl *biabl; /* port's drivers (ABL) */
struct binode *binode; /* port's drivers (BDD) */
char type; /* port type mark (M or W) */
{
struct bebus *ptbus;
name = namealloc (name);
ptbus = (struct bebus *) autallocblock (sizeof(struct bebus));
ptbus->NAME = name;
ptbus->BIABL = biabl;
ptbus->BINODE = binode;
ptbus->TYPE = type;
ptbus->NEXT = lastbebus;
return (ptbus);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbebux.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbebux */
/* description : create a BEBUX structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct bebux *beh_addbebux (lastbebux, name, biabl, binode, type)
struct bebux *lastbebux; /* pointer on the last bebux structure */
char *name; /* signal's name */
struct biabl *biabl; /* signal's expression (ABL) */
struct binode *binode; /* signal's expression (BDD) */
char type; /* signal's type mark (M or W) */
{
struct bebux *ptbux;
name = namealloc (name);
ptbux = (struct bebux *) autallocblock (sizeof(struct bebux));
ptbux->NAME = name;
ptbux->BIABL = biabl;
ptbux->BINODE = binode;
ptbux->TYPE = type;
ptbux->NEXT = lastbebux;
return (ptbux);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbefig.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbefig */
/* description : create an empty BEFIG structure at the top of the list*/
/* The ABE_HEDFIG list is not modified. */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct befig *beh_addbefig (lastbefig, name)
struct befig *lastbefig; /* pointer on the last befig structure */
char *name; /* figure's name */
{
struct befig *ptfig;
name = namealloc (name);
ptfig = (struct befig *) autallocblock (sizeof(struct befig));
ptfig->NAME = name;
ptfig->BEREG = NULL;
ptfig->BEMSG = NULL;
ptfig->BERIN = NULL;
ptfig->BEOUT = NULL;
ptfig->BEBUS = NULL;
ptfig->BEAUX = NULL;
ptfig->BEDLY = NULL;
ptfig->BEBUX = NULL;
ptfig->BEPOR = NULL;
ptfig->CIRCUI = NULL;
ptfig->USER = NULL;
ptfig->BEGEN = NULL;
ptfig->BEPGM = NULL;
ptfig->ERRFLG = 0;
ptfig->TYPE = 0;
ptfig->NEXT = lastbefig;
return (ptfig);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbegen.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbegen */
/* description : create a BEGEN structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct begen *beh_addbegen (lastbegen, name, type, value)
struct begen *lastbegen; /* pointer on the last begen structure */
char *name; /* generic's name */
char *type; /* generic's type mark */
void *value; /* generic's value */
{
struct begen *ptgen;
name = namealloc (name);
type = namealloc (type);
ptgen = (struct begen *) autallocblock (sizeof(struct begen));
ptgen->NAME = name;
ptgen->TYPE = type;
ptgen->VALUE = value;
ptgen->NEXT = lastbegen;
return (ptgen);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbemsg.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbemsg */
/* description : create BEMSG structure at the top the list */
/* called func. : autallocblock, namealloc */
/* ###--------------------------------------------------------------### */
struct bemsg *beh_addbemsg (lastbemsg,label,level,message,abl_expr,bdd_expr)
struct bemsg *lastbemsg; /* pointer on the last bemsg structure */
char *label; /* assert's label */
char level; /* severity level (E or W) */
char *message; /* reported message */
struct chain *abl_expr; /* assert's condition (ABL) */
struct bddnode *bdd_expr; /* assert's condition (BDD) */
{
struct bemsg *ptmsg;
label = namealloc (label);
ptmsg = (struct bemsg *) autallocblock (sizeof(struct bemsg));
ptmsg->LABEL = label;
ptmsg->LEVEL = level;
ptmsg->MESSAGE = message;
ptmsg->ABL = abl_expr;
ptmsg->NODE = bdd_expr;
ptmsg->NEXT = lastbemsg;
return (ptmsg);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbeout.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbeout */
/* description : create a BEOUT structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct beout *beh_addbeout (lastbeout, name, abl_expr, bdd_expr)
struct beout *lastbeout; /* pointer on the last beout structure */
char *name; /* port's name */
struct chain *abl_expr; /* port's expression (ABL) */
struct bddnode *bdd_expr; /* port's expression (BDD) */
{
struct beout *ptout;
name = namealloc (name);
ptout = (struct beout *) autallocblock (sizeof(struct beout));
ptout->NAME = name;
ptout->ABL = abl_expr;
ptout->NODE = bdd_expr;
ptout->NEXT = lastbeout;
return (ptout);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbepgm.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbepgm */
/* description : add an BEPGM structure at the top of a list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct bepgm *beh_addbepgm (lastbepgm, type , name , value)
struct bepgm *lastbepgm; /* pointer on the last bepgm */
char *type; /* pragma's type */
char *name; /* pragma's name */
void *value; /* pragma's content */
{
struct bepgm *ptbepgm;
if(type)
type = namealloc (type);
if(name)
name = namealloc (name);
ptbepgm = (struct bepgm *) autallocblock (sizeof(struct bepgm));
ptbepgm->TYPE = type;
ptbepgm->NAME = name;
ptbepgm->VALUE = value;
ptbepgm->NEXT = lastbepgm;
return (ptbepgm);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbepor.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbepor */
/* description : create a BEPOR structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct bepor *beh_addbepor (lastbepor, name, dir, type)
struct bepor *lastbepor; /* pointer on the last bepor structure */
char *name; /* signal's name */
char dir; /* signal's mode (I, O, B, Z, or T) */
char type; /* signal'type mark (M or W) */
{
struct bepor *ptbepor;
name = namealloc (name);
ptbepor = (struct bepor *) autallocblock (sizeof(struct bepor));
ptbepor->NAME = name;
ptbepor->DIRECTION = dir;
ptbepor->TYPE = type;
ptbepor->NEXT = lastbepor;
return (ptbepor);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbereg.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbereg */
/* description : create a BEREG structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct bereg *beh_addbereg (lastbereg, name, biabl, binode)
struct bereg *lastbereg; /* pointer on the last bereg structure */
char *name; /* register's name */
struct biabl *biabl; /* register's drivers (ABL) */
struct binode *binode; /* register's drivers (BDD) */
{
struct bereg *ptreg;
name = namealloc (name);
ptreg = (struct bereg *) autallocblock (sizeof(struct bereg));
ptreg->NAME = name;
ptreg->BIABL = biabl;
ptreg->BINODE = binode;
ptreg->NEXT = lastbereg;
return (ptreg);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addberin.c */
/* date : Sep 20 1994 */
/* version : v107 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addberin */
/* description : create a BERIN structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct berin *beh_addberin (lastberin, name)
struct berin *lastberin; /* pointer on the last berin structure */
char *name; /* signal's name */
{
struct berin *ptrin;
name = namealloc (name);
ptrin = (struct berin *) autallocblock (sizeof(struct berin));
ptrin->NAME = name;
ptrin->NEXT = lastberin;
ptrin->REG_REF = NULL;
ptrin->MSG_REF = NULL;
ptrin->AUX_REF = NULL;
ptrin->BUX_REF = NULL;
ptrin->BUS_REF = NULL;
ptrin->OUT_REF = NULL;
ptrin->DLY_REF = NULL;
return (ptrin);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbiabl.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbiabl */
/* description : create a BIABL structure at the top the list */
/* called func. : namealloc, autallocblock */
/* ###--------------------------------------------------------------### */
struct biabl *beh_addbiabl (lastbiabl, label, condition, value)
char *label; /* block's label */
struct biabl *lastbiabl; /* pointer on the last biabl structure */
struct chain *condition; /* guard expression (ABL) */
struct chain *value; /* value expression (ABL) */
{
struct biabl *ptbiabl;
ptbiabl = (struct biabl *) autallocblock (sizeof(struct biabl));
label = namealloc (label);
ptbiabl->LABEL = label;
ptbiabl->CNDABL = condition;
ptbiabl->VALABL = value;
ptbiabl->USER = NULL;
ptbiabl->NEXT = lastbiabl;
return (ptbiabl);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_addbinod.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_addbinode */
/* description : create a BINODE structure at the top the list */
/* called func. : autallocblock */
/* ###--------------------------------------------------------------### */
struct binode *beh_addbinode (lastbinode, condition, value)
struct binode *lastbinode; /* pointer on the last binode structure */
struct bddnode *condition; /* guard expression (BDD) */
struct bddnode *value; /* value expression (BDD) */
{
struct binode *ptbinode;
ptbinode = (struct binode *) autallocblock (sizeof(struct binode));
ptbinode->CNDNODE = condition;
ptbinode->VALNODE = value;
ptbinode->NEXT = lastbinode;
return (ptbinode);
}

View File

@ -1,866 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbeaux.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include MUT_H
#include AUT_H
#include ABL_H
#include ABE_H
/* ###--------------------------------------------------------------### */
/* function : beh_delbeaux */
/* description : delete a BEAUX structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, freeablexpr */
/* ###--------------------------------------------------------------### */
struct beaux *beh_delbeaux (listbeaux, ptbeaux, mode)
struct beaux *listbeaux; /* list of beaux containing the object */
struct beaux *ptbeaux; /* pointer of the BEAUX to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct beaux headaux;
struct beaux *ptlastaux;
if ((listbeaux != NULL) && (ptbeaux != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headaux.NEXT = listbeaux;
ptlastaux = &headaux;
while ((ptlastaux != NULL) && (ptlastaux->NEXT != ptbeaux))
ptlastaux = ptlastaux->NEXT;
if (ptlastaux != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if (ptbeaux->ABL != NULL)
(void) fprintf (stderr,"BEH_warning : beaux `%s` not empty\n",
ptbeaux->NAME);
}
else
freeablexpr (ptbeaux->ABL);
ptlastaux->NEXT = ptbeaux->NEXT;
autfreeblock (ptbeaux);
}
listbeaux = headaux.NEXT;
}
return(listbeaux);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbebus.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbebus */
/* description : delete a BEBUS structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, beh_frebiabl, beh_frebinode */
/* ###--------------------------------------------------------------### */
struct bebus *beh_delbebus (listbebus, ptbebus, mode)
struct bebus *listbebus; /* list of bebus containing the object */
struct bebus *ptbebus; /* pointer of the BEBUS to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct bebus headbus;
struct bebus *ptlastbus;
if ((listbebus != NULL) && (ptbebus != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headbus.NEXT = listbebus;
ptlastbus = &headbus;
while ((ptlastbus != NULL) && (ptlastbus->NEXT != ptbebus))
ptlastbus = ptlastbus->NEXT;
if (ptlastbus != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbebus->BIABL != NULL) || (ptbebus->BINODE != NULL))
(void) fprintf (stderr,"BEH_warning : bebus `%s` not empty\n",
ptbebus->NAME);
}
else
{
beh_frebiabl (ptbebus->BIABL);
beh_frebinode (ptbebus->BINODE);
}
ptlastbus->NEXT = ptbebus->NEXT;
autfreeblock (ptbebus);
}
listbebus = headbus.NEXT;
}
return(listbebus);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbebux.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbebux */
/* description : delete a BEBUX structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, beh_frebiabl, beh_frebinode */
/* ###--------------------------------------------------------------### */
struct bebux *beh_delbebux (listbebux, ptbebux, mode)
struct bebux *listbebux; /* list of bebux containing the object */
struct bebux *ptbebux; /* pointer of the BEBUX to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct bebux headbux;
struct bebux *ptlastbux;
if ((listbebux != NULL) && (ptbebux != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headbux.NEXT = listbebux;
ptlastbux = &headbux;
while ((ptlastbux != NULL) && (ptlastbux->NEXT != ptbebux))
ptlastbux = ptlastbux->NEXT;
if (ptlastbux != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbebux->BIABL != NULL) || (ptbebux->BINODE != NULL))
(void) fprintf (stderr,"BEH_warning : bebux `%s` not empty\n",
ptbebux->NAME);
}
else
{
beh_frebiabl (ptbebux->BIABL);
beh_frebinode (ptbebux->BINODE);
}
ptlastbux->NEXT = ptbebux->NEXT;
autfreeblock (ptbebux);
}
listbebux = headbux.NEXT;
}
return(listbebux);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbefig.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbefig */
/* description : delete a BEFIG structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N. */
/* called func. : autfreeblock , beh_frebereg, beh_frebemsg, */
/* beh_freberin, beh_frebeout, beh_frebebus, */
/* beh_frebeaux, beh_frebebux, beh_frebepor, */
/* beh_frebegen, getptype */
/* ###--------------------------------------------------------------### */
struct befig *beh_delbefig (listbefig, ptbefig, mode)
struct befig *listbefig; /* list of befig containing the object */
struct befig *ptbefig; /* pointer of the BEFIG to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct befig headfig;
struct befig *ptlastfig;
struct ptype *ptptype;
if ((listbefig != NULL) && (ptbefig != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headfig.NEXT = listbefig;
ptlastfig = &headfig;
while ((ptlastfig != NULL) && (ptlastfig->NEXT != ptbefig))
ptlastfig = ptlastfig->NEXT;
if (ptlastfig != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbefig->BEREG != NULL) || (ptbefig->BEMSG != NULL) ||
(ptbefig->BERIN != NULL) || (ptbefig->BEOUT != NULL) ||
(ptbefig->BEBUS != NULL) || (ptbefig->BEAUX != NULL) ||
(ptbefig->BEBUX != NULL) || (ptbefig->BEDLY != NULL) ||
(ptbefig->BEPOR != NULL) || (ptbefig->USER != NULL) ||
(ptbefig->BEPGM != NULL))
(void) fprintf (stderr,"BEH_warning : befig `%s` not empty\n",
ptbefig->NAME);
}
else
{
beh_frebereg (ptbefig->BEREG);
beh_frebemsg (ptbefig->BEMSG);
beh_freberin (ptbefig->BERIN);
beh_frebeout (ptbefig->BEOUT);
beh_frebebus (ptbefig->BEBUS);
beh_frebeaux (ptbefig->BEAUX);
beh_frebeaux (ptbefig->BEDLY);
beh_frebebux (ptbefig->BEBUX);
beh_frebepor (ptbefig->BEPOR);
beh_frebepgm (ptbefig->BEPGM);
if ((ptptype = getptype (ptbefig->USER,BEH_GENERIC)) != NULL)
beh_frebegen (ptptype->DATA);
}
ptlastfig->NEXT = ptbefig->NEXT;
autfreeblock (ptbefig);
}
listbefig = headfig.NEXT;
}
return(listbefig);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbegen.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbegen */
/* description : delete a BEGEN structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
struct begen *beh_delbegen (listbegen, ptbegen, mode)
struct begen *listbegen; /* list of begen containing the object */
struct begen *ptbegen; /* pointer of the BEGEN to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct begen headgen;
struct begen *ptlastgen;
if ((listbegen != NULL) && (ptbegen != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headgen.NEXT = listbegen;
ptlastgen = &headgen;
while ((ptlastgen != NULL) && (ptlastgen->NEXT != ptbegen))
ptlastgen = ptlastgen->NEXT;
if (ptlastgen != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if (ptbegen->VALUE != NULL)
(void) fprintf (stderr,"BEH_warning : begen `%s` not empty\n",
ptbegen->NAME);
}
else
autfreeblock (ptbegen->VALUE);
ptlastgen->NEXT = ptbegen->NEXT;
autfreeblock (ptbegen);
}
listbegen = headgen.NEXT;
}
return(listbegen);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbemsg.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbemsg */
/* description : delete a BEMSG structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, freeablexpr */
/* ###--------------------------------------------------------------### */
struct bemsg *beh_delbemsg (listbemsg, ptbemsg, mode)
struct bemsg *listbemsg; /* list of bemsg containing the object */
struct bemsg *ptbemsg; /* pointer of the BEMSG to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct bemsg headmsg;
struct bemsg *ptlastmsg;
if ((listbemsg != NULL) && (ptbemsg != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headmsg.NEXT = listbemsg;
ptlastmsg = &headmsg;
while ((ptlastmsg != NULL) && (ptlastmsg->NEXT != ptbemsg))
ptlastmsg = ptlastmsg->NEXT;
if (ptlastmsg != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if (ptbemsg->ABL != NULL)
(void) fprintf (stderr,"BEH_warning : bemsg `%s` not empty\n",
ptbemsg->LABEL);
}
else
freeablexpr (ptbemsg->ABL);
ptlastmsg->NEXT = ptbemsg->NEXT;
autfreeblock (ptbemsg);
}
listbemsg = headmsg.NEXT;
}
return(listbemsg);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbeout.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbeout */
/* description : delete a BEOUT structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, freeablexpr */
/* ###--------------------------------------------------------------### */
struct beout *beh_delbeout (listbeout, ptbeout, mode)
struct beout *listbeout; /* list of beout containing the object */
struct beout *ptbeout; /* pointer of the BEOUT to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct beout headout;
struct beout *ptlastout;
if ((listbeout != NULL) && (ptbeout != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headout.NEXT = listbeout;
ptlastout = &headout;
while ((ptlastout != NULL) && (ptlastout->NEXT != ptbeout))
ptlastout = ptlastout->NEXT;
if (ptlastout != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if (ptbeout->ABL != NULL)
(void) fprintf (stderr,"BEH_warning : beout `%s` not empty\n",
ptbeout->NAME);
}
else
freeablexpr (ptbeout->ABL);
ptlastout->NEXT = ptbeout->NEXT;
autfreeblock (ptbeout);
}
listbeout = headout.NEXT;
}
return(listbeout);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbepor.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbepor */
/* description : delete a BEPOR structure and return the pointer of */
/* the next object. */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
struct bepor *beh_delbepor (listbepor, ptbepor)
struct bepor *listbepor; /* list of bepor containing the object */
struct bepor *ptbepor; /* pointer of the BEPOR to be deleted */
{
struct bepor headpor;
struct bepor *ptlastpor;
if ((listbepor != NULL) && (ptbepor != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headpor.NEXT = listbepor;
ptlastpor = &headpor;
while ((ptlastpor != NULL) && (ptlastpor->NEXT != ptbepor))
ptlastpor = ptlastpor->NEXT;
if (ptlastpor != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* ###------------------------------------------------------### */
ptlastpor->NEXT = ptbepor->NEXT;
autfreeblock (ptbepor);
}
listbepor = headpor.NEXT;
}
return(listbepor);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbereg.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbereg */
/* description : delete a BEREG structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, beh_frebiabl, beh_frebinode */
/* ###--------------------------------------------------------------### */
struct bereg *beh_delbereg (listbereg, ptbereg, mode)
struct bereg *listbereg; /* list of bereg containing the object */
struct bereg *ptbereg; /* pointer of the BEREG to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct bereg headreg;
struct bereg *ptlastreg;
if ((listbereg != NULL) && (ptbereg != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headreg.NEXT = listbereg;
ptlastreg = &headreg;
while ((ptlastreg != NULL) && (ptlastreg->NEXT != ptbereg))
ptlastreg = ptlastreg->NEXT;
if (ptlastreg != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbereg->BIABL != NULL) || (ptbereg->BINODE != NULL))
(void) fprintf (stderr,"BEH_warning : bereg `%s` not empty\n",
ptbereg->NAME);
}
else
{
beh_frebiabl (ptbereg->BIABL);
beh_frebinode (ptbereg->BINODE);
}
ptlastreg->NEXT = ptbereg->NEXT;
autfreeblock (ptbereg);
}
listbereg = headreg.NEXT;
}
return(listbereg);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delberin.c */
/* date : Sep 20 1994 */
/* version : v107 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delberin */
/* description : delete a BERIN structure and return the pointer of */
/* the next object. */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
struct berin *beh_delberin (listberin, ptberin)
struct berin *listberin; /* list of berin containing the object */
struct berin *ptberin; /* pointer of the BERIN to be deleted */
{
struct berin headrin;
struct berin *ptlastrin;
if ((listberin != NULL) && (ptberin != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headrin.NEXT = listberin;
ptlastrin = &headrin;
while ((ptlastrin != NULL) && (ptlastrin->NEXT != ptberin))
ptlastrin = ptlastrin->NEXT;
if (ptlastrin != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* ###------------------------------------------------------### */
ptlastrin->NEXT = ptberin->NEXT;
autfreeblock (ptberin);
}
listberin = headrin.NEXT;
}
return(listberin);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbiabl.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbiabl */
/* description : delete a BIABL structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, freeablexpr */
/* ###--------------------------------------------------------------### */
struct biabl *beh_delbiabl (listbiabl, ptbiabl, mode)
struct biabl *listbiabl; /* list of biabl containing the object */
struct biabl *ptbiabl; /* pointer of the BIABL to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct biabl headabl;
struct biabl *ptlastabl;
if ((listbiabl != NULL) && (ptbiabl != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headabl.NEXT = listbiabl;
ptlastabl = &headabl;
while ((ptlastabl != NULL) && (ptlastabl->NEXT != ptbiabl))
ptlastabl = ptlastabl->NEXT;
if (ptlastabl != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbiabl->VALABL != NULL) || (ptbiabl->CNDABL != NULL))
(void) fprintf (stderr,"BEH_warning : biabl not empty\n");
}
else
{
freeablexpr (ptbiabl->VALABL);
freeablexpr (ptbiabl->CNDABL);
freeptype(ptbiabl->USER);
}
ptlastabl->NEXT = ptbiabl->NEXT;
autfreeblock (ptbiabl);
}
listbiabl = headabl.NEXT;
}
return(listbiabl);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_delbinod.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_delbinode */
/* description : delete a BINODE structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
struct binode *beh_delbinode (listbinode, ptbinode, mode)
struct binode *listbinode; /* list of binode containing the object */
struct binode *ptbinode; /* pointer of the BINODE to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct binode headnode;
struct binode *ptlastnode;
if ((listbinode != NULL) && (ptbinode != NULL))
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headnode.NEXT = listbinode;
ptlastnode = &headnode;
while ((ptlastnode != NULL) && (ptlastnode->NEXT != ptbinode))
ptlastnode = ptlastnode->NEXT;
if (ptlastnode != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbinode->VALNODE != NULL) || (ptbinode->CNDNODE != NULL))
(void) fprintf (stderr,"BEH_warning : binode not empty\n");
}
ptlastnode->NEXT = ptbinode->NEXT;
autfreeblock (ptbinode);
}
listbinode = headnode.NEXT;
}
return(listbinode);
}

View File

@ -1,347 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_dict.c */
/* date : Jun 15 1994 */
/* version : v107 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include MUT_H
#include AUT_H
#include ABL_H
#include ABE_H
#define BEH_ALODFN 64
#define ABE_HSZDFN 97
static struct beden *BEH_DCEHED = NULL; /* free entries list */
static struct bedrd *BEH_DCRHED = NULL; /* free records list */
/* ###--------------------------------------------------------------### */
/* function : beh_addent */
/* description : add a new entry point to the dictionary */
/* called func. : mbkalloc */
/* ###--------------------------------------------------------------### */
static struct beden *beh_addent (head, key)
struct beden *head;
char *key;
{
struct beden *entry;
int i ;
if (BEH_DCEHED == NULL)
{
BEH_DCEHED = (struct beden *)
mbkalloc (sizeof (struct beden) * BEH_ALODFN);
entry = BEH_DCEHED;
for (i=1 ; i<BEH_ALODFN ; i++)
{
entry->NEXT = entry + 1;
entry++;
}
entry->NEXT = NULL;
}
entry = BEH_DCEHED;
BEH_DCEHED = BEH_DCEHED->NEXT;
entry->NEXT = head;
entry->DATA = NULL;
entry->KEY = key;
return (entry);
}
/* ###--------------------------------------------------------------### */
/* function : beh_addrcd */
/* description : add a new record to the dictionary */
/* called func. : mbkalloc */
/* ###--------------------------------------------------------------### */
static struct bedrd *beh_addrcd (head, key)
struct bedrd *head;
char *key;
{
struct bedrd *recrd;
int i ;
if (BEH_DCRHED == NULL)
{
BEH_DCRHED = (struct bedrd *)
mbkalloc (sizeof (struct bedrd) * BEH_ALODFN);
recrd = BEH_DCRHED;
for (i=1 ; i<BEH_ALODFN ; i++)
{
recrd->NEXT = recrd + 1;
recrd++;
}
recrd->NEXT = NULL;
}
recrd = BEH_DCRHED;
BEH_DCRHED = BEH_DCRHED->NEXT;
recrd->NEXT = head;
recrd->FD0_VAL = 0;
recrd->FD1_VAL = 0;
recrd->FD2_VAL = 0;
recrd->FD3_VAL = 0;
recrd->FD4_VAL = 0;
recrd->FD5_VAL = 0;
recrd->FD6_VAL = 0;
recrd->PNT_VAL = 0;
recrd->KEY = key;
return (recrd);
}
/* ###--------------------------------------------------------------### */
/* function : beh_initab */
/* description : create a new dictionary */
/* called func. : mbkalloc */
/* ###--------------------------------------------------------------### */
struct beden **beh_initab ()
{
struct beden **head;
int i;
head = (struct beden **)
mbkalloc (sizeof(struct beden *) * ABE_HSZDFN);
for (i=0 ; i<ABE_HSZDFN ; i++)
head[i] = NULL;
return (head);
}
/* ###--------------------------------------------------------------### */
/* function : beh_addtab */
/* description : save a data in a dictionary */
/* called func. : beh_addent, beh_addrcd */
/* ###--------------------------------------------------------------### */
void beh_addtab (head, key_str, ctx_str, field, valu)
struct beden **head;
char *key_str;
char *ctx_str;
int field;
int valu;
{
int found = 0;
int index;
struct beden *entry_pnt;
struct bedrd *recrd_pnt;
index = ((unsigned long) key_str) % ABE_HSZDFN;
entry_pnt = head[index];
while (entry_pnt != NULL)
{
if (entry_pnt->KEY == key_str)
{
found = 1;
break;
}
entry_pnt = entry_pnt->NEXT;
}
if (found == 0)
{
head[index] = beh_addent (head[index],key_str);
entry_pnt = head[index];
}
found = 0;
recrd_pnt = entry_pnt->DATA;
while (recrd_pnt != NULL)
{
if (recrd_pnt->KEY == ctx_str)
{
found = 1;
break;
}
recrd_pnt = recrd_pnt->NEXT;
}
if (found == 0)
{
entry_pnt->DATA = beh_addrcd (entry_pnt->DATA,ctx_str);
recrd_pnt = entry_pnt->DATA ;
}
switch (field)
{
case 0 :
recrd_pnt->FD0_VAL = valu; break;
case 1 :
recrd_pnt->FD1_VAL = valu; break;
case 2 :
recrd_pnt->FD2_VAL = valu; break;
case 3 :
recrd_pnt->FD3_VAL = valu; break;
case 4 :
recrd_pnt->FD4_VAL = valu; break;
case 5 :
recrd_pnt->FD5_VAL = valu; break;
case 6 :
recrd_pnt->FD6_VAL = valu; break;
case 7 :
recrd_pnt->PNT_VAL = valu; break;
}
}
/* ###--------------------------------------------------------------### */
/* function : beh_chktab */
/* description : extract a data from a dictionary */
/* called func. : none */
/* ###--------------------------------------------------------------### */
long beh_chktab (head, key_str, ctx_str, field)
struct beden **head;
char *key_str;
char *ctx_str;
int field;
{
int found = 0;
long valu = 0;
struct beden *entry_pnt;
struct bedrd *recrd_pnt;
entry_pnt = head [((unsigned long)key_str) % ABE_HSZDFN];
while (entry_pnt != NULL)
{
if (entry_pnt->KEY == key_str)
{
found = 1;
break;
}
entry_pnt = entry_pnt->NEXT;
}
if (found == 1)
{
found = 0;
recrd_pnt = entry_pnt->DATA;
while (recrd_pnt != NULL)
{
if (recrd_pnt->KEY == ctx_str)
{
found = 1;
break;
}
recrd_pnt = recrd_pnt->NEXT;
}
if (found == 1)
{
switch (field)
{
case 0 :
valu = recrd_pnt->FD0_VAL; break;
case 1 :
valu = recrd_pnt->FD1_VAL; break;
case 2 :
valu = recrd_pnt->FD2_VAL; break;
case 3 :
valu = recrd_pnt->FD3_VAL; break;
case 4 :
valu = recrd_pnt->FD4_VAL; break;
case 5 :
valu = recrd_pnt->FD5_VAL; break;
case 6 :
valu = recrd_pnt->FD6_VAL; break;
case 7 :
valu = recrd_pnt->PNT_VAL; break;
}
}
}
return (valu);
}
/* ###--------------------------------------------------------------### */
/* function : beh_fretab */
/* description : release a dictionary */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_fretab (pt_hash)
struct beden **pt_hash;
{
struct beden *pt_entry;
struct beden *pt_nxtentry;
struct bedrd *pt_record;
int i;
if (pt_hash != NULL)
{
for (i=0 ; i<ABE_HSZDFN ; i++)
{
if ((pt_entry = pt_hash[i]) != NULL)
{
while (pt_entry != NULL)
{
pt_record = pt_entry->DATA;
while (pt_record->NEXT != NULL)
pt_record = pt_record->NEXT;
pt_record->NEXT = BEH_DCRHED;
BEH_DCRHED = pt_entry->DATA;
pt_nxtentry = pt_entry->NEXT;
pt_entry->NEXT = BEH_DCEHED;
BEH_DCEHED = pt_entry;
pt_entry = pt_nxtentry;
}
}
}
autfreeblock (pt_hash);
}
}

View File

@ -1,95 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_error.c */
/* date : Jun 13 1994 */
/* version : v107 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
/* ###--------------------------------------------------------------### */
/* function : beh_error */
/* description : print an errorr message */
/* called func. : none */
/* ###--------------------------------------------------------------### */
int beh_error (code, str1)
int code;
char *str1;
{
(void) fprintf (stderr, "BEH : Error %d :", code);
switch (code)
{
case 1:
(void) fprintf (stderr, "combinatory loop: `%s`\n", str1);
break;
case 2:
(void) fprintf (stderr, "cannot make bdd of empty expression\n");
break;
case 3:
(void) fprintf (stderr, "cannot find terminal `%s`\n", str1);
break;
case 4:
(void) fprintf (stderr, "illegal use of STABLE attribute\n");
break;
case 5:
(void) fprintf (stderr, "cannot simplify internal signals\n");
break;
case 40:
(void) fprintf (stderr,"signal `%s` never assigned\n",str1);
break;
case 68:
(void) fprintf (stderr,"port `%s` has unknwon type\n", str1);
break;
case 69:
(void) fprintf (stderr,"port `%s` has unknwon mode\n", str1);
break;
case 100:
(void) fprintf (stderr,"cannot find `%s`\n",str1);
break;
case 107:
(void) fprintf (stderr,"cannot open result file\n");
break;
default:
(void) fprintf (stderr, "syntax error\n");
break;
}
return (1);
}

View File

@ -1,559 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebeaux.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include MUT_H
#include AUT_H
#include ABL_H
#include ABE_H
/* ###--------------------------------------------------------------### */
/* function : beh_frebeaux */
/* description : delete a list of BEAUX structures and all objects */
/* pointed by any os BEAUXs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebeaux (listbeaux)
struct beaux *listbeaux; /* list of beaux to be deleted */
{
struct beaux *ptbeaux;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbeaux != NULL)
{
freeablexpr (listbeaux->ABL);
ptbeaux = listbeaux;
listbeaux = listbeaux->NEXT;
autfreeblock (ptbeaux);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebebus.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebebus */
/* description : delete a list of BEBUS structures and all objects */
/* pointed by any os BEBUSs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebebus (listbebus)
struct bebus *listbebus; /* list of bebus to be deleted */
{
struct bebus *ptbebus;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbebus != NULL)
{
beh_frebiabl (listbebus->BIABL);
beh_frebinode (listbebus->BINODE);
ptbebus = listbebus;
listbebus = listbebus->NEXT;
autfreeblock (ptbebus);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebebux.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebebux */
/* description : delete a list of BEBUX structures and all objects */
/* pointed by any os BEBUXs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebebux (listbebux)
struct bebux *listbebux; /* list of bebux to be deleted */
{
struct bebux *ptbebux;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbebux != NULL)
{
beh_frebiabl (listbebux->BIABL);
beh_frebinode (listbebux->BINODE);
ptbebux = listbebux;
listbebux = listbebux->NEXT;
autfreeblock (ptbebux);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebefig.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebefig */
/* description : delete a list of BEFIG structures and all objects */
/* pointed by any os BEFIGs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebefig (listbefig)
struct befig *listbefig; /* list of befig to be deleted */
{
struct befig *ptbefig;
struct ptype *ptptype;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbefig != NULL)
{
beh_frebereg (listbefig->BEREG);
beh_frebemsg (listbefig->BEMSG);
beh_freberin (listbefig->BERIN);
beh_frebeout (listbefig->BEOUT);
beh_frebebus (listbefig->BEBUS);
beh_frebeaux (listbefig->BEAUX);
beh_frebeaux (listbefig->BEDLY);
beh_frebebux (listbefig->BEBUX);
beh_frebepor (listbefig->BEPOR);
beh_frebepgm (listbefig->BEPGM);
if ((ptptype = getptype (listbefig->USER,BEH_GENERIC)) != NULL)
beh_frebegen (ptptype->DATA);
ptbefig = listbefig;
listbefig = listbefig->NEXT;
autfreeblock (ptbefig);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebegen.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebegen */
/* description : delete a list of BEGEN structures and all objects */
/* pointed by any os BEGENs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebegen (listbegen)
struct begen *listbegen; /* list of begen to be deleted */
{
struct begen *ptbegen;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbegen != NULL)
{
autfreeblock (listbegen->VALUE);
ptbegen = listbegen;
listbegen = listbegen->NEXT;
autfreeblock (ptbegen);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebemsg.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebemsg */
/* description : delete a list of BEMSG structures and all objects */
/* pointed by any os BEMSGs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebemsg (listbemsg)
struct bemsg *listbemsg; /* list of bemsg to be deleted */
{
struct bemsg *ptbemsg;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbemsg != NULL)
{
freeablexpr (listbemsg->ABL);
ptbemsg = listbemsg;
listbemsg = listbemsg->NEXT;
autfreeblock (ptbemsg);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebeout.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebeout */
/* description : delete a list of BEOUT structures and all objects */
/* pointed by any os BEOUTs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebeout (listbeout)
struct beout *listbeout; /* list of beout to be deleted */
{
struct beout *ptbeout;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbeout != NULL)
{
freeablexpr (listbeout->ABL);
ptbeout = listbeout;
listbeout = listbeout->NEXT;
autfreeblock (ptbeout);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebepgm.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebepgm */
/* description : delete a list of BEMSG structures and all objects */
/* pointed by any os BEMSGs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebepgm (listbepgm)
struct bepgm *listbepgm; /* list of bepgm to be deleted */
{
struct bepgm *ptbepgm;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbepgm != NULL)
{
ptbepgm = listbepgm;
listbepgm = listbepgm->NEXT;
autfreeblock (ptbepgm);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebepor.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebepor */
/* description : delete a list of BEAUX structures and all objects */
/* pointed by any os BEAUXs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebepor (listbepor)
struct bepor *listbepor; /* list of bepor to be deleted */
{
struct bepor *ptbepor;
/* ###------------------------------------------------------### */
/* for each object of the list, delete the object itself */
/* ###------------------------------------------------------### */
while (listbepor != NULL)
{
ptbepor = listbepor;
listbepor = listbepor->NEXT;
autfreeblock (ptbepor);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebereg.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebereg */
/* description : delete a list of BEAUX structures and all objects */
/* pointed by any os BEAUXs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebereg (listbereg)
struct bereg *listbereg; /* list of bereg to be deleted */
{
struct bereg *ptbereg;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbereg != NULL)
{
beh_frebiabl (listbereg->BIABL);
beh_frebinode (listbereg->BINODE);
ptbereg = listbereg;
listbereg = listbereg->NEXT;
autfreeblock (ptbereg);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_freberin.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_freberin */
/* description : delete a list of BEAUX structures and all objects */
/* pointed by any os BEAUXs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_freberin (listberin)
struct berin *listberin; /* list of berin to be deleted */
{
struct berin *ptberin;
/* ###------------------------------------------------------### */
/* for each object of the list delete the object itself */
/* ###------------------------------------------------------### */
while (listberin != NULL)
{
ptberin = listberin;
listberin = listberin->NEXT;
autfreeblock (ptberin);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebiabl.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebiabl */
/* description : delete a list of BIABL structures and all objects */
/* pointed by any os BIABLs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebiabl (listbiabl)
struct biabl *listbiabl; /* list of biabl to be deleted */
{
struct biabl *ptbiabl;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbiabl != NULL)
{
freeablexpr (listbiabl->VALABL);
freeablexpr (listbiabl->CNDABL);
freeptype(listbiabl->USER);
ptbiabl = listbiabl;
listbiabl = listbiabl->NEXT;
autfreeblock (ptbiabl);
}
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_frebinod.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_frebinode */
/* description : delete a list of BINODE structures and all objects */
/* pointed by any os BINODEs in the list */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
void beh_frebinode (listbinode)
struct binode *listbinode; /* list of binode to be deleted */
{
struct binode *ptbinode;
/* ###------------------------------------------------------### */
/* for each object of the list, first delete pointed objects */
/* then, delete the object itself */
/* ###------------------------------------------------------### */
while (listbinode != NULL)
{
ptbinode = listbinode;
listbinode = listbinode->NEXT;
autfreeblock (ptbinode);
}
}

View File

@ -1,77 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_getgenva.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include MUT_H
#include AUT_H
#include ABL_H
#include ABE_H
/* ###--------------------------------------------------------------### */
/* function : beh_getgenval */
/* description : Search an find a BEGEN structure (known from its name)*/
/* then return its value field. If the BEGEN is not found*/
/* a NULL pointer is returned */
/* called func. : */
/* ###--------------------------------------------------------------### */
void *beh_getgenval (listbegen, begenname)
struct begen *listbegen; /* head of BEGEN list */
char *begenname; /* name of the structure */
{
struct begen *ptbegen;
void *value = NULL;
/* ###------------------------------------------------------### */
/* searching the object */
/* ###------------------------------------------------------### */
ptbegen = listbegen;
while ((ptbegen != NULL) && (ptbegen->NAME != begenname))
ptbegen = ptbegen->NEXT;
/* ###------------------------------------------------------### */
/* if found return its value field */
/* ###------------------------------------------------------### */
if (ptbegen != NULL)
value = ptbegen->VALUE;
return (value);
}

View File

@ -1,65 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_message.c */
/* date : Jun 15 1994 */
/* version : v107 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
/* ###--------------------------------------------------------------### */
/* function : bvl_message */
/* description : print a message on the standard output */
/* called func. : none */
/* ###--------------------------------------------------------------### */
void beh_message (code, str1)
int code;
char *str1;
{
(void) fprintf (stdout, "BEH : ");
switch (code)
{
case 3:
(void) fprintf (stdout, "Compiling `%s` (Behaviour) ...\n", str1);
break;
case 13:
(void) fprintf (stdout, "Saving '%s' in a vhdl file (vbe)\n", str1);
break;
default:
(void) fprintf (stdout, "%s\n", str1);
}
}

View File

@ -1,811 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbeaux.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include MUT_H
#include AUT_H
#include ABL_H
#include ABE_H
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbeaux */
/* description : delete a BEAUX structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, freeablexpr */
/* ###--------------------------------------------------------------### */
struct beaux *beh_rmvbeaux (listbeaux, beauxname, mode)
struct beaux *listbeaux; /* list of beaux containing the object */
char *beauxname; /* name of the BEAUX to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct beaux headaux;
struct beaux *ptlastaux;
struct beaux *ptbeaux;
if (listbeaux != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headaux.NEXT = listbeaux;
headaux.NAME = NULL ;
headaux.ABL = NULL ;
ptbeaux = &headaux;
while ((ptbeaux != NULL) && (ptbeaux->NAME != beauxname))
{
ptlastaux = ptbeaux;
ptbeaux = ptbeaux->NEXT;
}
if (ptbeaux != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if (ptbeaux->ABL != NULL)
(void) fprintf (stderr,"BEH_warning : beaux `%s` not empty\n",
beauxname);
}
else
freeablexpr (ptbeaux->ABL);
ptlastaux->NEXT = ptbeaux->NEXT;
autfreeblock (ptbeaux);
}
listbeaux = headaux.NEXT;
}
return(listbeaux);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbebus.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbebus */
/* description : delete a BEBUS structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, beh_frebiabl, beh_frebinode */
/* ###--------------------------------------------------------------### */
struct bebus *beh_rmvbebus (listbebus, bebusname, mode)
struct bebus *listbebus; /* list of bebus containing the object */
char *bebusname; /* name of the BEBUS to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct bebus headbus;
struct bebus *ptlastbus;
struct bebus *ptbebus;
if (listbebus != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headbus.NEXT = listbebus;
headbus.NAME = NULL ;
headbus.BIABL = NULL ;
headbus.BINODE = NULL ;
ptbebus = &headbus;
while ((ptbebus != NULL) && (ptbebus->NAME != bebusname))
{
ptlastbus = ptbebus;
ptbebus = ptbebus->NEXT;
}
if (ptbebus != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbebus->BIABL != NULL) || (ptbebus->BINODE != NULL))
(void) fprintf (stderr,"BEH_warning : bebus `%s` not empty\n",
bebusname);
}
else
{
beh_frebiabl (ptbebus->BIABL);
beh_frebinode (ptbebus->BINODE);
}
ptlastbus->NEXT = ptbebus->NEXT;
autfreeblock (ptbebus);
}
listbebus = headbus.NEXT;
}
return(listbebus);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbebux.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbebux */
/* description : delete a BEBUX structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, beh_frebiabl, beh_frebinode */
/* ###--------------------------------------------------------------### */
struct bebux *beh_rmvbebux (listbebux, bebuxname, mode)
struct bebux *listbebux; /* list of bebux containing the object */
char *bebuxname; /* name of the BEBUX to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct bebux headbux;
struct bebux *ptlastbux;
struct bebux *ptbebux;
if (listbebux != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headbux.NEXT = listbebux;
headbux.NAME = NULL ;
headbux.BIABL = NULL ;
headbux.BINODE = NULL ;
ptbebux = &headbux;
while ((ptbebux != NULL) && (ptbebux->NAME != bebuxname))
{
ptlastbux = ptbebux;
ptbebux = ptbebux->NEXT;
}
if (ptbebux != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbebux->BIABL != NULL) || (ptbebux->BINODE != NULL))
(void) fprintf (stderr,"BEH_warning : bebux `%s` not empty\n",
bebuxname);
}
else
{
beh_frebiabl (ptbebux->BIABL);
beh_frebinode (ptbebux->BINODE);
}
ptlastbux->NEXT = ptbebux->NEXT;
autfreeblock (ptbebux);
}
listbebux = headbux.NEXT;
}
return(listbebux);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbefig.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbefig */
/* description : delete a BEFIG structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N. */
/* called func. : autfreeblock , beh_frebereg, beh_frebemsg, */
/* beh_freberin, beh_frebeout, beh_frebebus, */
/* beh_frebeaux, beh_frebebux, beh_frebepor, */
/* beh_frebegen, getptype */
/* ###--------------------------------------------------------------### */
struct befig *beh_rmvbefig (listbefig, befigname, mode)
struct befig *listbefig; /* list of befig containing the object */
char *befigname; /* name of the BEFIG to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct befig headfig;
struct befig *ptlastfig;
struct befig *ptbefig;
struct ptype *ptptype;
if (listbefig != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headfig.NEXT = listbefig;
headfig.NAME = NULL ;
headfig.BEREG = NULL ;
headfig.BEMSG = NULL ;
headfig.BERIN = NULL ;
headfig.BEAUX = NULL ;
headfig.BEBUX = NULL ;
headfig.BEDLY = NULL ;
headfig.BEPOR = NULL ;
headfig.BEPGM = NULL ;
headfig.USER = NULL ;
ptbefig = &headfig;
while ((ptbefig != NULL) && (ptbefig->NAME != befigname))
{
ptlastfig = ptbefig;
ptbefig = ptbefig->NEXT;
}
if (ptbefig != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbefig->BEREG != NULL) || (ptbefig->BEMSG != NULL) ||
(ptbefig->BERIN != NULL) || (ptbefig->BEOUT != NULL) ||
(ptbefig->BEBUS != NULL) || (ptbefig->BEAUX != NULL) ||
(ptbefig->BEBUX != NULL) || (ptbefig->BEDLY != NULL) ||
(ptbefig->BEPOR != NULL) || (ptbefig->USER != NULL) ||
(ptbefig->BEPGM != NULL))
(void) fprintf (stderr,"BEH_warning : befig `%s` not empty\n",
befigname);
}
else
{
beh_frebereg (ptbefig->BEREG);
beh_frebemsg (ptbefig->BEMSG);
beh_freberin (ptbefig->BERIN);
beh_frebeout (ptbefig->BEOUT);
beh_frebebus (ptbefig->BEBUS);
beh_frebeaux (ptbefig->BEAUX);
beh_frebeaux (ptbefig->BEDLY);
beh_frebebux (ptbefig->BEBUX);
beh_frebepor (ptbefig->BEPOR);
beh_frebepgm (ptbefig->BEPGM);
if ((ptptype = getptype (ptbefig->USER,BEH_GENERIC)) != NULL)
beh_frebegen (ptptype->DATA);
}
ptlastfig->NEXT = ptbefig->NEXT;
autfreeblock (ptbefig);
}
listbefig = headfig.NEXT;
}
return(listbefig);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbegen.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbegen */
/* description : delete a BEGEN structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
struct begen *beh_rmvbegen (listbegen, begenname, mode)
struct begen *listbegen; /* list of begen containing the object */
char *begenname; /* name of the BEGEN to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct begen headgen;
struct begen *ptlastgen;
struct begen *ptbegen;
if (listbegen != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headgen.NEXT = listbegen;
headgen.NAME = NULL ;
headgen.VALUE = NULL ;
ptbegen = &headgen;
while ((ptbegen != NULL) && (ptbegen->NAME != begenname))
{
ptlastgen = ptbegen;
ptbegen = ptbegen->NEXT;
}
if (ptbegen != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if (ptbegen->VALUE != NULL)
(void) fprintf (stderr,"BEH_warning : begen `%s` not empty\n",
begenname);
}
else
autfreeblock (ptbegen->VALUE);
ptlastgen->NEXT = ptbegen->NEXT;
autfreeblock (ptbegen);
}
listbegen = headgen.NEXT;
}
return(listbegen);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbemsg.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbemsg */
/* description : delete a BEMSG structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, freeablexpr */
/* ###--------------------------------------------------------------### */
struct bemsg *beh_rmvbemsg (listbemsg, bemsglabl, mode)
struct bemsg *listbemsg; /* list of bemsg containing the object */
char *bemsglabl; /* label of the BEMSG to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct bemsg headmsg;
struct bemsg *ptlastmsg;
struct bemsg *ptbemsg;
if (listbemsg != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headmsg.NEXT = listbemsg;
headmsg.LABEL = NULL ;
headmsg.ABL = NULL ;
ptbemsg = &headmsg;
while ((ptbemsg != NULL) && (ptbemsg->LABEL != bemsglabl))
{
ptlastmsg = ptbemsg;
ptbemsg = ptbemsg->NEXT;
}
if (ptbemsg != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if (ptbemsg->ABL != NULL)
(void) fprintf (stderr,"BEH_warning : bemsg `%s` not empty\n",
bemsglabl);
}
else
freeablexpr (ptbemsg->ABL);
ptlastmsg->NEXT = ptbemsg->NEXT;
autfreeblock (ptbemsg);
}
listbemsg = headmsg.NEXT;
}
return(listbemsg);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbeout.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbeout */
/* description : delete a BEOUT structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, freeablexpr */
/* ###--------------------------------------------------------------### */
struct beout *beh_rmvbeout (listbeout, beoutname, mode)
struct beout *listbeout; /* list of beout containing the object */
char *beoutname; /* name of the BEOUT to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct beout headout;
struct beout *ptlastout;
struct beout *ptbeout;
if (listbeout != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headout.NEXT = listbeout;
headout.NAME = NULL ;
headout.ABL = NULL ;
ptbeout = &headout;
while ((ptbeout != NULL) && (ptbeout->NAME != beoutname))
{
ptlastout = ptbeout;
ptbeout = ptbeout->NEXT;
}
if (ptbeout != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if (ptbeout->ABL != NULL)
(void) fprintf (stderr,"BEH_warning : beout `%s` not empty\n",
beoutname);
}
else
freeablexpr (ptbeout->ABL);
ptlastout->NEXT = ptbeout->NEXT;
autfreeblock (ptbeout);
}
listbeout = headout.NEXT;
}
return(listbeout);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbepor.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbepor */
/* description : delete a BEPOR structure and return the pointer of */
/* the next object. */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
struct bepor *beh_rmvbepor (listbepor, beporname)
struct bepor *listbepor; /* list of bepor containing the object */
char *beporname; /* name of the BEPOR to be deleted */
{
struct bepor headpor;
struct bepor *ptlastpor;
struct bepor *ptbepor;
if (listbepor != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headpor.NEXT = listbepor;
headpor.NAME = NULL ;
ptbepor = &headpor;
while ((ptbepor != NULL) && (ptbepor->NAME != beporname))
{
ptlastpor = ptbepor;
ptbepor = ptbepor->NEXT;
}
if (ptbepor != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* ###------------------------------------------------------### */
ptlastpor->NEXT = ptbepor->NEXT;
autfreeblock (ptbepor);
}
listbepor = headpor.NEXT;
}
return(listbepor);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvbereg.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvbereg */
/* description : delete a BEREG structure and return the pointer of */
/* the next object. A warning is printed out if the */
/* object to be deleted is not empty when the mode is N */
/* called func. : autfreeblock, beh_frebiabl, beh_frebinode */
/* ###--------------------------------------------------------------### */
struct bereg *beh_rmvbereg (listbereg, beregname, mode)
struct bereg *listbereg; /* list of bereg containing the object */
char *beregname; /* name of the BEREG to be deleted */
char mode; /* recursive delete or not (Y or N) */
{
struct bereg headreg;
struct bereg *ptlastreg;
struct bereg *ptbereg;
if (listbereg != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headreg.NEXT = listbereg;
headreg.NAME = NULL ;
headreg.BIABL = NULL ;
headreg.BINODE = NULL ;
ptbereg = &headreg;
while ((ptbereg != NULL) && (ptbereg->NAME != beregname))
{
ptlastreg = ptbereg;
ptbereg = ptbereg->NEXT;
}
if (ptbereg != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* If the object has been found check the mode and, if asked */
/* delete pointed objects recursively. */
/* ###------------------------------------------------------### */
if (mode == 'N')
{
if ((ptbereg->BIABL != NULL) || (ptbereg->BINODE != NULL))
(void) fprintf (stderr,"BEH_warning : bereg `%s` not empty\n",
beregname);
}
else
{
beh_frebiabl (ptbereg->BIABL);
beh_frebinode (ptbereg->BINODE);
}
ptlastreg->NEXT = ptbereg->NEXT;
autfreeblock (ptbereg);
}
listbereg = headreg.NEXT;
}
return(listbereg);
}
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_rmvberin.c */
/* date : Sep 20 1994 */
/* version : v107 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
/* ###--------------------------------------------------------------### */
/* function : beh_rmvberin */
/* description : delete a BERIN structure and return the pointer of */
/* the next object. */
/* called func. : autfreeblock */
/* ###--------------------------------------------------------------### */
struct berin *beh_rmvberin (listberin, berinname)
struct berin *listberin; /* list of berin containing the object */
char *berinname; /* name of the BERIN to be deleted */
{
struct berin headrin;
struct berin *ptlastrin;
struct berin *ptberin;
if (listberin != NULL)
{
/* ###------------------------------------------------------### */
/* Search the object to be deleted */
/* ###------------------------------------------------------### */
headrin.NEXT = listberin;
headrin.NAME = NULL;
headrin.OUT_REF = NULL;
headrin.MSG_REF = NULL;
headrin.AUX_REF = NULL;
headrin.BUX_REF = NULL;
headrin.BUS_REF = NULL;
headrin.REG_REF = NULL;
headrin.DLY_REF = NULL;
ptberin = &headrin;
while ((ptberin != NULL) && (ptberin->NAME != berinname))
{
ptlastrin = ptberin;
ptberin = ptberin->NEXT;
}
if (ptberin != NULL)
{
/* ###------------------------------------------------------### */
/* If the object doesn't exist return the list without */
/* modification. */
/* ###------------------------------------------------------### */
freechain (ptberin->OUT_REF);
freechain (ptberin->MSG_REF);
freechain (ptberin->AUX_REF);
freechain (ptberin->BUX_REF);
freechain (ptberin->BUS_REF);
freechain (ptberin->REG_REF);
freechain (ptberin->DLY_REF);
ptlastrin->NEXT = ptberin->NEXT;
autfreeblock (ptberin);
}
listberin = headrin.NEXT;
}
return(listberin);
}

View File

@ -1,105 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_toolbug.c */
/* date : Sep 3 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* content : low-level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include MUT_H
#include AUT_H
/* ###--------------------------------------------------------------### */
/* function : beh_toolbug */
/* description : print an error message on the standard error output */
/* called func. : none */
/* ###--------------------------------------------------------------### */
void beh_toolbug (code, str1, str2, nbr1)
int code;
char *str1;
char *str2;
int nbr1;
{
fprintf (stderr,"Fatal error %d executing `%s`: ", code, str1);
switch (code)
{
case 1:
fprintf (stderr,"unknown operator\n");
break;
case 2:
fprintf (stderr,"cannot create empty atom\n");
break;
case 3:
fprintf (stderr,"cannot build NOT of empty expression\n");
break;
case 4:
fprintf (stderr,"cannot combine empty expressions\n");
break;
case 5:
fprintf (stderr,"cannot find terminal\n");
break;
case 10:
fprintf (stderr,"decompiler called on empty figure\n");
break;
case 15 :
fprintf (stderr,"illegal bit string value : `%c`\n",nbr1);
break;
case 16 :
fprintf (stderr,"the same expression cannot be used twice\n");
break;
case 19:
fprintf (stderr,"empty guard expression: `%s`\n",str2);
break;
case 20:
fprintf (stderr,"empty waveform expression: `%s`\n",str2);
break;
case 100 :
fprintf (stderr, "illegal use of attribute STABLE\n");
break;
case 101 :
fprintf (stderr, "unknown terminal operand `%s`\n", str2);
break;
case 102 :
fprintf (stderr, "unknown operator `%d`\n", nbr1);
break;
case 103 :
fprintf (stderr, "empty expression\n");
break;
default:
fprintf (stderr, "BUG\n");
}
autexit(1);
}

View File

@ -1,263 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : FBH |
| |
| File : beh_view.c |
| |
| Author : Jacomme Ludovic |
| |
| Date : 09.11.99 |
| |
\------------------------------------------------------------*/
#include MUT_H
#include AUT_H
#include ABL_H
#include ABE_H
static void loc_beh_viewablexprln( Expr )
ablexpr *Expr;
{
if ( Expr == (ablexpr *)0 )
{
fprintf( stdout, "NULL\n" );
}
else
{
viewablexprln( Expr, ABL_VIEW_VHDL );
}
}
void beh_viewbiabl( BiAbl )
biabl_list *BiAbl;
{
if ( BiAbl == (biabl_list *)0 )
{
fprintf( stdout, "NULL\n" );
}
else
{
while ( BiAbl != (biabl_list *)0 )
{
fprintf( stdout, "--> biabl_list\n" );
fprintf( stdout, " LABEL : %s\n", BiAbl->LABEL );
fprintf( stdout, " CNDABL : " );
loc_beh_viewablexprln( BiAbl->CNDABL );
fprintf( stdout, " VALABL : " );
loc_beh_viewablexprln( BiAbl->VALABL );
fprintf( stdout, "<-- biabl_list\n" );
BiAbl = BiAbl->NEXT;
}
}
}
void beh_viewberin( ScanRin )
berin_list *ScanRin;
{
if ( ScanRin != (berin_list *)0 )
{
fprintf( stdout, "--> berin_list\n" );
fprintf( stdout, " NAME : %s\n", ScanRin->NAME );
fprintf( stdout, "<-- berin_list\n" );
}
}
void beh_viewbereg( ScanReg )
bereg_list *ScanReg;
{
if ( ScanReg != (bereg_list *)0 )
{
fprintf( stdout, "--> bereg_list\n" );
fprintf( stdout, " NAME : %s\n", ScanReg->NAME );
fprintf( stdout, " BIABL :\n" );
beh_viewbiabl( ScanReg->BIABL );
fprintf( stdout, "<-- bereg_list\n" );
}
}
void beh_viewbebux( ScanBux )
bebux_list *ScanBux;
{
if ( ScanBux != (bebux_list *)0 )
{
fprintf( stdout, "--> bebux_list\n" );
fprintf( stdout, " NAME : %s\n", ScanBux->NAME );
fprintf( stdout, " TYPE : %c\n", (int)ScanBux->TYPE );
fprintf( stdout, " BIABL :\n" );
beh_viewbiabl( ScanBux->BIABL );
fprintf( stdout, "<-- bebux_list\n" );
}
}
void beh_viewbebus( ScanBus )
bebus_list *ScanBus;
{
if ( ScanBus != (bebus_list *)0 )
{
fprintf( stdout, "--> bebus_list\n" );
fprintf( stdout, " NAME : %s\n", ScanBus->NAME );
fprintf( stdout, " TYPE : %c\n", (int)ScanBus->TYPE );
fprintf( stdout, " BIABL :\n" );
beh_viewbiabl( ScanBus->BIABL );
fprintf( stdout, "<-- bebus_list\n" );
}
}
void beh_viewbeaux( ScanAux )
beaux_list *ScanAux;
{
if ( ScanAux != (beaux_list *)0 )
{
fprintf( stdout, "--> beaux_list\n" );
fprintf( stdout, " NAME : %s\n", ScanAux->NAME );
fprintf( stdout, " ABL :" );
loc_beh_viewablexprln( ScanAux->ABL, ABL_VIEW_VHDL );
fprintf( stdout, "<-- beaux_list\n" );
}
}
void beh_viewbeout( ScanOut )
beout_list *ScanOut;
{
if ( ScanOut != (beout_list *)0 )
{
fprintf( stdout, "--> beout_list\n" );
fprintf( stdout, " NAME : %s\n", ScanOut->NAME );
fprintf( stdout, " ABL :" );
loc_beh_viewablexprln( ScanOut->ABL );
fprintf( stdout, "<-- beout_list\n" );
}
}
void beh_viewbepor( ScanPort )
bepor_list *ScanPort;
{
if ( ScanPort != (bepor_list *)0 )
{
fprintf( stdout, "--> bepor_list\n" );
fprintf( stdout, " NAME : %s\n", ScanPort->NAME );
fprintf( stdout, " DIR : %c\n", ScanPort->DIRECTION );
fprintf( stdout, " TYPE : %c\n", (int)ScanPort->TYPE );
fprintf( stdout, "<-- bepor_list\n" );
}
}
void beh_viewbefig( ScanFigure )
befig_list *ScanFigure;
{
bepor_list *ScanPort;
beaux_list *ScanAux;
bebus_list *ScanBus;
bebux_list *ScanBux;
bereg_list *ScanReg;
beout_list *ScanOut;
berin_list *ScanRin;
if ( ScanFigure != (befig_list *)0 )
{
fprintf( stdout, "--> befig_list\n" );
fprintf( stdout, " NAME : %s\n", ScanFigure->NAME );
fprintf( stdout, " BEPOR:\n" );
for ( ScanPort = ScanFigure->BEPOR;
ScanPort != (bepor_list *)0;
ScanPort = ScanPort->NEXT )
{
beh_viewbepor( ScanPort );
}
fprintf( stdout, " BERIN:\n" );
for ( ScanRin = ScanFigure->BERIN;
ScanRin != (berin_list *)0;
ScanRin = ScanRin->NEXT )
{
beh_viewberin( ScanRin );
}
fprintf( stdout, " BEAUX:\n" );
for ( ScanAux = ScanFigure->BEAUX;
ScanAux != (beaux_list *)0;
ScanAux = ScanAux->NEXT )
{
beh_viewbeaux( ScanAux );
}
fprintf( stdout, " BEBUS:\n" );
for ( ScanBus = ScanFigure->BEBUS;
ScanBus != (bebus_list *)0;
ScanBus = ScanBus->NEXT )
{
beh_viewbebus( ScanBus );
}
fprintf( stdout, " BEBUX:\n" );
for ( ScanBux = ScanFigure->BEBUX;
ScanBux != (bebux_list *)0;
ScanBux = ScanBux->NEXT )
{
beh_viewbebux( ScanBux );
}
fprintf( stdout, " BEREG:\n" );
for ( ScanReg = ScanFigure->BEREG;
ScanReg != (bereg_list *)0;
ScanReg = ScanReg->NEXT )
{
beh_viewbereg( ScanReg );
}
fprintf( stdout, " BEOUT:\n" );
for ( ScanOut = ScanFigure->BEOUT;
ScanOut != (beout_list *)0;
ScanOut = ScanOut->NEXT )
{
beh_viewbeout( ScanOut );
}
fprintf( stdout, "<-- befig_list\n" );
}
}

View File

@ -1,230 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Beh |
| |
| File : main.c |
| |
| Date : 08.02.95 |
| |
| Author : Jacomme Ludovic |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Include Files |
| |
\------------------------------------------------------------*/
# include <stdio.h>
# include <string.h>
# include MUT_H
# include AUT_H
# include ABL_H
# include BDD_H
# include ABE_H
# include ABV_H
# include ABT_H
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Usage |
| |
\------------------------------------------------------------*/
void BehUsage()
{
fprintf( stderr, "\t\tabetest [Options] Input_name [Output_name]\n\n" );
fprintf( stdout, "\t\tOptions : -V Sets Verbose mode on\n" );
fprintf( stdout, "\t\tOptions : -E Erases auxialiry signals\n" );
fprintf( stdout, "\t\tOptions : -D Displays beh figure\n" );
fprintf( stdout, "\t\tOptions : -B Makes BDD nodes\n" );
fprintf( stdout, "\t\tOptions : -S Saves beh figure \n" );
fprintf( stdout, "\n" );
exit( 1 );
}
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| main |
| |
\------------------------------------------------------------*/
int main( argc, argv )
int argc;
char *argv[];
{
befig_list *BehFigure;
char *InputFileName;
char *OutputFileName;
int Number;
int Index;
char Option;
int FlagVerbose = 0;
int FlagSave = 0;
int FlagDisplay = 0;
int FlagErase = 0;
int FlagBdd = 0;
mbkenv();
autenv();
ablenv();
bddenv();
InputFileName = (char *)0;
OutputFileName = (char *)0;
if ( argc < 2 ) BehUsage();
for ( Number = 1; Number < argc; Number++ )
{
if ( argv[ Number ][ 0 ] == '-' )
{
for ( Index = 1; argv[ Number ][ Index ] != '\0'; Index++ )
{
Option = argv[ Number ][ Index ];
switch ( Option )
{
case 'E' : FlagErase = 1;
break;
case 'B' : FlagBdd = 1;
break;
case 'D' : FlagDisplay = 1;
break;
case 'V' : FlagVerbose = 1;
break;
case 'S' : FlagSave = 1;
break;
default : BehUsage();
}
}
}
else
if ( InputFileName == (char *)0 ) InputFileName = argv[ Number ];
else
if ( OutputFileName == (char *)0 ) OutputFileName = argv[ Number ];
else
BehUsage();
}
if ( InputFileName == (char *)0 ) BehUsage();
if ( OutputFileName == (char *)0 ) OutputFileName = InputFileName;
if ( FlagVerbose )
{
fprintf( stdout, "vhdlloadbefig %s\n", InputFileName );
}
BehFigure = vhdlloadbefig( (befig_list *)0, InputFileName, 3 );
if ( FlagVerbose )
{
fprintf( stdout, "Figure %s loaded\n", BehFigure->NAME );
}
/*\
if ( FlagBdd )
{
BddSystem = createbddsystem( 100, 1000, 100, 5000000 );
reorderbddsystemdynamic( BddSystem, reorderbddsystemsimple, 100000, 100 );
if ( FlagVerbose )
{
fprintf( stdout, "Makes BDD for %s\n", BehFigure->NAME );
}
BehFigure->BEDLY = (beaux_list *)0;
beh_makbdd( BehFigure, ! FlagErase, 0 );
testbddcircuit( (bddcircuit *)0 );
destroybddcircuit( BehFigure->CIRCUI );
destroybddsystem( BddSystem );
}
else
if ( FlagErase )
{
if ( FlagVerbose )
{
fprintf( stdout, "Erases auxialiary signals in %s\n", BehFigure->NAME );
}
beh_delauxabl( BehFigure );
}
\*/
if ( FlagSave )
{
BehFigure->NAME = namealloc( OutputFileName );
if ( FlagVerbose )
{
fprintf( stdout, "vhdlsavebefig %s\n", BehFigure->NAME );
}
vhdlsavebefig ( BehFigure, 0 );
if ( FlagVerbose )
{
fprintf( stdout, "Figure %s saved\n", BehFigure->NAME );
}
}
if ( FlagDisplay )
{
beh_viewbefig( BehFigure );
}
beh_frebefig( BehFigure );
return( 0 );
}

View File

@ -1 +0,0 @@
SUBDIRS = src

View File

@ -1,45 +0,0 @@
dnl
/*
dnl This file is part of the Alliance CAD System
dnl Copyright (C) Laboratoire LIP6 - Département ASIM
dnl Universite Pierre et Marie Curie
dnl
dnl Home page : http://www-asim.lip6.fr/alliance/
dnl E-mail support : mailto:alliance-support@asim.lip6.fr
dnl
dnl This library is free software; you can redistribute it and/or modify it
dnl under the terms of the GNU Library General Public License as published
dnl by the Free Software Foundation; either version 2 of the License, or (at
dnl your option) any later version.
dnl
dnl Alliance VLSI CAD System is distributed in the hope that it will be
dnl useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General
dnl Public License for more details.
dnl
dnl You should have received a copy of the GNU General Public License along
dnl with the GNU C Library; see the file COPYING. If not, write to the Free
dnl Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
dnl
dnl Purpose : Auto stuffing Alliance
dnl Almost ten years since I wrote this stuff, I just can't
dnl believe it
dnl Date : 01/02/2002
dnl Author : Frederic Petrot <Frederic.Petrot@lip6.fr>
dnl $Id: configure.in,v 1.1 2002/03/20 14:05:32 ludo Exp $
dnl
dnl
AC_INIT(src/abt.h)
AM_INIT_AUTOMAKE(abt, 2.1)
AC_PROG_INSTALL
AC_PROG_CC
AC_HEADER_STDC
AC_C_CONST
AC_PROG_RANLIB
AM_ALLIANCE
AC_OUTPUT([
Makefile
src/Makefile
])

View File

@ -1,8 +0,0 @@
CFLAGS = @CFLAGS@ \
-DALLIANCE_TOP=\"${ALLIANCE_TOP}\"
lib_LIBRARIES = libAbt.a
include_HEADERS = abt.h
libAbt_a_SOURCES = \
abt.h bhl_depend.c bhl_freabl.c bhl_makgex.c \
bhl_delaux.c bhl_error.c bhl_makbdd.c bhl_orderbdd.c \
bhl_delaux.h bhl_error.h bhl_makbdd.h bhl_orderbdd.h

View File

@ -1,60 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : bhl200.h */
/* date : Feb 15 1995 */
/* version : v200 */
/* author : Pirouz BAZARGAN SABET */
/* contents : defines and structure definitions used in BHL library */
/* */
/* ###--------------------------------------------------------------### */
#ifndef ABT_BHLDEF
#define ABT_BHLDEF
/* ###------------------------------------------------------### */
/* defines */
/* ###------------------------------------------------------### */
/* ###------------------------------------------------------### */
/* structure definitions */
/* ###------------------------------------------------------### */
/* ###------------------------------------------------------### */
/* functions */
/* ###------------------------------------------------------### */
extern void beh_debug ();
extern void beh_makbdd ();
extern void beh_makgex ();
extern void beh_freabl ();
extern struct chain *beh_depend ();
extern void beh_delauxabl ();
#endif

View File

@ -1,404 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Bhl |
| |
| File : bhl_delaux.c |
| |
| Date : 01.02.95 |
| |
| Author : Jacomme Ludovic |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Include Files |
| |
\------------------------------------------------------------*/
# include "mut.h"
# include "aut.h"
# include "abl.h"
# include "abe.h"
# include "abt.h"
# include <stdio.h>
# include "bhl_error.h"
# include "bhl_delaux.h"
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
static chain_list *BhlHeadName = (chain_list *)0;
static befig_list *BhlBehFigure = (befig_list *)0;
static char *BhlDelayedName = (char *)0;
static authtable *BhlHashTableInput = (authtable *)0;
static authtable *BhlHashTableAux = (authtable *)0;
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Bhl DelAux Expr |
| |
\------------------------------------------------------------*/
static chain_list *bhl_delauxexpr( Expr )
chain_list *Expr;
{
char *AtomValue;
chain_list *FirstExpr;
beaux_list *ScanAux;
chain_list *ScanChain;
authelem *Element;
long Oper;
FirstExpr = Expr;
if ( Expr == (chain_list *)0 )
{
bhlerror( BHL_EXPR_NULL_ERROR, (char *)0 );
}
if ( ABL_ATOM( Expr ) )
{
AtomValue = ABL_ATOM_VALUE( Expr );
if ( ( AtomValue == ABL_ATOM_NAME_ONE ) ||
( AtomValue == ABL_ATOM_NAME_ZERO ) ||
( AtomValue == ABL_ATOM_NAME_DC ) )
{
return( FirstExpr );
}
Element = searchauthelem( BhlHashTableInput, AtomValue );
if ( Element != (authelem *)0 )
{
return( FirstExpr );
}
for ( ScanAux = BhlBehFigure->BEAUX;
ScanAux != (beaux_list *)0;
ScanAux = ScanAux->NEXT )
{
if ( ScanAux->NAME == AtomValue ) break;
}
if ( ScanAux == (beaux_list *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
for ( ScanChain = BhlHeadName;
ScanChain != (chain_list *)0;
ScanChain = ScanChain->NEXT )
{
if ( ScanChain->DATA == AtomValue )
{
bhlerror( BHL_EXPR_LOOP_ERROR, AtomValue );
}
}
Element = searchauthelem( BhlHashTableAux, AtomValue );
if ( Element == (authelem *)0 )
{
BhlHeadName = addchain( BhlHeadName, AtomValue );
ScanAux->ABL = bhl_delauxexpr( ScanAux->ABL );
BhlHeadName = delchain( BhlHeadName, BhlHeadName );
addauthelem( BhlHashTableAux, AtomValue, (long)ScanAux->ABL );
}
freeablexpr( FirstExpr );
return( dupablexpr( ScanAux->ABL ) );
}
Oper = ABL_OPER( Expr );
Expr = ABL_CDR( Expr );
if ( Oper == ABL_NOT )
{
if ( ABL_CDR( Expr ) != (chain_list *)0 )
{
bhlerror( BHL_OPERATOR_ERROR, Oper );
}
ABL_CAR( Expr ) = bhl_delauxexpr( ABL_CAR( Expr ) );
return( FirstExpr );
}
if ( Oper == ABL_STABLE )
{
Expr = ABL_CAR( Expr );
if ( ! ABL_ATOM( Expr ) )
{
bhlerror( BHL_ILLEGAL_STABLE_ERROR, (char *)0 );
}
AtomValue = ABL_ATOM_VALUE( Expr );
Element = searchauthelem( BhlHashTableInput, AtomValue );
if ( Element == (authelem *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
BhlDelayedName = autresizeblock( BhlDelayedName, 0, strlen( AtomValue ) + 9 );
sprintf( BhlDelayedName, "%s'delayed", AtomValue );
AtomValue = namealloc( BhlDelayedName );
Element = searchauthelem( BhlHashTableInput, AtomValue );
if ( Element == (authelem *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
return( FirstExpr );
}
if ( ( isablunaryoper( Oper ) ) ||
( ABL_CDR( Expr ) == (chain_list *)0 ) )
{
bhlerror( BHL_OPERATOR_ERROR, Oper );
}
ABL_CAR( Expr ) = bhl_delauxexpr( ABL_CAR( Expr ) );
while ( ( Expr = ABL_CDR( Expr ) ) != (chain_list *)0 )
{
ABL_CAR( Expr ) = bhl_delauxexpr( ABL_CAR( Expr ) );
}
return( FirstExpr );
}
/*------------------------------------------------------------\
| |
| Beh DelAux Bdd |
| |
\------------------------------------------------------------*/
static chain_list *bhl_delauxabl( Name, Expr )
char *Name;
chain_list *Expr;
{
if ( Name != (char *)0 )
{
BhlHeadName = addchain( BhlHeadName, Name );
}
Expr = bhl_delauxexpr( Expr );
if ( Name != (char *)0 )
{
BhlHeadName = delchain( BhlHeadName, BhlHeadName );
}
return( Expr );
}
/*------------------------------------------------------------\
| |
| Beh Del Aux Abl |
| |
\------------------------------------------------------------*/
void beh_delauxabl( BehFigure )
befig_list *BehFigure;
{
struct berin *BehRin;
struct beaux *BehAux;
struct beaux *BehDly;
struct bemsg *BehMsg;
struct beout *BehOut;
struct bebus *BehBus;
struct bebux *BehBux;
struct bereg *BehReg;
struct biabl *BiAbl;
authelem *Element;
long NumberIn;
long NumberAux;
BhlBehFigure = BehFigure;
BhlHeadName = (chain_list *)0;
NumberIn = 1;
NumberAux = 1;
BehAux = BehFigure->BEAUX;
while ( BehAux != NULL )
{
BehFigure->BERIN = beh_rmvberin( BehFigure->BERIN, BehAux->NAME );
NumberAux = NumberAux + 1;
BehAux = BehAux->NEXT;
}
BehRin = BehFigure->BERIN;
while ( BehRin != NULL )
{
NumberIn = NumberIn + 1;
BehRin = BehRin->NEXT;
}
BhlHashTableInput = createauthtable( NumberIn << 1 );
BhlHashTableAux = createauthtable( NumberAux << 1 );
BehRin = BehFigure->BERIN;
while ( BehRin != NULL )
{
addauthelem( BhlHashTableInput, BehRin->NAME, 0 );
BehRin = BehRin->NEXT;
}
BehAux = BehFigure->BEAUX;
while ( BehAux != NULL )
{
Element = searchauthelem( BhlHashTableAux, BehAux->NAME );
if ( Element == (authelem *)0 )
{
BehAux->ABL = bhl_delauxabl( BehAux->NAME, BehAux->ABL );
addauthelem( BhlHashTableAux, BehAux->NAME, (long)BehAux->ABL );
}
BehAux = BehAux->NEXT;
}
BehDly = BehFigure->BEDLY;
while ( BehDly != NULL )
{
BehDly->ABL = bhl_delauxabl( BehDly->NAME, BehDly->ABL );
BehDly = BehDly->NEXT;
}
BehMsg = BehFigure->BEMSG;
while ( BehMsg != NULL )
{
BehMsg->ABL = bhl_delauxabl( (char *)0, BehMsg->ABL );
BehMsg = BehMsg->NEXT;
}
BehOut = BehFigure->BEOUT;
while ( BehOut != NULL )
{
BehOut->ABL = bhl_delauxabl( BehOut->NAME, BehOut->ABL );
BehOut = BehOut->NEXT;
}
BehBus = BehFigure->BEBUS;
while ( BehBus != NULL )
{
BiAbl = BehBus->BIABL;
while ( BiAbl != NULL )
{
BiAbl->CNDABL = bhl_delauxabl( (char *)0 , BiAbl->CNDABL );
BiAbl->VALABL = bhl_delauxabl( BehBus->NAME, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
}
BehBus = BehBus->NEXT;
}
BehBux = BehFigure->BEBUX;
while ( BehBux != NULL )
{
BiAbl = BehBux->BIABL;
while (BiAbl != NULL)
{
BiAbl->CNDABL = bhl_delauxabl( (char *)0, BiAbl->CNDABL );
BiAbl->VALABL = bhl_delauxabl( (char *)0, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
}
BehBux = BehBux->NEXT;
}
BehReg = BehFigure->BEREG;
while ( BehReg != NULL )
{
BiAbl = BehReg->BIABL;
while (BiAbl != NULL)
{
BiAbl->CNDABL = bhl_delauxabl( (char *)0, BiAbl->CNDABL );
BiAbl->VALABL = bhl_delauxabl( (char *)0, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
}
BehReg = BehReg->NEXT;
}
destroyauthtable( BhlHashTableInput );
destroyauthtable( BhlHashTableAux );
beh_frebeaux( BehFigure->BEAUX );
BehFigure->BEAUX = (beaux_list *)NULL;
}

View File

@ -1,67 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Bhl |
| |
| File : bhl_makbdd.h |
| |
| Date : 01.02.95 |
| |
| Author : Pirouz Bazargan Sabet |
| |
| Modified by Jacomme Ludovic |
| |
\------------------------------------------------------------*/
# ifndef BHL_MAKBDD_H
# define BHL_MAKBDD_H
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
extern void beh_delauxabl();
# endif

View File

@ -1,399 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_depend.c */
/* date : Apr 15 1995 */
/* version : v108 */
/* authors : Pirouz BAZARGAN SABET */
/* description : high level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include "mut.h"
#include "aut.h"
#include "abl.h"
#include "bdd.h"
#include "abe.h"
static ht *rin_list = NULL;
/* ###--------------------------------------------------------------### */
/* function : beh_terminals */
/* description : find the list of terminals for an expression */
/* called func. : beh_terminals, namealloc, addchain */
/* ###--------------------------------------------------------------### */
static struct chain *beh_terminals (pt_exp)
struct chain *pt_exp;
{
struct chain *res_chain = NULL;
struct chain *tmp_chain = NULL;
struct chain *pt_opr ;
char *name ;
char buffer [128];
static char *str_z = NULL;
static char *str_o = NULL;
static char *str_d = NULL;
if (str_z == NULL)
{
str_z = namealloc ("'0'");
str_o = namealloc ("'1'");
str_d = namealloc ("'d'");
}
if (pt_exp->NEXT != NULL)
{
if (((int) ((struct chain *) pt_exp->DATA)->DATA) == ABL_STABLE)
{
name = ((struct chain *) pt_exp->NEXT->DATA)->DATA;
res_chain = addchain (NULL, name);
sprintf (buffer, "%s'delayed", name);
name = namealloc (buffer);
res_chain = addchain (res_chain, name);
}
else
{
pt_opr = pt_exp->NEXT;
while (pt_opr != NULL)
{
tmp_chain = beh_terminals (pt_opr->DATA);
res_chain = append (res_chain, tmp_chain);
pt_opr = pt_opr->NEXT;
}
}
}
else
{
if ((pt_exp->DATA != str_z) && (pt_exp->DATA != str_o) &&
(pt_exp->DATA != str_d))
{
res_chain = addchain (NULL, pt_exp->DATA);
}
}
return (res_chain);
}
/* ###--------------------------------------------------------------### */
/* function : beh_expdepend */
/* description : find dependencies for an expression */
/* called func. : beh_terminals, gethtitem */
/* ###--------------------------------------------------------------### */
static struct chain *beh_expdepend (pt_fig, pt_exp)
struct befig *pt_fig;
struct chain *pt_exp;
{
struct chain *res_chain = NULL;
int value ;
if (pt_fig->ERRFLG == 0)
{
/* ###------------------------------------------------------### */
/* if there is no error in the current figure, find the list */
/* of terminals for the expression */
/* ###------------------------------------------------------### */
res_chain = beh_terminals (pt_exp);
/* ###------------------------------------------------------### */
/* scan the list of terminals to replace terminal names by */
/* pointer on the corresponding primary input (berin). */
/* ###------------------------------------------------------### */
while (res_chain != NULL)
{
value = gethtitem (rin_list, res_chain->DATA);
if (value == EMPTYHT)
beh_error (3, res_chain->DATA);
else
res_chain->DATA = (void *) value ;
res_chain = res_chain->NEXT;
}
}
return (res_chain);
}
/* ###--------------------------------------------------------------### */
/* function : beh_depend */
/* description : find dependencies between signals for a behavioural */
/* description. */
/* called func. : beh_expdepend, addht, addhtitem, addchain, freechain, */
/* append, delhtitem */
/* ###--------------------------------------------------------------### */
void beh_depend (pt_fig)
struct befig *pt_fig;
{
struct chain *res_chain = NULL;
struct beaux *pt_aux;
struct beaux *pt_dly;
struct bebux *pt_bux;
struct bereg *pt_reg;
struct bemsg *pt_msg;
struct berin *pt_rin;
struct beout *pt_out;
struct bebus *pt_bus;
struct biabl *pt_biabl;
unsigned int count = 0;
/* ###------------------------------------------------------### */
/* if there is no error in the current figure ... */
/* ###------------------------------------------------------### */
if ((pt_fig != NULL) && (pt_fig->ERRFLG == 0))
{
/* ###------------------------------------------------------### */
/* initialize a hash table with inputs */
/* ###------------------------------------------------------### */
pt_rin = pt_fig->BERIN;
while (pt_rin != NULL)
{
count++;
pt_rin = pt_rin->NEXT;
}
pt_rin = pt_fig->BERIN;
if (pt_rin != NULL)
rin_list = addht (count);
while (pt_rin != NULL)
{
addhtitem (rin_list, pt_rin->NAME, (long)pt_rin);
pt_rin = pt_rin->NEXT;
}
/* ###------------------------------------------------------### */
/* process simple internal signals. */
/* check that the signal does not already belong to the */
/* dependency list before adding it to the list */
/* ###------------------------------------------------------### */
pt_aux = pt_fig->BEAUX;
while (pt_aux != NULL)
{
res_chain = beh_expdepend (pt_fig, pt_aux->ABL);
while (res_chain != NULL)
{
pt_rin = (struct berin *) res_chain->DATA;
if ((pt_rin->AUX_REF == NULL) || (pt_rin->AUX_REF->DATA != pt_aux))
pt_rin->AUX_REF = addchain (pt_rin->AUX_REF, pt_aux);
res_chain = res_chain->NEXT;
}
freechain (res_chain);
pt_aux = pt_aux->NEXT;
}
/* ###------------------------------------------------------### */
/* process delayed internal signals */
/* check that the signal does not already belong to the */
/* dependency list before adding it to the list */
/* ###------------------------------------------------------### */
pt_dly = pt_fig->BEDLY;
while (pt_dly != NULL)
{
res_chain = beh_expdepend (pt_fig, pt_dly->ABL);
while (res_chain != NULL)
{
pt_rin = (struct berin *) res_chain->DATA;
if ((pt_rin->DLY_REF == NULL) || (pt_rin->DLY_REF->DATA != pt_dly))
pt_rin->DLY_REF = addchain (pt_rin->DLY_REF, pt_dly);
res_chain = res_chain->NEXT;
}
freechain (res_chain);
pt_dly = pt_dly->NEXT;
}
/* ###------------------------------------------------------### */
/* process simple ouputs. */
/* check that the signal does not already belong to the */
/* dependency list before adding it to the list */
/* ###------------------------------------------------------### */
pt_out = pt_fig->BEOUT;
while (pt_out != NULL)
{
res_chain = beh_expdepend (pt_fig, pt_out->ABL);
while (res_chain != NULL)
{
pt_rin = (struct berin *) res_chain->DATA;
if ((pt_rin->OUT_REF == NULL) || (pt_rin->OUT_REF->DATA != pt_out))
pt_rin->OUT_REF = addchain (pt_rin->OUT_REF, pt_out);
res_chain = res_chain->NEXT;
}
freechain (res_chain);
pt_out = pt_out->NEXT;
}
/* ###------------------------------------------------------### */
/* process bussed ouputs. */
/* check that the signal does not already belong to the */
/* dependency list before adding it to the list */
/* ###------------------------------------------------------### */
res_chain = NULL;
pt_bus = pt_fig->BEBUS;
while (pt_bus != NULL)
{
pt_biabl = pt_bus->BIABL;
while (pt_biabl != NULL)
{
res_chain = append (res_chain, beh_expdepend (pt_fig,pt_biabl->VALABL));
res_chain = append (res_chain, beh_expdepend (pt_fig,pt_biabl->CNDABL));
pt_biabl = pt_biabl->NEXT;
}
while (res_chain != NULL)
{
pt_rin = (struct berin *) res_chain->DATA;
if ((pt_rin->BUS_REF == NULL) || (pt_rin->BUS_REF->DATA != pt_bus))
pt_rin->BUS_REF = addchain (pt_rin->BUS_REF, pt_bus);
res_chain = res_chain->NEXT;
}
freechain (res_chain);
pt_bus = pt_bus->NEXT;
}
/* ###------------------------------------------------------### */
/* process bussed internal signals. */
/* check that the signal does not already belong to the */
/* dependency list before adding it to the list */
/* ###------------------------------------------------------### */
res_chain = NULL;
pt_bux = pt_fig->BEBUX;
while (pt_bux != NULL)
{
pt_biabl = pt_bux->BIABL;
while (pt_biabl != NULL)
{
res_chain = append (res_chain, beh_expdepend (pt_fig,pt_biabl->VALABL));
res_chain = append (res_chain, beh_expdepend (pt_fig,pt_biabl->CNDABL));
pt_biabl = pt_biabl->NEXT;
}
while (res_chain != NULL)
{
pt_rin = (struct berin *) res_chain->DATA;
if ((pt_rin->BUX_REF == NULL) || (pt_rin->BUX_REF->DATA != pt_bux))
pt_rin->BUX_REF = addchain (pt_rin->BUX_REF, pt_bux);
res_chain = res_chain->NEXT;
}
freechain (res_chain);
pt_bux = pt_bux->NEXT;
}
/* ###------------------------------------------------------### */
/* process internal registers. */
/* check that the signal does not already belong to the */
/* dependency list before adding it to the list */
/* ###------------------------------------------------------### */
res_chain = NULL;
pt_reg = pt_fig->BEREG;
while (pt_reg != NULL)
{
pt_biabl = pt_reg->BIABL;
while (pt_biabl != NULL)
{
res_chain = append (res_chain, beh_expdepend (pt_fig,pt_biabl->VALABL));
res_chain = append (res_chain, beh_expdepend (pt_fig,pt_biabl->CNDABL));
pt_biabl = pt_biabl->NEXT;
}
while (res_chain != NULL)
{
pt_rin = (struct berin *) res_chain->DATA;
if ((pt_rin->REG_REF == NULL) || (pt_rin->REG_REF->DATA != pt_reg))
pt_rin->REG_REF = addchain (pt_rin->REG_REF, pt_reg);
res_chain = res_chain->NEXT;
}
freechain (res_chain);
pt_reg = pt_reg->NEXT;
}
/* ###------------------------------------------------------### */
/* process assert statements. */
/* check that the statement does not already belong to the */
/* dependency list before adding it to the list */
/* ###------------------------------------------------------### */
res_chain = NULL;
pt_msg = pt_fig->BEMSG;
while (pt_msg != NULL)
{
res_chain = beh_expdepend (pt_fig, pt_msg->ABL);
while (res_chain != NULL)
{
pt_rin = (struct berin *) res_chain->DATA;
if ((pt_rin->MSG_REF == NULL) || (pt_rin->MSG_REF->DATA != pt_msg))
pt_rin->MSG_REF = addchain (pt_rin->MSG_REF, pt_msg);
res_chain = res_chain->NEXT;
}
freechain (res_chain);
pt_msg = pt_msg->NEXT;
}
/* ###------------------------------------------------------### */
/* release hash tables and lists that they contain */
/* ###------------------------------------------------------### */
if (pt_fig->BERIN != NULL)
delht(rin_list);
}
}

View File

@ -1,131 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Bhl |
| |
| File : Bhl Errors |
| |
| Authors : Jacomme Ludovic |
| |
| Date : 01.02.95 |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Include Files |
| |
\------------------------------------------------------------*/
# include <stdio.h>
# include <string.h>
# include "mut.h"
# include "aut.h"
# include "abl.h"
# include "bhl_error.h"
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
void bhl_error( Error, Text, File, Line )
int Error;
char *Text;
char *File;
int Line;
{
char *Name;
Name = strdup( File );
Name[ strlen( File ) - 1 ] = '\0';
fprintf( stderr, "%s%d ", Name, Line );
switch( Error )
{
case BHL_EXPR_NULL_ERROR :
fprintf( stderr, "null expression !\n" );
break;
case BHL_EXPR_LOOP_ERROR :
fprintf( stderr, "combinatory loop on %s !\n", Text );
break;
case BHL_UNKNOWN_ATOM_ERROR :
fprintf( stderr, "unknown atom %s !\n", Text );
break;
case BHL_SIMPLIFY_ERROR :
fprintf( stderr, "cannot simplify internal signals\n" );
break;
case BHL_ILLEGAL_STABLE_ERROR :
fprintf( stderr, "illegal use of STABLE operator\n" );
break;
case BHL_OPERATOR_ERROR :
fprintf( stderr, "illegal use of operator %ld\n", (long)Text );
break;
default :
fprintf( stderr, "unknown internal error %d !\n", Error );
}
autexit( 1 );
}

View File

@ -1,81 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Bhl |
| |
| File : Bhl Errors |
| |
| Authors : Jacomme Ludovic |
| |
| Date : 01.02.95 |
| |
\------------------------------------------------------------*/
# ifndef BHL_ERROR_H
# define BHL_ERROR_H
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
# define BHL_EXPR_NULL_ERROR 0
# define BHL_EXPR_LOOP_ERROR 1
# define BHL_UNKNOWN_ATOM_ERROR 2
# define BHL_SIMPLIFY_ERROR 3
# define BHL_ILLEGAL_STABLE_ERROR 4
# define BHL_OPERATOR_ERROR 5
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Macros |
| |
\------------------------------------------------------------*/
# define bhlerror( E, V ) (bhl_error( (E), (V), __FILE__, __LINE__ ))
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
extern void bhl_error();
# endif

View File

@ -1,205 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_freabl.c */
/* date : Sep 9 1993 */
/* version : v106 */
/* authors : Pirouz BAZARGAN SABET */
/* description : high level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include "mut.h"
#include "aut.h"
#include "abl.h"
#include "bdd.h"
#include "abe.h"
/* ###--------------------------------------------------------------### */
/* function : beh_freabl */
/* description : free all ABLs in BEFIG structure */
/* called func. : freeablexpr */
/* ###--------------------------------------------------------------### */
void beh_freabl (ptr_befig)
struct befig *ptr_befig; /* pointer on current BEFIG */
{
struct beaux *ptr_beaux;
struct bemsg *ptr_bemsg;
struct beout *ptr_beout;
struct bebus *ptr_bebus;
struct biabl *ptr_biabl;
struct bebux *ptr_bebux;
struct bereg *ptr_bereg;
/* ###------------------------------------------------------### */
/* check that the unit exists */
/* ###------------------------------------------------------### */
if (ptr_befig != NULL)
{
/* ###------------------------------------------------------### */
/* release expression in simple internal signals' list */
/* ###------------------------------------------------------### */
ptr_beaux = ptr_befig->BEAUX;
while (ptr_beaux != NULL)
{
if (ptr_beaux->ABL != NULL)
{
freeablexpr (ptr_beaux->ABL);
ptr_beaux->ABL = NULL;
}
ptr_beaux = ptr_beaux->NEXT;
}
/* ###------------------------------------------------------### */
/* release expression in delayed signals' list */
/* ###------------------------------------------------------### */
ptr_beaux = ptr_befig->BEDLY;
while (ptr_beaux != NULL)
{
if (ptr_beaux->ABL != NULL)
{
freeablexpr (ptr_beaux->ABL);
ptr_beaux->ABL = NULL;
}
ptr_beaux = ptr_beaux->NEXT;
}
/* ###------------------------------------------------------### */
/* release expression in assertions' list */
/* ###------------------------------------------------------### */
ptr_bemsg = ptr_befig->BEMSG;
while (ptr_bemsg != NULL)
{
if (ptr_bemsg->ABL != NULL)
{
freeablexpr (ptr_bemsg->ABL);
ptr_bemsg->ABL = NULL;
}
ptr_bemsg = ptr_bemsg->NEXT;
}
/* ###------------------------------------------------------### */
/* release expression in simple output ports' list */
/* ###------------------------------------------------------### */
ptr_beout = ptr_befig->BEOUT;
while (ptr_beout != NULL)
{
if (ptr_beout->ABL != NULL)
{
freeablexpr (ptr_beout->ABL);
ptr_beout->ABL = NULL;
}
ptr_beout = ptr_beout->NEXT;
}
/* ###------------------------------------------------------### */
/* release expression in bussed output ports' list */
/* ###------------------------------------------------------### */
ptr_bebus = ptr_befig->BEBUS;
while (ptr_bebus != NULL)
{
ptr_biabl = ptr_bebus->BIABL;
while (ptr_biabl != NULL)
{
if (ptr_biabl->CNDABL != NULL)
{
freeablexpr(ptr_biabl->CNDABL);
ptr_biabl->CNDABL = NULL;
}
if (ptr_biabl->VALABL != NULL)
{
freeablexpr(ptr_biabl->VALABL);
ptr_biabl->VALABL = NULL;
}
ptr_biabl = ptr_biabl->NEXT;
}
ptr_bebus = ptr_bebus->NEXT;
}
/* ###------------------------------------------------------### */
/* release expression in bussed internal signals' list */
/* ###------------------------------------------------------### */
ptr_bebux = ptr_befig->BEBUX;
while (ptr_bebux != NULL)
{
ptr_biabl = ptr_bebux->BIABL;
while (ptr_biabl != NULL)
{
if (ptr_biabl->CNDABL != NULL)
{
freeablexpr (ptr_biabl->CNDABL);
ptr_biabl->CNDABL = NULL;
}
if (ptr_biabl->VALABL != NULL)
{
freeablexpr (ptr_biabl->VALABL);
ptr_biabl->VALABL = NULL;
}
ptr_biabl = ptr_biabl->NEXT;
}
ptr_bebux = ptr_bebux->NEXT;
}
/* ###------------------------------------------------------### */
/* release expression in internal registers' list */
/* ###------------------------------------------------------### */
ptr_bereg = ptr_befig->BEREG;
while (ptr_bereg != NULL)
{
ptr_biabl = ptr_bereg->BIABL;
while (ptr_biabl != NULL)
{
if ( ptr_biabl->CNDABL != NULL )
{
freeablexpr(ptr_biabl->CNDABL);
ptr_biabl->CNDABL = NULL;
}
if ( ptr_biabl->VALABL != NULL )
{
freeablexpr(ptr_biabl->VALABL);
ptr_biabl->VALABL = NULL;
}
ptr_biabl = ptr_biabl->NEXT;
}
ptr_bereg = ptr_bereg->NEXT;
}
}
}

View File

@ -1,494 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Bhl |
| |
| File : bhl_makbdd.c |
| |
| Date : 01.02.95 |
| |
| Author : Pirouz Bazargan Sabet |
| |
| Modified by Jacomme Ludovic |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Include Files |
| |
\------------------------------------------------------------*/
# include "mut.h"
# include "aut.h"
# include "abl.h"
# include "bdd.h"
# include "abe.h"
# include "abt.h"
# include <stdio.h>
# include "bhl_error.h"
# include "bhl_makbdd.h"
# include "bhl_orderbdd.h"
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
static chain_list *BhlHeadName = (chain_list *)0;
static befig_list *BhlBehFigure = (befig_list *)0;
static char *BhlDelayedName = (char *)0;
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Bhl Abl 2 Bdd |
| |
\------------------------------------------------------------*/
static bddnode *bhl_expr2bdd( Expr )
chain_list *Expr;
{
bddnode *BddNode;
bddnode *BddFirst;
char *AtomValue;
beaux_list *ScanAux;
chain_list *ScanChain;
long Oper;
int Negative;
if ( Expr == (chain_list *)0 )
{
bhlerror( BHL_EXPR_NULL_ERROR, (char *)0 );
}
if ( ABL_ATOM( Expr ) )
{
AtomValue = ABL_ATOM_VALUE( Expr );
if ( AtomValue == ABL_ATOM_NAME_ONE )
{
return( BddLocalSystem->ONE );
}
if ( ( AtomValue == ABL_ATOM_NAME_ZERO ) ||
( AtomValue == ABL_ATOM_NAME_DC ) )
{
return( BddLocalSystem->ZERO );
}
BddNode = searchbddcircuitin( (bddcircuit *)0, AtomValue );
if ( BddNode != (bddnode *)0 )
{
return( incbddrefext( BddNode ) );
}
for ( ScanAux = BhlBehFigure->BEAUX;
ScanAux != (beaux_list *)0;
ScanAux = ScanAux->NEXT )
{
if ( ScanAux->NAME == AtomValue ) break;
}
if ( ScanAux == (beaux_list *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
for ( ScanChain = BhlHeadName;
ScanChain != (chain_list *)0;
ScanChain = ScanChain->NEXT )
{
if ( ScanChain->DATA == AtomValue )
{
bhlerror( BHL_EXPR_LOOP_ERROR, AtomValue );
}
}
if ( ScanAux->NODE == (void *)0 )
{
BhlHeadName = addchain( BhlHeadName, AtomValue );
ScanAux->NODE = bhl_expr2bdd( ScanAux->ABL );
BhlHeadName = delchain( BhlHeadName, BhlHeadName );
}
return( incbddrefext( ScanAux->NODE ) );
}
Oper = ABL_OPER( Expr );
Expr = ABL_CDR( Expr );
if ( Oper == ABL_NOT )
{
if ( ABL_CDR( Expr ) != (chain_list *)0 )
{
bhlerror( BHL_OPERATOR_ERROR, Oper );
}
BddFirst = bhl_expr2bdd( ABL_CAR( Expr ) );
BddNode = applybddnodenot( (bddsystem *)0, decbddrefext( BddFirst ) );
return( BddNode );
}
if ( Oper == ABL_STABLE )
{
Expr = ABL_CAR( Expr );
if ( ! ABL_ATOM( Expr ) )
{
bhlerror( BHL_ILLEGAL_STABLE_ERROR, (char *)0 );
}
AtomValue = ABL_ATOM_VALUE( Expr );
BddFirst = searchbddcircuitin( (bddcircuit *)0, AtomValue );
if ( BddFirst == (bddnode *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
BhlDelayedName = autresizeblock( BhlDelayedName, 0, strlen( AtomValue ) + 9 );
sprintf( BhlDelayedName, "%s'delayed", AtomValue );
AtomValue = namealloc( BhlDelayedName );
BddNode = searchbddcircuitin( (bddcircuit *)0, AtomValue );
if ( BddNode == (bddnode *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
BddNode = applybddnode( (bddsystem *)0, ABL_NXOR, BddNode, BddFirst );
return( BddNode );
}
if ( ( isablunaryoper( Oper ) ) ||
( ABL_CDR( Expr ) == (chain_list *)0 ) )
{
bhlerror( BHL_OPERATOR_ERROR, Oper );
}
if ( ( getabloperpolar( Oper ) == ABL_POLAR_POSITIVE ) ||
( ABL_CDDR( Expr ) == (chain_list *)0 ) )
{
Negative = 0;
}
else
{
Negative = 1;
Oper = getablopernot( Oper );
}
BddFirst = bhl_expr2bdd( ABL_CAR( Expr ) );
while ( ( Expr = ABL_CDR( Expr ) ) != (chain_list *)0 )
{
BddNode = bhl_expr2bdd( ABL_CAR( Expr ) );
BddFirst = applybddnode( (bddsystem *)0, Oper,
decbddrefext( BddFirst ),
decbddrefext( BddNode ) );
}
if ( Negative )
{
BddFirst = applybddnodenot( (bddsystem *)0,
decbddrefext( BddFirst ) );
}
return( BddFirst );
}
/*------------------------------------------------------------\
| |
| Beh Abl 2 Bdd |
| |
\------------------------------------------------------------*/
static bddnode *bhl_abl2bdd( Name, Expr )
char *Name;
chain_list *Expr;
{
bddnode *BddNode;
if ( Name != (char *)0 )
{
BhlHeadName = addchain( BhlHeadName, Name );
}
BddNode = bhl_expr2bdd( Expr );
if ( Name != (char *)0 )
{
BhlHeadName = delchain( BhlHeadName, BhlHeadName );
BddNode = addbddcircuitout( (bddcircuit *)0, Name, BddNode );
}
return( BddNode );
}
/*------------------------------------------------------------\
| |
| Beh Make Bdd Total |
| |
\------------------------------------------------------------*/
void bhl_mbddtot( BehFigure )
befig_list *BehFigure;
{
struct beaux *BehAux;
struct beaux *BehDly;
struct bemsg *BehMsg;
struct beout *BehOut;
struct bebus *BehBus;
struct bebux *BehBux;
struct bereg *BehReg;
struct biabl *BiAbl;
struct binode *BiNode;
BhlBehFigure = BehFigure;
BhlHeadName = (chain_list *)0;
BehAux = BehFigure->BEAUX;
while ( BehAux != NULL )
{
if ( BehAux->NODE == NULL )
{
BehAux->NODE = bhl_abl2bdd( BehAux->NAME, BehAux->ABL );
}
BehAux = BehAux->NEXT;
}
BehDly = BehFigure->BEDLY;
while ( BehDly != NULL )
{
if ( BehDly->NODE == NULL )
{
BehDly->NODE = bhl_abl2bdd( BehDly->NAME, BehDly->ABL );
}
BehDly = BehDly->NEXT;
}
BehMsg = BehFigure->BEMSG;
while ( BehMsg != NULL )
{
if ( BehMsg->NODE == NULL )
{
BehMsg->NODE = bhl_abl2bdd( (char *)0, BehMsg->ABL );
}
BehMsg = BehMsg->NEXT;
}
BehOut = BehFigure->BEOUT;
while ( BehOut != NULL )
{
if ( BehOut->NODE == NULL )
{
BehOut->NODE = bhl_abl2bdd( BehOut->NAME, BehOut->ABL );
}
BehOut = BehOut->NEXT;
}
BehBus = BehFigure->BEBUS;
while ( BehBus != NULL )
{
BiAbl = BehBus->BIABL;
BiNode = BehBus->BINODE;
while (BiAbl != NULL)
{
BiNode->CNDNODE = bhl_abl2bdd( (char *)0, BiAbl->CNDABL );
BiNode->VALNODE = bhl_abl2bdd( BehBus->NAME, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
BiNode = BiNode->NEXT;
}
BehBus = BehBus->NEXT;
}
BehBux = BehFigure->BEBUX;
while ( BehBux != NULL )
{
BiAbl = BehBux->BIABL;
BiNode = BehBux->BINODE;
while ( BiAbl != NULL )
{
BiNode->CNDNODE = bhl_abl2bdd( (char *)0 , BiAbl->CNDABL );
BiNode->VALNODE = bhl_abl2bdd( BehBux->NAME, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
BiNode = BiNode->NEXT;
}
BehBux = BehBux->NEXT;
}
BehReg = BehFigure->BEREG;
while ( BehReg != NULL )
{
BiAbl = BehReg->BIABL;
BiNode = BehReg->BINODE;
while ( BiAbl != NULL )
{
BiNode->CNDNODE = bhl_abl2bdd( (char *)0 , BiAbl->CNDABL );
BiNode->VALNODE = bhl_abl2bdd( BehReg->NAME, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
BiNode = BiNode->NEXT;
}
BehReg = BehReg->NEXT;
}
}
/*------------------------------------------------------------\
| |
| Beh Make Bdd |
| |
\------------------------------------------------------------*/
void beh_makbdd( ptr_befig, aux_flag, order_flag )
befig_list *ptr_befig;
char aux_flag;
char order_flag;
{
berin_list *ptr_rin;
beaux_list *ptr_aux;
beout_list *ptr_out;
bebus_list *ptr_bus;
long count_rin = 1;
long count_out = 1;
if ( ! aux_flag )
{
if ( ptr_befig->BEDLY == NULL )
{
ptr_aux = ptr_befig->BEAUX;
while ( ptr_aux != NULL )
{
ptr_befig->BERIN = beh_rmvberin( ptr_befig->BERIN, ptr_aux->NAME );
ptr_aux = ptr_aux->NEXT;
count_out++;
}
}
else
{
bhlerror( BHL_SIMPLIFY_ERROR, (char *)0 );
}
}
else
{
ptr_aux = ptr_befig->BEAUX;
while ( ptr_aux != NULL )
{
ptr_aux = ptr_aux->NEXT;
count_out++;
}
}
ptr_rin = ptr_befig->BERIN;
while (ptr_rin != NULL)
{
ptr_rin = ptr_rin->NEXT;
count_rin++;
}
ptr_out = ptr_befig->BEOUT;
while (ptr_out != NULL)
{
ptr_out = ptr_out->NEXT;
count_out++;
}
ptr_bus = ptr_befig->BEBUS;
while (ptr_bus != NULL)
{
ptr_bus = ptr_bus->NEXT;
count_out++;
}
ptr_befig->CIRCUI = createbddcircuit( ptr_befig->NAME,
count_rin, count_out, (bddsystem *)0 );
bhl_orderbdd( ptr_befig, aux_flag, order_flag );
bhl_mbddtot( ptr_befig );
if ( ! aux_flag )
{
ptr_aux = ptr_befig->BEAUX;
while ( ptr_aux != NULL )
{
if ( ptr_aux->NODE != (void *)0 )
{
decbddrefext( ptr_aux->NODE );
delbddcircuitout( (bddcircuit *)0, ptr_aux->NAME );
}
ptr_aux = ptr_aux->NEXT;
}
beh_frebeaux( ptr_befig->BEAUX );
ptr_befig->BEAUX = NULL;
}
sweepbddsystem( (bddsystem *)0 );
}

View File

@ -1,65 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Bhl |
| |
| File : bhl_makbdd.h |
| |
| Date : 01.02.95 |
| |
| Author : Pirouz Bazargan Sabet |
| |
| Modified by Jacomme Ludovic |
| |
\------------------------------------------------------------*/
# ifndef BHL_MAKBDD_H
# define BHL_MAKBDD_H
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
# endif

View File

@ -1,758 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/* ###--------------------------------------------------------------### */
/* */
/* file : beh_makgex.c */
/* date : Mar 20 1994 */
/* version : v108 */
/* authors : Xavier Picat */
/* description : high level function */
/* */
/* ###--------------------------------------------------------------### */
#include <stdio.h>
#include "mut.h"
#include "aut.h"
#include "abl.h"
#include "bdd.h"
#include "abe.h"
#define BEH_GEXBLK 256
static struct begex *BEH_GEXHED = NULL;
static ht *HashTable = NULL;
/* ###--------------------------------------------------------------### */
/* function : beh_addgexex */
/* description : create a GEX expression */
/* called func. : mbkalloc */
/* ###--------------------------------------------------------------### */
static struct begex *beh_addgexex (oper, type)
unsigned int oper;
unsigned short type;
{
struct begex *ptgex;
int i;
if (BEH_GEXHED == NULL)
{
/* ###------------------------------------------------------### */
/* if there is no more structure allocate a new block */
/* (use OPERAND field to chain structures in a list) */
/* ###------------------------------------------------------### */
BEH_GEXHED = mbkalloc (sizeof (struct begex) * BEH_GEXBLK);
ptgex = BEH_GEXHED;
for (i=1 ; i<BEH_GEXBLK ; i++)
{
ptgex->OPERAND = (struct chain *) (ptgex + 1);
ptgex++;
}
ptgex->OPERAND = NULL;
}
ptgex = BEH_GEXHED;
BEH_GEXHED = (struct begex *) BEH_GEXHED->OPERAND;
ptgex->TERM = oper;
ptgex->TYPE = type;
ptgex->OPERAND = NULL;
return (ptgex);
}
/* ###--------------------------------------------------------------### */
/* function : beh_addterm */
/* description : create a GEX for a terminal. For each terminal there */
/* is a unique GEX */
/* called func. : beh_addgexex, mbkalloc, addchain */
/* ###--------------------------------------------------------------### */
static struct begex *beh_addterm (oper)
unsigned int oper;
{
static struct chain *term_tab = NULL;
static unsigned int bank_nbr = 0;
struct chain *tmp_chn = NULL;
struct begex *locl_tab;
unsigned int bank;
struct begex *resgex;
int i;
int j;
bank = oper / 64;
if (bank >= bank_nbr)
{
for (i=bank_nbr ; i<=bank ; i++)
{
locl_tab = (struct begex *) mbkalloc (64 * sizeof (struct begex));
for (j=0 ; j<64 ; j++)
{
(locl_tab [j]).TERM = j + (i * 64);
(locl_tab [j]).TYPE = 0;
(locl_tab [j]).OPERAND = NULL;
}
if (term_tab == NULL)
term_tab = addchain (NULL, locl_tab);
else
{
tmp_chn = term_tab;
while (tmp_chn->NEXT != NULL)
tmp_chn = tmp_chn->NEXT;
tmp_chn->NEXT = addchain (NULL, locl_tab);
}
}
bank_nbr = bank + 1;
}
tmp_chn = term_tab;
for (i=0 ; i<bank ; i++)
tmp_chn = tmp_chn->NEXT;
locl_tab = (struct begex *) tmp_chn->DATA;
resgex = & (locl_tab [oper % 64]);
return (resgex);
}
/* ###--------------------------------------------------------------### */
/* function : mad_fregex */
/* description : release a GEX expression (excluding terminals) */
/* called func. : none */
/* ###--------------------------------------------------------------### */
void mad_fregex (ptgex, mode)
struct begex *ptgex;
char mode ;
{
struct chain *tmpchn;
if (ptgex != NULL)
{
if ((tmpchn = ptgex->OPERAND) != NULL)
{
if (mode == 'a')
{
while (tmpchn != NULL)
{
mad_fregex ((struct begex *) tmpchn->DATA, 'a');
tmpchn = tmpchn->NEXT;
}
freechain (ptgex->OPERAND);
}
ptgex->OPERAND = (struct chain *) BEH_GEXHED;
BEH_GEXHED = ptgex;
}
}
}
/* ###--------------------------------------------------------------### */
/* function : flatgex */
/* description : flatten the top level of a complex expression */
/* called func. : mbkalloc */
/* ###--------------------------------------------------------------### */
static struct begex *flatgex (gexpnt)
struct begex *gexpnt;
{
int top_operator;
int operator;
struct chain *tmp_chn;
struct chain *cur_oper;
struct chain *oper_list = NULL;
struct begex *operand;
struct begex *resgex = gexpnt;
char flatflag = 0;
if ((gexpnt != NULL) && (gexpnt->OPERAND != NULL))
{
cur_oper = gexpnt->OPERAND;
while (cur_oper != NULL)
{
flatflag = 0;
top_operator = gexpnt->TERM;
operand = (struct begex *) cur_oper->DATA;
if (operand->OPERAND != NULL)
{
operator = operand->TERM;
switch (operator)
{
case ABL_OR :
if (top_operator == ABL_NOT)
{
gexpnt->TERM = ABL_NOR;
flatflag = 1;
}
else
{
if ((top_operator == ABL_OR) || (top_operator == ABL_NOR))
flatflag = 1;
}
break;
case ABL_AND :
if (top_operator == ABL_NOT)
{
gexpnt->TERM = ABL_NAND;
flatflag = 1;
}
else
{
if ((top_operator == ABL_AND) || (top_operator == ABL_NAND))
flatflag = 1;
}
break;
case ABL_XOR :
if (top_operator == ABL_NOT)
{
gexpnt->TERM = ABL_NXOR;
flatflag = 1;
}
else
{
if ((top_operator == ABL_XOR) || (top_operator == ABL_NXOR))
flatflag = 1;
}
break;
case ABL_NXOR :
if (top_operator == ABL_XOR)
{
gexpnt->TERM = ABL_NXOR;
flatflag = 1;
}
else
{
if ((top_operator == ABL_NXOR) || (top_operator == ABL_NOT))
{
gexpnt->TERM = ABL_XOR;
flatflag = 1;
}
}
break;
}
}
if (flatflag == 1)
{
tmp_chn = operand->OPERAND;
while (tmp_chn->NEXT != NULL)
tmp_chn = tmp_chn->NEXT;
tmp_chn->NEXT = oper_list;
oper_list = operand->OPERAND;
mad_fregex (operand, 'p');
}
else
oper_list = addchain (oper_list, operand);
cur_oper = cur_oper->NEXT;
}
freechain (gexpnt->OPERAND);
gexpnt->OPERAND = oper_list;
resgex = gexpnt;
}
return (resgex);
}
/* ###--------------------------------------------------------------### */
/* function : rmvconst */
/* description : remove constantes that appear at the top level of a */
/* espression */
/* called func. : addchain, freechain, mad_fregex */
/* ###--------------------------------------------------------------### */
static struct begex *rmvconst (gexpnt)
struct begex *gexpnt;
{
struct begex *resgex;
struct begex *operand;
struct begex *gex_zero;
struct begex *gex_one ;
struct chain *new_oper = NULL;
struct chain *cur_oper;
struct chain *tmp_chn = NULL;
int operator;
char freflag = 0;
resgex = gexpnt;
gex_zero = beh_addterm (0);
gex_one = beh_addterm (1);
if (gexpnt != NULL)
{
if (gexpnt->OPERAND != NULL)
{
cur_oper = gexpnt->OPERAND;
while (cur_oper != NULL)
{
operator = gexpnt->TERM;
operand = (struct begex *) cur_oper->DATA;
freflag = 0;
if (operand == gex_zero)
{
switch (operator)
{
case ABL_AND :
freflag = 2; resgex = gex_zero; break;
case ABL_NAND :
case ABL_NOT :
freflag = 2; resgex = gex_one ; break;
case ABL_OR :
case ABL_XOR :
case ABL_NOR :
case ABL_NXOR :
freflag = 1; break;
break;
}
}
if (operand == gex_one)
{
switch (operator)
{
case ABL_OR :
freflag = 2; resgex = gex_one ; break;
case ABL_NOR :
case ABL_NOT :
freflag = 2; resgex = gex_zero; break;
case ABL_NAND :
case ABL_AND :
freflag = 1; break;
break;
case ABL_XOR :
gexpnt->TERM = ABL_NXOR; freflag = 1; break;
break;
case ABL_NXOR :
gexpnt->TERM = ABL_XOR ; freflag = 1; break;
break;
}
}
if (freflag == 2)
{
mad_fregex (gexpnt);
freechain (new_oper);
gexpnt = NULL;
new_oper = NULL;
break;
}
else
{
if (freflag == 0)
new_oper = addchain (new_oper, cur_oper->DATA);
cur_oper = cur_oper->NEXT;
}
}
if (gexpnt != NULL)
{
operator = gexpnt->TERM;
if (new_oper == NULL)
{
switch (operator)
{
case ABL_AND :
case ABL_NOR :
case ABL_NXOR :
resgex = gex_one ;
break;
case ABL_OR :
case ABL_XOR :
case ABL_NAND :
resgex = gex_zero;
break;
}
mad_fregex (gexpnt);
gexpnt = NULL;
}
else
{
if (new_oper->NEXT == NULL)
{
switch (operator)
{
case ABL_AND :
case ABL_OR :
case ABL_XOR :
resgex = (struct begex *) new_oper->DATA;
freechain (new_oper);
gexpnt = NULL;
new_oper = NULL;
break;
case ABL_NOR :
case ABL_NXOR :
case ABL_NAND :
case ABL_NOT :
tmp_chn = gexpnt->OPERAND;
gexpnt->OPERAND = new_oper;
gexpnt->TERM = ABL_NOT;
freechain (tmp_chn);
tmp_chn = NULL;
resgex = gexpnt;
break;
}
}
}
}
}
}
return (resgex);
}
/* ###--------------------------------------------------------------### */
/* function : beh_abl2gex */
/* description : transform recursively abl in gex */
/* called func. : beh_toolbug, beh_abl2gex, gethtitem beh_addgexex, */
/* namealloc , addchain */
/* ###--------------------------------------------------------------### */
static struct begex *beh_abl2gex (ptr_befig, expr)
struct befig *ptr_befig;
struct chain *expr;
{
char delayed [128];
static char *str_zero = NULL;
static char *str_dc = NULL;
static char *str_one = NULL;
struct begex *resgex ;
struct begex *gex_elt ;
struct chain *oper_list ;
struct chain *operand ;
char *term ;
long term_idx ;
long operator ;
if (expr == NULL)
beh_toolbug (103, "beh_abl2gex", NULL, 0);
if (str_zero == NULL)
{
str_zero = namealloc ("'0'");
str_dc = namealloc ("'d'");
str_one = namealloc ("'1'");
}
if (expr->NEXT != NULL)
{
/* ###------------------------------------------------------### */
/* if the expression is not a terminal ... */
/* ###------------------------------------------------------### */
operator = (long) ((struct chain *)expr->DATA)->DATA;
switch (operator)
{
case ABL_STABLE:
/* ###------------------------------------------------------### */
/* translate signal'stable into a logical expression. */
/* notice : */
/* signal'stable = not (signal xor signal'delayed) */
/* ###------------------------------------------------------### */
resgex = beh_addgexex (ABL_NXOR, 0);
operand = (struct chain *) expr->NEXT->DATA;
if (operand->NEXT != NULL)
beh_toolbug (100, "beh_abl2gex", NULL, 0);
else
{
term = (char *) operand->DATA;
term_idx = gethtitem (HashTable, term);
if (term_idx == EMPTYHT)
beh_toolbug (101, "beh_abl2gex", term, 0);
else
{
gex_elt = beh_addterm (term_idx);
resgex->OPERAND = addchain (NULL, gex_elt);
sprintf (delayed, "%s'delayed", term);
term = namealloc (delayed);
term_idx = gethtitem (HashTable, term);
if (term_idx == EMPTYHT)
beh_toolbug (101, "beh_abl2gex", term, 0);
else
{
gex_elt = beh_addterm (term_idx);
resgex->OPERAND->NEXT = addchain (NULL, gex_elt);
}
}
}
break;
case ABL_OR:
case ABL_AND:
case ABL_XOR:
case ABL_NOR:
case ABL_NAND:
case ABL_NXOR:
case ABL_NOT:
/* ###------------------------------------------------------### */
/* for other operator make the top level, then, translate */
/* each operand */
/* ###------------------------------------------------------### */
resgex = beh_addgexex (operator, 0);
oper_list = expr->NEXT;
while (oper_list != NULL)
{
gex_elt = beh_abl2gex (ptr_befig, oper_list->DATA);
resgex->OPERAND = addchain (resgex->OPERAND, gex_elt);
oper_list = oper_list->NEXT;
}
break;
default:
beh_toolbug (102, "beh_abl2gex", NULL, operator);
}
resgex = rmvconst (resgex);
resgex = flatgex (resgex);
}
else
{
/* ###------------------------------------------------------### */
/* if the expression is a terminal create a terminal gex */
/* with the index correspnding to the terminal */
/* ###------------------------------------------------------### */
term = (char *) expr->DATA;
term_idx = gethtitem (HashTable, term);
if (term_idx == EMPTYHT)
{
if (expr->DATA == str_one)
resgex = beh_addterm (1);
else
{
if ((expr->DATA == str_zero) || (expr->DATA == str_dc))
resgex = beh_addterm (0);
else
beh_toolbug (101, "beh_abl2gex", term, 0);
}
}
else
resgex = beh_addterm (term_idx);
}
return (resgex);
}
/* ###--------------------------------------------------------------### */
/* function : beh_makgex */
/* description : make gex for each signal of a befig structure */
/* called func. : beh_abl2gex, addht, addhtitem, delht */
/* ###--------------------------------------------------------------### */
void beh_makgex (ptr_befig, aux_flg, trace_flg)
struct befig *ptr_befig; /* befig containing expressions */
char aux_flg ; /* ignored */
char trace_flg; /* ignored */
{
struct beaux *ptr_beaux;
struct beaux *ptr_bedly;
struct bemsg *ptr_bemsg;
struct beout *ptr_beout;
struct bebus *ptr_bebus;
struct bebux *ptr_bebux;
struct bereg *ptr_bereg;
struct biabl *ptr_biabl;
struct binode *ptr_binode;
struct berin *ptr_rin;
int i;
/* ###------------------------------------------------------### */
/* initialize hash table */
/* ###------------------------------------------------------### */
i = 1;
ptr_rin = ptr_befig->BERIN;
while (ptr_rin != NULL)
{
i++;
ptr_rin = ptr_rin->NEXT;
}
HashTable = addht (i);
i = 2;
ptr_rin = ptr_befig->BERIN;
while (ptr_rin != NULL)
{
addhtitem (HashTable, ptr_rin->NAME, i);
i++;
ptr_rin = ptr_rin->NEXT;
}
/* ###------------------------------------------------------### */
/* make a gex for each simple internal signal */
/* ###------------------------------------------------------### */
ptr_beaux = ptr_befig->BEAUX;
while (ptr_beaux != NULL)
{
ptr_beaux->NODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_beaux->ABL);
ptr_beaux = ptr_beaux->NEXT;
}
/* ###------------------------------------------------------### */
/* make a gex for each delayed internal signal */
/* ###------------------------------------------------------### */
ptr_bedly = ptr_befig->BEDLY;
while (ptr_bedly != NULL)
{
ptr_bedly->NODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_bedly->ABL);
ptr_bedly = ptr_bedly->NEXT;
}
/* ###------------------------------------------------------### */
/* make a gex for each assertion */
/* ###------------------------------------------------------### */
ptr_bemsg = ptr_befig->BEMSG;
while (ptr_bemsg != NULL)
{
ptr_bemsg->NODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_bemsg->ABL);
ptr_bemsg = ptr_bemsg->NEXT;
}
/* ###------------------------------------------------------### */
/* make a gex for each simple output */
/* ###------------------------------------------------------### */
ptr_beout = ptr_befig->BEOUT;
while (ptr_beout != NULL)
{
ptr_beout->NODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_beout->ABL);
ptr_beout = ptr_beout->NEXT;
}
/* ###------------------------------------------------------### */
/* make a gex for each bussed output */
/* ###------------------------------------------------------### */
ptr_bebus = ptr_befig->BEBUS;
while (ptr_bebus != NULL)
{
ptr_biabl = ptr_bebus->BIABL;
ptr_binode = ptr_bebus->BINODE;
while (ptr_biabl != NULL)
{
ptr_binode->CNDNODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_biabl->CNDABL);
ptr_binode->VALNODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_biabl->VALABL);
ptr_biabl = ptr_biabl->NEXT;
ptr_binode = ptr_binode->NEXT;
}
ptr_bebus = ptr_bebus->NEXT;
}
/* ###------------------------------------------------------### */
/* make a gex for each bussed internal signal */
/* ###------------------------------------------------------### */
ptr_bebux = ptr_befig->BEBUX;
while (ptr_bebux != NULL)
{
ptr_biabl = ptr_bebux->BIABL;
ptr_binode = ptr_bebux->BINODE;
while (ptr_biabl != NULL)
{
ptr_binode->CNDNODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_biabl->CNDABL);
ptr_binode->VALNODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_biabl->VALABL);
ptr_biabl = ptr_biabl->NEXT;
ptr_binode = ptr_binode->NEXT;
}
ptr_bebux = ptr_bebux->NEXT;
}
/* ###------------------------------------------------------### */
/* make a gex for each internal register */
/* ###------------------------------------------------------### */
ptr_bereg = ptr_befig->BEREG;
while (ptr_bereg != NULL)
{
ptr_biabl = ptr_bereg->BIABL;
ptr_binode = ptr_bereg->BINODE;
while (ptr_biabl != NULL)
{
ptr_binode->CNDNODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_biabl->CNDABL);
ptr_binode->VALNODE = (bddnode *) beh_abl2gex (ptr_befig, ptr_biabl->VALABL);
ptr_biabl = ptr_biabl->NEXT;
ptr_binode = ptr_binode->NEXT;
}
ptr_bereg = ptr_bereg->NEXT;
}
delht (HashTable);
}

View File

@ -1,437 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Bhl |
| |
| File : bhl_orderbdd.c |
| |
| Date : 01.02.95 |
| |
| Author : Jacomme Ludovic |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Include Files |
| |
\------------------------------------------------------------*/
# include "mut.h"
# include "aut.h"
# include "abl.h"
# include "bdd.h"
# include "abe.h"
# include "abt.h"
# include <stdio.h>
# include "bhl_error.h"
# include "bhl_orderbdd.h"
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
static chain_list *BhlHeadName = (chain_list *)0;
static befig_list *BhlBehFigure = (befig_list *)0;
static char *BhlDelayedName = (char *)0;
static authtable *BhlHashTableOrder = (authtable *)0;
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Bhl Order Expr Bdd |
| |
\------------------------------------------------------------*/
static void bhl_orderexprbdd( Expr )
chain_list *Expr;
{
char *AtomValue;
beaux_list *ScanAux;
chain_list *ScanChain;
authelem *Element;
long Oper;
if ( Expr == (chain_list *)0 )
{
bhlerror( BHL_EXPR_NULL_ERROR, (char *)0 );
}
if ( ABL_ATOM( Expr ) )
{
AtomValue = ABL_ATOM_VALUE( Expr );
if ( ( AtomValue == ABL_ATOM_NAME_ONE ) ||
( AtomValue == ABL_ATOM_NAME_ZERO ) ||
( AtomValue == ABL_ATOM_NAME_DC ) )
{
return;
}
Element = searchauthelem( BhlHashTableOrder, AtomValue );
if ( Element != (authelem *)0 )
{
Element->VALUE++;
return;
}
for ( ScanAux = BhlBehFigure->BEAUX;
ScanAux != (beaux_list *)0;
ScanAux = ScanAux->NEXT )
{
if ( ScanAux->NAME == AtomValue ) break;
}
if ( ScanAux == (beaux_list *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
for ( ScanChain = BhlHeadName;
ScanChain != (chain_list *)0;
ScanChain = ScanChain->NEXT )
{
if ( ScanChain->DATA == AtomValue )
{
bhlerror( BHL_EXPR_LOOP_ERROR, AtomValue );
}
}
BhlHeadName = addchain( BhlHeadName, AtomValue );
bhl_orderexprbdd( ScanAux->ABL );
BhlHeadName = delchain( BhlHeadName, BhlHeadName );
return;
}
Oper = ABL_OPER( Expr );
Expr = ABL_CDR( Expr );
if ( Oper == ABL_NOT )
{
if ( ABL_CDR( Expr ) != (chain_list *)0 )
{
bhlerror( BHL_OPERATOR_ERROR, Oper );
}
bhl_orderexprbdd( ABL_CAR( Expr ) );
return;
}
if ( Oper == ABL_STABLE )
{
Expr = ABL_CAR( Expr );
if ( ! ABL_ATOM( Expr ) )
{
bhlerror( BHL_ILLEGAL_STABLE_ERROR, (char *)0 );
}
AtomValue = ABL_ATOM_VALUE( Expr );
Element = searchauthelem( BhlHashTableOrder, AtomValue );
if ( Element == (authelem *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
BhlDelayedName = autresizeblock( BhlDelayedName, 0, strlen( AtomValue ) + 9 );
sprintf( BhlDelayedName, "%s'delayed", AtomValue );
AtomValue = namealloc( BhlDelayedName );
Element = searchauthelem( BhlHashTableOrder, AtomValue );
if ( Element == (authelem *)0 )
{
bhlerror( BHL_UNKNOWN_ATOM_ERROR, AtomValue );
}
return;
}
if ( ( isablunaryoper( Oper ) ) ||
( ABL_CDR( Expr ) == (chain_list *)0 ) )
{
bhlerror( BHL_OPERATOR_ERROR, Oper );
}
bhl_orderexprbdd( ABL_CAR( Expr ) );
while ( ( Expr = ABL_CDR( Expr ) ) != (chain_list *)0 )
{
bhl_orderexprbdd( ABL_CAR( Expr ) );
}
}
/*------------------------------------------------------------\
| |
| Beh Order Bdd |
| |
\------------------------------------------------------------*/
static void bhl_orderablbdd( Name, Expr )
char *Name;
chain_list *Expr;
{
if ( Name != (char *)0 )
{
BhlHeadName = addchain( BhlHeadName, Name );
}
bhl_orderexprbdd( Expr );
if ( Name != (char *)0 )
{
BhlHeadName = delchain( BhlHeadName, BhlHeadName );
}
}
/*------------------------------------------------------------\
| |
| Beh Sort Compare |
| |
\------------------------------------------------------------*/
static long bhl_sortcompare( ValueArray, Index1, Index2 )
authelem *ValueArray;
long Index1;
long Index2;
{
return( ValueArray[ Index1 ].VALUE -
ValueArray[ Index2 ].VALUE );
}
/*------------------------------------------------------------\
| |
| Beh Order Bdd Total |
| |
\------------------------------------------------------------*/
void bhl_orderbdd( BehFigure, AuxFlag, OrderFlag )
befig_list *BehFigure;
int AuxFlag;
int OrderFlag;
{
struct berin *BehRin;
struct beaux *BehAux;
struct beaux *BehDly;
struct bemsg *BehMsg;
struct beout *BehOut;
struct bebus *BehBus;
struct bebux *BehBux;
struct bereg *BehReg;
struct biabl *BiAbl;
authelem *Element;
authelem *ValueArray;
long *IndexArray;
long SizeArray;
long Index;
long NumberIn;
bddindex BddIndex;
BhlBehFigure = BehFigure;
BhlHeadName = (chain_list *)0;
NumberIn = BehFigure->CIRCUI->NAME_IN_SIZE;
BehFigure->BERIN = (berin_list *)reverse( (chain_list*)BehFigure->BERIN );
BehRin = BehFigure->BERIN;
if ( ! OrderFlag )
{
while ( BehRin != NULL )
{
BddIndex = BddLocalCircuit->NUMBER_NAME_IN + BDD_INDEX_MIN;
addbddcircuitin( (bddcircuit *)0, BehRin->NAME, BddIndex,
BDD_IN_MODE_IMPOSE | BDD_IN_MODE_LAST );
BehRin = BehRin->NEXT;
}
BehFigure->BERIN = (berin_list *)reverse( (chain_list*)BehFigure->BERIN );
return;
}
BhlHashTableOrder = createauthtable( NumberIn << 1 );
while ( BehRin != NULL )
{
addauthelem( BhlHashTableOrder, BehRin->NAME, 0 );
BehRin = BehRin->NEXT;
}
if ( AuxFlag )
{
BehAux = BehFigure->BEAUX;
while ( BehAux != NULL )
{
bhl_orderablbdd( BehAux->NAME, BehAux->ABL );
BehAux = BehAux->NEXT;
}
}
BehDly = BehFigure->BEDLY;
while ( BehDly != NULL )
{
bhl_orderablbdd( BehDly->NAME, BehDly->ABL );
BehDly = BehDly->NEXT;
}
BehMsg = BehFigure->BEMSG;
while ( BehMsg != NULL )
{
bhl_orderablbdd( (char *)0, BehMsg->ABL );
BehMsg = BehMsg->NEXT;
}
BehOut = BehFigure->BEOUT;
while ( BehOut != NULL )
{
bhl_orderablbdd( BehOut->NAME, BehOut->ABL );
BehOut = BehOut->NEXT;
}
BehBus = BehFigure->BEBUS;
while ( BehBus != NULL )
{
BiAbl = BehBus->BIABL;
while ( BiAbl != NULL )
{
bhl_orderablbdd( (char *)0 , BiAbl->CNDABL );
bhl_orderablbdd( BehBus->NAME, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
}
BehBus = BehBus->NEXT;
}
BehBux = BehFigure->BEBUX;
while ( BehBux != NULL )
{
BiAbl = BehBux->BIABL;
while (BiAbl != NULL)
{
bhl_orderablbdd( (char *)0, BiAbl->CNDABL );
bhl_orderablbdd( (char *)0, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
}
BehBux = BehBux->NEXT;
}
BehReg = BehFigure->BEREG;
while ( BehReg != NULL )
{
BiAbl = BehReg->BIABL;
while (BiAbl != NULL)
{
bhl_orderablbdd( (char *)0, BiAbl->CNDABL );
bhl_orderablbdd( (char *)0, BiAbl->VALABL );
BiAbl = BiAbl->NEXT;
}
BehReg = BehReg->NEXT;
}
BehRin = BehFigure->BERIN;
# ifdef BHL_ORDER_DEBUG
viewauthtable( BhlHashTableOrder, viewauthelem );
# endif
SizeArray = BhlHashTableOrder->TABLE_SIZE;
ValueArray = BhlHashTableOrder->TABLE;
IndexArray = (long *)autallocblock( sizeof( long ) * SizeArray );
sortautarray( ValueArray, IndexArray, SizeArray, bhl_sortcompare );
for ( Index = 0; Index < SizeArray; Index++ )
{
Element = &ValueArray[ IndexArray[ Index ] ];
if ( Element->KEY != AUT_HASH_KEY_EMPTY )
{
BddIndex = BddLocalCircuit->NUMBER_NAME_IN + BDD_INDEX_MIN;
addbddcircuitin( (bddcircuit *)0, Element->KEY, BddIndex,
BDD_IN_MODE_IMPOSE | BDD_IN_MODE_LAST );
# ifdef BHL_ORDER_DEBUG
fprintf( stdout, "Var: %s Order: %d\n",
Element->KEY, Element->VALUE );
# endif
}
}
autfreeblock( IndexArray );
destroyauthtable( BhlHashTableOrder );
BehFigure->BERIN = (berin_list *)reverse( (chain_list*)BehFigure->BERIN );
}

View File

@ -1,67 +0,0 @@
/*------------------------------------------------------------\
| |
| This file is part of the Alliance CAD System Copyright |
| (C) Laboratoire LIP6 - Département ASIM Universite P&M Curie|
| |
| Home page : http://www-asim.lip6.fr/alliance/ |
| E-mail support : mailto:alliance-support@asim.lip6.fr |
| |
| This progam is free software; you can redistribute it |
| and/or modify it under the terms of the GNU Library General|
| Public License as published by the Free Software Foundation |
| either version 2 of the License, or (at your option) any |
| later version. |
| |
| Alliance VLSI CAD System is distributed in the hope that |
| it will be useful, but WITHOUT ANY WARRANTY; |
| without even the implied warranty of MERCHANTABILITY or |
| FITNESS FOR A PARTICULAR PURPOSE. See the GNU General |
| Public License for more details. |
| |
| You should have received a copy of the GNU General Public |
| License along with the GNU C Library; see the file COPYING. |
| If not, write to the Free Software Foundation, Inc., |
| 675 Mass Ave, Cambridge, MA 02139, USA. |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Tool : Bhl |
| |
| File : bhl_makbdd.h |
| |
| Date : 01.02.95 |
| |
| Author : Pirouz Bazargan Sabet |
| |
| Modified by Jacomme Ludovic |
| |
\------------------------------------------------------------*/
# ifndef BHL_ORDERBDD_H
# define BHL_ORDERBDD_H
/*------------------------------------------------------------\
| |
| Constants |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Types |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Variables |
| |
\------------------------------------------------------------*/
/*------------------------------------------------------------\
| |
| Functions |
| |
\------------------------------------------------------------*/
extern void bhl_orderbdd();
# endif

View File

@ -1,11 +0,0 @@
lib_LIBRARIES = libAbv.a
libAbv_a_SOURCES = bvl_bcomp.y bvl_bcomp.l \
abv.h bvl_bspec.c bvl_drive.c bvl_parse.h bvl_util.h \
bvl_bedef.h bvl_bspec.h bvl_drive.h bvl_utdef.h bvl_utype.h \
bvl_blex.h bvl_byacc.h bvl_parse.c bvl_util.c
CLEANFILES = bvl_bcompyac.c bvl_bcompyac.h bvl_bcomplex.c
bvl_bcompyac.c bvl_bcompyac.h : $(srcdir)/bvl_bcomp.y
$(YACC) -d $(YFLAGS) $(srcdir)/bvl_bcomp.y && sed -e "s/yy/bvl_y_/g" -e "s/YY/BVL_Y_/g" y.tab.c > bvl_bcompyac.c && sed -e "s/yy/bvl_y_/g" -e "s/YY/BVL_Y_/g" y.tab.h > bvl_bcompyac.h
bvl_bcomplex.c : $(srcdir)/bvl_bcomp.l bvl_bcompyac.h
$(LEX) -t $(srcdir)/bvl_bcomp.l | sed -e "s/yy/bvl_y_/g" -e "s/YY/BVL_Y_/g" > bvl_bcomplex.c

View File

@ -1 +0,0 @@
man_MANS = bdd.1

View File

@ -1,479 +0,0 @@
.\" $Id: bdd.1,v 1.1 2002/03/18 11:26:51 ludo Exp $
.\" @(#)bdd.1 1.01 96/02/07 UPMC; Author : Jacomme Ludovic
.TH BDD101 1 "October 1, 1997" "ASIM/LIP6" "ALLIANCE BDD LIBRARY"
.SH NAME
bdd \- Mutli Reduced Ordered Binary Decision Diagrams
.so man1/alc_origin.1
.SH DESCRIPTION
\fBbdd\fP is a library that enables to represent a boolean expression
as a Multi Reduced Ordered Binary Decision Diagrams.
.TP 20
.br
\fBviewbddallocinfo\fP
\- displays memory informations.
.TP
\fBapplybddnodenot\fP
\- complements a \fBbdd\fP.
.TP
\fBapplybddnodeterm\fP
\- applies an operator on two \fBbdd\fP nodes.
.TP
\fBapplybddnode\fP
\- applies an operator on two \fBbdd\fP nodes.
.TP
\fBapplybddnodeite\fP
\- computes the IF-THEN-ELSE logical operation.
.TP
\fBapplybddnodelist\fP
\- applies an opertor to a \fBbdd\fP nodes list.
.TP
\fBaddbddassoc\fP
\- creates a new association variables.
.TP
\fBaddbddnodeassoc\fP
\- adds a \fBbdd\fP node in a variable association.
.TP
\fBdelbddassoc\fP
\- deletes a variable association.
.TP
\fBdelbddnodeassoc\fP
\- deletes a \fBbdd\fP node in a variable association.
.TP
\fBdestroybddassoc\fP
\- frees all the variable associations.
.TP
\fBviewbddassoc\fP
\- displays variable associations.
.TP
\fBcheckbddvar\fP
\- checks the coherence of a variable.
.TP
\fBcheckbddindex\fP
\- checks the coherence of a \fBbdd\fP index.
.TP
\fBcheckbddoper\fP
\- ckecks the coherence of an operator.
.TP
\fBcheckbddassoc\fP
\- checks a variable association.
.TP
\fBcheckbddmaxnode\fP
\- checks if the max node reached.
.TP
\fBcreatebddcircuit\fP
\- creates a \fBbdd\fP circuit.
.TP
\fBresetbddcircuit\fP
\- resets a \fBbdd\fP circuit.
.TP
\fBdestroybddcircuit\fP
\- frees a \fBbdd\fP circuit.
.TP
\fBsearchbddcircuitin\fP
\- searches a specified input in a circuit.
.TP
\fBaddbddcircuitin\fP
\- adds a new input in a circuit.
.TP
\fBaddbddcircuitaux\fP
\- adds an auxialiary variable in a circuit.
.TP
\fBsearchbddcircuitout\fP
\- searches a specified output in a circuit.
.TP
\fBaddbddcircuitout\fP
\- adds a new output in a circuit.
.TP
\fBdelbddcircuitout\fP
\- deletes a specified output in a circuit.
.TP
\fBaddbddcircuitabl\fP
\- converts an \fBabl\fP to a \fBbdd\fP node.
.TP
\fBconvertbddcircuitabl\fP
\- converts a \fBbdd\fP node to an \fBabl\fP.
.TP
\fBconvertbddcircuitsumabl\fP
\- converts a \fBbdd\fP node to an \fBabl\fP.
.TP
\fBviewbddcircuit\fP
\- displays a \fBbdd\fP circuit.
.TP
\fBcofactorbddnode\fP
\- computes the generalized cofactor.
.TP
\fBrestrictbddnode\fP
\- substitutes a variable by zero or one.
.TP
\fBcomposebddnode\fP
\- substitutes a variable by a \fBbdd\fP node.
.TP
\fBconvertbddindexabl\fP
\- converts a \fBbdd\fP index to an atomic \fBabl\fP.
.TP
\fBconvertbddmuxabl\fP
\- converts a \fBbdd\fP node to a multiplexor.
.TP
\fBconvertbddnodeabl\fP
\- converts a \fBbdd\fP node to an \fBabl\fP.
.TP
\fBconvertbddnodesumabl\fP
\- converts a \fBbdd\fP node to an \fBabl\fP.
.TP
\fBexistbddnodeassocon\fP
\- computes an existantial quantification.
.TP
\fBexistbddnodeassocoff\fP
\- computes an existantial quantification.
.TP
\fBgarbagebddsystem\fP
\- forces a \fBbdd\fP garbage collection.
.TP
\fBimplybddnode\fP
\- computes a \fBbdd\fP that implies a conjonction.
.TP
\fBintersectbddnode\fP
\- tests for an intersection.
.TP
\fBmarkbddnode\fP
\- marks a \fBbdd\fP node.
.TP
\fBunmarkbddnode\fP
\- clears a marked \fBbdd\fP node.
.TP
\fBgetbddnodenum\fP
\- gets the number of nodes in a \fBbdd\fP.
.TP
\fBgetbddnodesize\fP
\- gets the number of nodes in a \fBbdd\fP.
.TP
\fBaddbddnode\fP
\- adds a new \fBbdd\fP node.
.TP
\fBaddbddnodelist\fP
\- adds a node in a \fIchain_list\fP.
.TP
\fBdelbddnode\fP
\- deletes a \fBbdd\fP node.
.TP
\fBdelbddnodelist\fP
\- deletes a list of \fBbdd\fP nodes.
.TP
\fBviewbddnode\fP
\- displays a \fBbdd\fP node.
.TP
\fBincbddrefext\fP
\- increments the number of external reference.
.TP
\fBincbddrefint\fP
\- increments the number of internal reference.
.TP
\fBdecbddrefext\fP
\- decrements the number of external reference.
.TP
\fBdecbddrefint\fP
\- decrements the number of internal reference.
.TP
\fBsetbddrefext\fP
\- sets a node visible from outside.
.TP
\fBunsetbddrefext\fP
\- sets a node invisible from outside.
.TP
\fBclearbddsystemrefint\fP
\- clears all the internal references.
.TP
\fBclearbddsystemrefext\fP
\- clears all the external references.
.TP
\fBclearbddsystemref\fP
\- clears all the references.
.TP
\fBrelprodbddnodeassoc\fP
\- computes a relation product.
.TP
\fBreorderbddsystemsimple\fP
\- reorders the \fBbdd\fP nodes.
.TP
\fBreorderbddsystemwindow\fP
\- reorders the \fBbdd\fP nodes.
.TP
\fBreorderbddsystemtop\fP
\- reorders the \fBbdd\fP nodes.
.TP
\fBreorderbddsystemdynamic\fP
\- sets the dynamic reorder parameters.
.TP
\fBsatisfybddnode\fP
\- finds a satisfying path for a \fBbdd\fP.
.TP
\fBsimpbddnodedcon\fP
\- simplifies a \fBbdd\fP with don't cares on its on-set.
.TP
\fBsimpbddnodedcoff\fP
\- simplifies a \fBbdd\fP with don't cares on its off-set
.TP
\fBsubstbddnodeassoc\fP
\- substitutes variables with \fBbdd\fP nodes.
.TP
\fBgetbddnodesupport\fP
\- gives the support of a \fBbdd\fP node.
.TP
\fBisbddvarinsupport\fP
\- checks if a variable appears in a \fBbdd\fP node.
.TP
\fBcreatebddsystem\fP
\- creates a \fBbdd\fP system.
.TP
\fBresetbddsystem\fP
\- resets a \fBbdd\fP system.
.TP
\fBdestroybddsystem\fP
\- frees a \fBbdd\fP system.
.TP
\fBviewbddsystem\fP
\- displays a \fBbdd\fP system.
.TP
\fBviewbddsysteminfo\fP
\- displays statisticals informations.
.TP
\fBtestbddcircuit\fP
\- debbugs a \fBbdd\fP circuit.
.TP
\fBaddbddvar\fP
\- creates a new variable.
.TP
\fBaddbddvarlast\fP
\- creates a new variable.
.TP
\fBaddbddvarfirst\fP
\- creates a new variable.
.TP
\fBaddbddvarbefore\fP
\- creates a new variable.
.TP
\fBaddbddvarafter\fP
\- creates a new variable.
.TP
\fBsweepbddvar\fP
\- sweeps all the unused nodes for a variable.
.TP
\fBswapbddvar\fP
\- swaps two contigous variables.
.TP
\fBgetbddvarbyindex\fP
\- converts \fBbdd\fP index to a variable number.
.TP
\fBgetbddvarindex\fP
\- converts a variable number in a \fBbdd\fP index.
.TP
\fBgetbddvarnode\fP
\- gives the \fBbdd\fP node of a variable.
.TP
\fBgetbddvarnodebyindex\fP
\- gives the \fBbdd\fP node of a variable.
.TP
\fBaddbddvarauxsingle\fP
\- creates an auxiliary variable.
.TP
\fBaddbddvarauxglobal\fP
\- creates an auxiliary variable.
.TP 0
libBdd101.a :
\fBallocbdduserfunc\fP,
\fBallocbddheath\fP,
\fBallocbddhnode\fP,
\fBallocbddhoper\fP,
\fBallocbddhnodetable\fP,
\fBallocbddhopertable\fP,
\fBallocbddblock\fP,
\fBallocbddnodeblock\fP,
\fBallocbddvartree\fP,
\fBallocbddvarchild\fP,
\fBallocbddvarnode\fP,
\fBallocbddindexnode\fP,
\fBallocbddvar\fP,
\fBallocbddindex\fP,
\fBallocbddassoc\fP,
\fBallocbddassocnode\fP,
\fBallocbddnamein\fP,
\fBallocbddindexin\fP,
\fBallocbddsystem\fP,
\fBallocbddcircuit\fP,
\fBviewbddallocinfo\fP,
\fBapplybddnodenot\fP,
\fBapplybddnodeterm\fP,
\fBapplybddnode\fP,
\fBapplybddnodeite\fP,
\fBapplybddnodelist\fP,
\fBaddbddassoc\fP,
\fBaddbddnodeassoc\fP,
\fBdelbddassoc\fP,
\fBdelbddnodeassoc\fP,
\fBdestroybddassoc\fP,
\fBviewbddassoc\fP,
\fBaddbddblock\fP,
\fBcreatebddblock\fP,
\fBresetbddblock\fP,
\fBdestroybddblock\fP,
\fBviewbddblock\fP,
\fBcheckbddvar\fP,
\fBcheckbddindex\fP,
\fBcheckbddoper\fP,
\fBcheckbddassoc\fP,
\fBcheckbddmaxnode\fP,
\fBcreatebddcircuit\fP,
\fBresetbddcircuit\fP,
\fBdestroybddcircuit\fP,
\fBsearchbddcircuitin\fP,
\fBaddbddcircuitin\fP,
\fBaddbddcircuitaux\fP,
\fBsearchbddcircuitout\fP,
\fBaddbddcircuitout\fP,
\fBdelbddcircuitout\fP,
\fBaddbddcircuitabl\fP,
\fBconvertbddcircuitabl\fP,
\fBconvertbddcircuitsumabl\fP,
\fBviewbddcircuit\fP,
\fBcofactorbddnode\fP,
\fBrestrictbddnode\fP,
\fBcomposebddnode\fP,
\fBconvertbddindexabl\fP,
\fBconvertbddmuxabl\fP,
\fBconvertbddnodeabl\fP,
\fBconvertbddnodesumabl\fP,
\fBexistbddnodeassocon\fP,
\fBexistbddnodeassocoff\fP,
\fBfreebdduserfunc\fP,
\fBfreebddheath\fP,
\fBfreebddhnode\fP,
\fBfreebddhoper\fP,
\fBfreebddhnodetable\fP,
\fBfreebddhopertable\fP,
\fBfreebddblock\fP,
\fBfreebddnodeblock\fP,
\fBfreebddvartree\fP,
\fBfreebddvarchild\fP,
\fBfreebddvarnode\fP,
\fBfreebddindexnode\fP,
\fBfreebddvar\fP,
\fBfreebddindex\fP,
\fBfreebddassoc\fP,
\fBfreebddassocnode\fP,
\fBfreebddnamein\fP,
\fBfreebddindexin\fP,
\fBfreebddsystem\fP,
\fBfreebddcircuit\fP,
\fBgarbagebddsystem\fP,
\fBgetbddheathvar\fP,
\fBgetbddheath\fP,
\fBdelbddheath\fP,
\fBsetbddhnodefunc\fP,
\fBgetbddhnodesize\fP,
\fBgetbddhnodekey\fP,
\fBgetbddhnodeindex\fP,
\fBcheckbddhnode\fP,
\fBcreatebddhnodetable\fP,
\fBdestroybddhnodetable\fP,
\fBresetbddhnodetable\fP,
\fBresizebddhnodetable\fP,
\fBstretchbddhnodetable\fP,
\fBaddbddhnode\fP,
\fBdelbddhnode\fP,
\fBviewbddhnode\fP,
\fBviewbddhnodetable\fP,
\fBviewbddindexnode\fP,
\fBviewbddvarnode\fP,
\fBsetbddhoperfunc\fP,
\fBgetbddhopersize\fP,
\fBgetbddhoperkey\fP,
\fBcreatebddhopertable\fP,
\fBdestroybddhopertable\fP,
\fBresetbddhopertable\fP,
\fBaddbddhoper\fP,
\fBsearchbddhoper\fP,
\fBviewbddhoper\fP,
\fBviewbddhopertable\fP,
\fBimplybddnode\fP,
\fBintersectbddnode\fP,
\fBmarkbddnode\fP,
\fBunmarkbddnode\fP,
\fBgetbddnodenum\fP,
\fBgetbddnodesize\fP,
\fBaddbddnode\fP,
\fBaddbddnodelist\fP,
\fBdelbddnode\fP,
\fBdelbddnodelist\fP,
\fBviewbddnode\fP,
\fBincbddrefext\fP,
\fBincbddrefint\fP,
\fBdecbddrefext\fP,
\fBdecbddrefint\fP,
\fBsetbddrefext\fP,
\fBunsetbddrefext\fP,
\fBclearbddsystemrefint\fP,
\fBclearbddsystemrefext\fP,
\fBclearbddsystemref\fP,
\fBrelprodbddnodeassoc\fP,
\fBreorderbddvartreewindow2\fP,
\fBreorderbddvartreewindow3\fP,
\fBreorderbddsystemsimple\fP,
\fBreorderbddsystemwindow\fP,
\fBreorderbddsystemtop\fP,
\fBreorderbddsystemdynamic\fP,
\fBresizebddvarchild\fP,
\fBresizebddvarnode\fP,
\fBresizebddvar\fP,
\fBresizebddindexnode\fP,
\fBresizebddindex\fP,
\fBresizebddassocnode\fP,
\fBresizebddnamein\fP,
\fBresizebddindexin\fP,
\fBsatisfybddnode\fP,
\fBsimpbddnodedcon\fP,
\fBsimpbddnodedcoff\fP,
\fBsubstbddnodeassoc\fP,
\fBgetbddnodesupport\fP,
\fBisbddvarinsupport\fP,
\fBcreatebddsystem\fP,
\fBresetbddsystem\fP,
\fBdestroybddsystem\fP,
\fBviewbddsystem\fP,
\fBviewbddsysteminfo\fP,
\fBtestbddcircuit\fP,
\fBaddbdduserfunc\fP,
\fBdelbdduserfunc\fP,
\fBexecbdduserfunc\fP,
\fBdestroybdduserfunc\fP,
\fBnewbddvar\fP,
\fBaddbddvar\fP,
\fBaddbddvarlast\fP,
\fBaddbddvarfirst\fP,
\fBaddbddvarbefore\fP,
\fBaddbddvarafter\fP,
\fBsweepbddvar\fP,
\fBswapbddvar\fP,
\fBgetbddvarbyindex\fP,
\fBgetbddvarindex\fP,
\fBgetbddvarnode\fP,
\fBgetbddvarnodebyindex\fP,
\fBaddbddvarauxsingle\fP,
\fBaddbddvarauxglobal\fP,
\fBsearchbddvartree\fP,
\fBdeltabddvartree\fP,
\fBshiftbddvartree\fP,
\fBaddbddvartree\fP,
\fBswapbddvartree\fP,
\fBcreatebddvartree\fP,
\fBresetbddvartree\fP,
\fBdestroybddvartree\fP,
\fBviewbddvartree\fP.
.SH SEE ALSO
.BR \fBaut\fP(1), \fBabl\fP(1).
.so man1/alc_bug_report.1

View File

@ -1,79 +0,0 @@
man_MANS = addbddassoc.3 \
addbddcircuitabl.3 \
addbddcircuitin.3 \
addbddcircuitout.3 \
addbddnode.3 \
addbddnodeassoc.3 \
addbddnodelist.3 \
addbddvar.3 \
addbddvarafter.3 \
addbddvarbefore.3 \
addbddvarfirst.3 \
addbddvarlast.3 \
applybddnode.3 \
applybddnodeite.3 \
applybddnodelist.3 \
applybddnodenot.3 \
applybddnodeterm.3 \
clearbddsystemref.3 \
clearbddsystemrefext.3 \
clearbddsystemrefint.3 \
cofactorbddnode.3 \
composebddnode.3 \
convertbddcircuitabl.3 \
convertbddcircuitsumabl.3 \
convertbddindexabl.3 \
convertbddmuxabl.3 \
convertbddnodeabl.3 \
convertbddnodesumabl.3 \
createbddcircuit.3 \
createbddsystem.3 \
decbddrefext.3 \
decbddrefint.3 \
delbddassoc.3 \
delbddcircuitout.3 \
delbddnode.3 \
delbddnodeassoc.3 \
delbddnodelist.3 \
destroybddassoc.3 \
destroybddcircuit.3 \
destroybddsystem.3 \
existbddnodeassocoff.3 \
existbddnodeassocon.3 \
garbagebddsystem.3 \
getbddnodenum.3 \
getbddnodesize.3 \
getbddnodesupport.3 \
getbddvarbyindex.3 \
getbddvarindex.3 \
getbddvarnode.3 \
getbddvarnodebyindex.3 \
implybddnode.3 \
incbddrefext.3 \
incbddrefint.3 \
intersectbddnode.3 \
isbddvarinsupport.3 \
markbddnode.3 \
relprodbddnodeassoc.3 \
reorderbddsystemdynamic.3 \
reorderbddsystemsimple.3 \
reorderbddsystemtop.3 \
reorderbddsystemwindow.3 \
resetbddcircuit.3 \
resetbddsystem.3 \
restrictbddnode.3 \
satisfybddnode.3 \
searchbddcircuitin.3 \
searchbddcircuitout.3 \
setbddrefext.3 \
simpbddnodedcoff.3 \
simpbddnodedcon.3 \
substbddnodeassoc.3 \
swapbddvar.3 \
testbddcircuit.3 \
unmarkbddnode.3 \
unsetbddrefext.3 \
viewbddcircuit.3 \
viewbddnode.3 \
viewbddsystem.3 \
viewbddsysteminfo.3

View File

@ -1,86 +0,0 @@
.\" $Id: addbddassoc.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddassoc.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDASSOC 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddassoc \- creates a new association variables.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddassoc \(**addbddassoc( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBaddbddassoc\fP creates a new association variables in the \fBbdd\fP system
\fIBddSystem\fP. If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBaddbddassoc\fP returns a pointer to the new variable association.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"no more variable association, error !"
.ft R
.RS
There is no variable association number left.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddSubst;
bddnode \(**BddVariable;
bddassoc \(**Assoc;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_OR,
createablatom( "i2" ),
createablatom( "i3" ) );
BddSubst = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
Assoc = addbddassoc( (bddsystem \(**)0 );
addbddnodeassoc( (bddsystem \(**)0, Assoc, Variable, BddSubst );
BddNode = substbddnodeassoc( (bddsystem \(**)0, BddSubst, Assoc );
delbddassoc( (bddsystem \(**)0, Assoc );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays ((i3 or i2) and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,82 +0,0 @@
.\" $Id: addbddcircuitabl.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddcircuitabl.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDCIRCUITABL 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddcircuitabl \- converts an \fBabl\fP expression to a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddcircuitabl( BddCircuit, Expr )
bddcircuit \(**BddCircuit;
chain_list \(**Expr;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddCircuit\fP
The \fBbdd\fP circuit.
.TP
\fIExpr\fP
The expression to convert.
.SH DESCRIPTION
\fBaddbddcircuitabl\fP converts the \fBabl\fP expression \fIExpr\fP
to a \fBbdd\fP node. The \fIBddCircuit\fP is used to translate
the atomic expressions into variable nodes.
If a null pointer is given, the default \fBbdd\fP circuit is used.
If an atomic expression doesn't appear in the \fIBddCircuit\fP
input names hash table or output names hash table,
then \fIaddbddcircuitabl\fP adds a new input by calling the function
\fIaddbddcircuitin\fP with the BDD_IN_MODE_LAST mode.
.br
.SH RETURN VALUE
\fBaddbddcircuitabl\fP returns a pointer to the \fBbdd\fP node translated.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"bad operator xxx error !"
.ft R
.RS
The \fIExpr\fP parameter must be a well defined \fBabl\fP expression.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays (i0 and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR abl (1),
.BR convertbddcircuitabl(3).
.so man1/alc_bug_report.1

View File

@ -1,96 +0,0 @@
.\" $Id: addbddcircuitin.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddcircuitin.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDCIRCUITIN 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddcircuitin \- adds an input in a \fBbdd\fP circuit.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddcircuitin( BddCircuit, InputName, Index, Mode )
bddcircuit \(**BddCircuit;
char \(**InputName;
bddindex Index;
long Mode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddCircuit\fP
The \fBbdd\fP circuit.
.TP
\fIInputName\fP
The name of the input.
.TP
\fIIndex\fP
The \fBbdd\fP index of the input.
.TP
\fIMode\fP
The mode.
.SH DESCRIPTION
\fBaddbddcircuitin\fP adds an input \fIInputName\fP in the \fBbdd\fP circuit
\fIBddCircuit\fP. If a null pointer is given, the default \fBbdd\fP circuit is used.
If the input \fIInputName\fP exists already, its node pointer is returned.
The \fIMode\fP parameter specifies how to create the new variable associated
to the name \fIInputName\fP. The \fIIndex\fP parameter is used with the
BDD_IN_MODE_BEFORE and BDD_IN_MODE_AFTER mode.
The \fIMode\fP parameter can takes the following values :
.TP 20
BDD_IN_MODE_FIRST
adds a variable before all others.
.TP
BDD_IN_MODE_LAST
adds a variable after all others.
.TP
BDD_IN_MODE_BEFORE
adds a variable before the one specified by \fIIndex\fP.
.TP
BDD_IN_MODE_AFTER
adds a variable after the one specified by \fIIndex\fP.
.TP
BDD_IN_MODE_IMPOSE
if this flag is set, only the variables found in the \fIBddCircuit\fP
are taken into account. It permits to merge variables from different
circuit working on the same \fBbdd\fP system.
.br
.SH RETURN VALUE
\fBaddbddcircuitin\fP returns a pointer to the new created node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"unknwon in mode xxx error !"
.ft R
.RS
The \fIMode\fP parameter must be defined.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
addbddcircuitin ( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
...
BddNode = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,66 +0,0 @@
.\" $Id: addbddcircuitout.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddcircuitout.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDCIRCUITOUT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddcircuitout \- adds an output in a \fBbdd\fP circuit.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddcircuitout( BddCircuit, OutputName, BddNode )
bddcircuit \(**BddCircuit;
char \(**OutputName;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddCircuit\fP
The \fBbdd\fP circuit.
.TP
\fIOutputName\fP
The name of the output.
.TP
\fIBddNode\fP
The \fBbdd\fP node of the output.
.SH DESCRIPTION
\fBaddbddcircuitout\fP adds \fIBddNode\fP as an output \fIOutputName\fP in the \fBbdd\fP circuit
\fIBddCircuit\fP. If a null pointer is given, the default \fBbdd\fP circuit is used.
If the output \fIOutputName\fP exists already, the number of external reference of the old node
is decremented, and the output node is replaced by the new one.
.br
.SH RETURN VALUE
\fBaddbddcircuitout\fP returns the node \fIBddNode\fP with its number of external
reference incremented.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
...
addbddcircuitout( (bddcircuit \(**)0, "Out0", BddNode );
...
BddNode = searchbddcircuitout( (bddcircuit \(**)0, "Out0" );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.BR searchbddcircuitout(3).
.so man1/alc_bug_report.1

View File

@ -1,83 +0,0 @@
.\" $Id: addbddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddnode \- adds a new \fBbdd\fP node in the \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddnode( BddSystem, Index, High, Low )
bddsystem \(**BddSystem;
bddindex Index;
bddnode \(**High;
bddnode \(**Low;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIIndex\fP
The \fBbdd\fP index.
.TP
\fIHigh\fP
The \fBbdd\fP high pointer.
.TP
\fILow\fP
The \fBbdd\fP low pointer.
.SH DESCRIPTION
\fBaddbddnode\fP adds a new node with the index \fIIndex\fP,
\fIHigh\fP as HIGH pointer, and \fILow\fP as LOW pointer
in the \fBbdd\fP system \fIBddSystem\fP. If the \fBbdd\fP node exist
already \fBaddbddnode\fP return its pointer.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBaddbddnode\fP returns a pointer to the resulting \fBbdd\fP node
with its number of external reference incremented.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range"
.ft R
.RS
The \fIIndex\fP parameter must be a valid index.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
/* displays (not i0) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,101 +0,0 @@
.\" $Id: addbddnodeassoc.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddnodeassoc.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDNODEASSOC 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddnodeassoc \- adds a \fBbdd\fP node in a variable association.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddassoc \(**addbddnodeassoc( BddSystem, BddAssoc, Variable, BddNode )
bddsystem \(**BddSystem;
bddassoc \(**BddAssoc;
bddvar Variable;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddAssoc\fP
The variable association.
.TP
\fIVariable\fP
The variable number.
.TP
\fIBddNode\fP
The \fBbdd\fP node to add.
.SH DESCRIPTION
\fBaddbddnodeassoc\fP adds the \fBbdd\fP node \fIBddNode\fP, associated to the
variable number \fIVariable\fP, in the variable association \fIBddAssoc\fP,
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The number of external reference of \fIBddNode\fP is incremented.
.br
.SH RETURN VALUE
\fBaddbddnodeassoc\fP returns a pointer to the variable association.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range, error !"
.ft R
.RS
The \fIVariable\fP parameter must be less or equal to
the \fIBddSystem->NUMBER_VAR\fP field.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddSubst;
bddnode \(**BddVariable;
bddassoc \(**Assoc;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_OR,
createablatom( "i2" ),
createablatom( "i3" ) );
BddSubst = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
Assoc = addbddassoc( (bddsystem \(**)0 );
addbddnodeassoc( (bddsystem \(**)0, Assoc, Variable, BddSubst );
BddNode = substbddnodeassoc( (bddsystem \(**)0, BddSubst, Assoc );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays ((i3 or i2) and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,78 +0,0 @@
.\" $Id: addbddnodelist.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddnodelist.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDNODELIST 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddnodelist \- adds a node in a \fIchain_list\fP.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
chain_list \(**addbddnodelist( BddSystem, HeadList, BddNode )
bddsystem \(**BddSystem;
chain_list \(**HeadList;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIHeadList\fP
The head of the \fIchain_list\fP.
.TP
\fIBddNode\fP
The \fBbdd\fP node to add.
.SH DESCRIPTION
\fBaddbddnodelist\fP adds the node \fIBddNode\fP in the ordered list
\fIHeadList\fP, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The number of external reference of \fIBddNode\fP is incremented.
.br
.SH RETURN VALUE
\fBaddbddnodelist\fP returns the new head of the list.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**BddList;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddList = (chain_list \(**)0;
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i0", 0, BDD_IN_MODE_FIRST ) );
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i1", 0, BDD_IN_MODE_FIRST );
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i2", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnodelist( (bddsystem \(**)0, ABL_AND, BddList );
delbddnodelist( (bddsystem \(**)0, BddList );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
/* displays (i0 and i1 and i2) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,73 +0,0 @@
.\" $Id: addbddvar.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddvar.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDVAR 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddvar \- adds a new variable in the \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddvar( BddSystem, Variable )
bddsystem \(**BddSystem;
bddvar Variable;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIVariable\fP
The variable number.
.SH DESCRIPTION
\fBaddbddvar\fP creates a new variable, with the number \fIVariable\fP,
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBaddbddvar\fP returns a pointer to the \fBbdd\fP node of the new variable.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"no more variables, error !"
.ft R
.RS
There is no variable number left.
.RE
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range, error !"
.ft R
.RS
The \fIVariable\fP parameter must be less or equal to
the \fIBddSystem->NUMBER_VAR\fP field.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvar( (bddsystem \(**)0, 0 );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,75 +0,0 @@
.\" $Id: addbddvarafter.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddvarafter.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDVARAFTER 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddvarafter \- adds a new variable, after an existing one.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddvarafter( BddSystem )
bddsystem \(**BddSystem;
bddindex Index;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIIndex\fP
The \fBbdd\fP index of an existing variable.
.SH DESCRIPTION
\fBaddbddvarafter\fP creates a new variable, with the number
\fIBddSystem\fP->INDEX_TO_VAR[ \fIIndex\fP ] + 1
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBaddbddvarafter\fP returns a pointer to the \fBbdd\fP node of the new variable.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"no more variables, error !"
.ft R
.RS
There is no variable number left.
.RE
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range, error !"
.ft R
.RS
The \fIIndex\fP parameter must be a valid index.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode1 = addbddvarfirst( (bddsystem \(**)0 );
BddNode2 = addbddvarafter( (bddsystem \(**)0, BddNode1->INDEX );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,75 +0,0 @@
.\" $Id: addbddvarbefore.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddvarbefore.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDVARBEFORE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddvarbefore \- adds a new variable, before an existing one.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddvarbefore( BddSystem )
bddsystem \(**BddSystem;
bddindex Index;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIIndex\fP
The \fBbdd\fP index of an existing variable.
.SH DESCRIPTION
\fBaddbddvarbefore\fP creates a new variable, with the number
\fIBddSystem\fP->INDEX_TO_VAR[ \fIIndex\fP ]
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBaddbddvarbefore\fP returns a pointer to the \fBbdd\fP node of the new variable.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"no more variables, error !"
.ft R
.RS
There is no variable number left.
.RE
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range, error !"
.ft R
.RS
The \fIIndex\fP parameter must be a valid index.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode1 = addbddvarfirst( (bddsystem \(**)0 );
BddNode2 = addbddvarbefore( (bddsystem \(**)0, BddNode1->INDEX );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,59 +0,0 @@
.\" $Id: addbddvarfirst.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddvarfirst.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDVARFIRST 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddvarfirst \- adds a new variable, before all others.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddvarfirst( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBaddbddvarfirst\fP creates a new variable, with the number 0,
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBaddbddvarfirst\fP returns a pointer to the \fBbdd\fP node of the new variable.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"no more variables, error !"
.ft R
.RS
There is no variable number left.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvarfirst( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,59 +0,0 @@
.\" $Id: addbddvarlast.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)addbddvarlast.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ADDBDDVARLAST 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
addbddvarlast \- adds a new variable, after all others.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**addbddvarlast( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBaddbddvarlast\fP creates a new variable, with the number
\fIBddLocalSystem->NUMBER_VAR\fP in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBaddbddvarlast\fP returns a pointer to the \fBbdd\fP node of the new variable.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"no more variables, error !"
.ft R
.RS
There is no variable number left.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvarlast( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,85 +0,0 @@
.\" $Id: applybddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)applybddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH APPLYBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
applybddnode \- applies an operator on two \fBbdd\fP nodes.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**applybddnode( BddSystem, Oper, BddNode1, BddNode2 )
bddsystem \(**BddSystem;
long Oper;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIOper\fP
The binary operator.
.TP
\fIBddNode1\fP
The first \fBbdd\fP node.
.TP
\fIBddNode2\fP
The second \fBbdd\fP node.
.SH DESCRIPTION
\fBapplybddnode\fP computes the boolean function \fIBddNode1\fP
\fIOper\fP \fIBddNode2\fP in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBapplybddnode\fP returns a pointer to the resulting \fBbdd\fP node
with its number of external reference incremented.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"bad operator xxx error !"
.ft R
.RS
The \fIOper\fP parameter must be a valid binary operator.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
addbddcircuitin( (bddcircuit \(**)0, "i1", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnode( (bddsystem \(**)0,
ABL_AND,
searchbddcircuitin( (bddcircuit \(**)0, "i0" ),
searchbddcircuitin( (bddcircuit \(**)0, "i1" ) );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
/* displays (i0 and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,78 +0,0 @@
.\" $Id: applybddnodeite.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)applybddnodeite.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH APPLYBDDNODEITE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
applybddnodeite \- computes the IF-THEN-ELSE logical operation.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**applybddnodeite( BddSystem, BddIf, BddThen, BddElse )
bddnode \(**BddSystem;
bddnode \(**BddIf;
bddnode \(**BddThen;
bddnode \(**BddElse;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddIf\fP
The IF \fBbdd\fP node.
.TP
\fIBddThen\fP
The THEN \fBbdd\fP node.
.TP
\fIBddElse\fP
The ELSE \fBbdd\fP node.
.SH DESCRIPTION
\fBapplybddnodeite\fP computes the following logical function
(\fIBddIf\fP AND \fIBddThen\fP) OR ((NOT \fIBddIf\fP) AND \fIBddElse\fP)
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBapplybddnodeite\fP returns a pointer to the resulting \fBbdd\fP node
with its number of external reference incremented.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
addbddcircuitin( (bddcircuit \(**)0, "i1", 0, BDD_IN_MODE_FIRST );
addbddcircuitin( (bddcircuit \(**)0, "i2", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnodeite( (bddsystem \(**)0,
searchbddcircuitin( (bddcircuit \(**)0, "i0" ),
searchbddcircuitin( (bddcircuit \(**)0, "i1" ),
searchbddcircuitin( (bddcircuit \(**)0, "i2" ) );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
/* displays ((i0 and i1) or ((not i0) and i2) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,96 +0,0 @@
.\" $Id: applybddnodelist.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)applybddnodelist.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH APPLYBDDNODELIST 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
applybddnodelist \- applies an opertor to a \fBbdd\fP nodes list.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**applybddnodelist( BddSystem, Oper, BddList )
bddsystem \(**BddSystem;
long Oper;
chain_list \(**BddList;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIOper\fP
The operator.
.TP
\fIBddList\fP
The \fBbdd\fP nodes list.
.SH DESCRIPTION
\fBapplybddnodelist\fP applies the boolean operator \fIOper\fP to the
\fBbdd\fP nodes list \fIBddList\fP in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBapplybddnodelist\fP returns a pointer to the resulting \fBbdd\fP node
with its number of external reference incremented.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"bad operator xxx error !"
.ft R
.RS
The \fIOper\fP parameter must be a valid binary operator.
.RE
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"bad list !"
.ft R
.RS
The \fIBddList\fP parameter must be a valid list.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**BddList;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddList = (chain_list \(**)0;
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i0", 0, BDD_IN_MODE_FIRST ) );
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i1", 0, BDD_IN_MODE_FIRST );
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i2", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnodelist( (bddsystem \(**)0, ABL_AND, BddList );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
/* displays (i0 and i1 and i2) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,68 +0,0 @@
.\" $Id: applybddnodenot.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)applybddnodenot.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH APPLYBDDNODENOT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
applybddnodenot \- complements a \fBbdd\fP.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**applybddnodenot( BddSystem, BddNode )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node to complement.
.SH DESCRIPTION
\fBapplybddnodenot\fP complements \fIBddNode\fP in the \fBbdd\fP
system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBapplybddnodenot\fP returns a pointer to the resulting \fBbdd\fP node
with its number of external reference incremented.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
addbddcircuitin( (bddcircuit \(**)0, "i1", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnode( (bddsystem \(**)0,
ABL_AND,
searchbddcircuitin( (bddcircuit \(**)0, "i0" ),
searchbddcircuitin( (bddcircuit \(**)0, "i1" ) );
BddNode = applybddnodenot( (bddsystem \(**)0, decbddrefext( BddNode ) );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
/* displays (i0 nand i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,85 +0,0 @@
.\" $Id: applybddnodeterm.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)applybddnodeterm.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH APPLYBDDNODETERM 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
applybddnodeterm \- applies an operator on two \fBbdd\fP nodes.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**applybddnodeterm( BddSystem, Oper, Index, BddNode )
bddsystem \(**BddSystem;
long Oper;
bddindex Index;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIOper\fP
The binary operator.
.TP
\fIIndex\fP
The index of the terminal \fBbdd\fP node.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBapplybddnodeterm\fP computes the boolean function \fIBddNode\fP
\fIOper\fP and the terminal node corresponding to \fIIndex\fP
in the \fBbdd\fP system \fIBddSystem\fP. The \fIIndex\fP parameter
can take only the two following values BDD_INDEX_ONE and BDD_INDEX_ZERO.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBapplybddnodeterm\fP returns a pointer to the resulting \fBbdd\fP node
with its number of external reference incremented.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"bad operator xxx error !"
.ft R
.RS
The \fIOper\fP parameter must be a valid binary operator.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnodeterm( (bddsystem \(**)0,
ABL_XOR, BDD_INDEX_ONE,
searchbddcircuitin( (bddcircuit \(**)0, "i0" ) );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
/* displays (not i0) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,52 +0,0 @@
.\" $Id: clearbddsystemref.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)clearbddsystemref.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CLEARBDDSYSTEMREF 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
clearbddsystemref \- clears the references for all \fBbdd\fP nodes.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void clearbddsystemref( BddSystem )
bddsystem \(*BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBclearbddsystemref\fP clears the internal and external references
of all the \fBbdd\fP nodes in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBclearbddsystemref\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
clearbddsystemref( (bddsystem \(**)0 );
...
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR clearbddsystemrefint(3),
.BR clearbddsystemrefext(3).
.so man1/alc_bug_report.1

View File

@ -1,52 +0,0 @@
.\" $Id: clearbddsystemrefext.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)clearbddsystemrefext.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CLEARBDDSYSTEMREFEXT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
clearbddsystemrefext \- clears the external references for all \fBbdd\fP nodes.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void clearbddsystemrefext( BddSystem )
bddsystem \(*BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBclearbddsystemrefext\fP clears the external references
of all the \fBbdd\fP nodes in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBclearbddsystemrefext\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
clearbddsystemrefext( (bddsystem \(**)0 );
...
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR clearbddsystemref(3),
.BR clearbddsystemrefint(3).
.so man1/alc_bug_report.1

View File

@ -1,52 +0,0 @@
.\" $Id: clearbddsystemrefint.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)clearbddsystemrefint.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CLEARBDDSYSTEMREFINT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
clearbddsystemrefint \- clears the internal references for all \fBbdd\fP nodes.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void clearbddsystemrefint( BddSystem )
bddsystem \(*BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBclearbddsystemrefint\fP clears the internal references
of all the \fBbdd\fP nodes in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBclearbddsystemrefint\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
clearbddsystemrefint( (bddsystem \(**)0 );
...
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR clearbddsystemref(3),
.BR clearbddsystemrefext(3).
.so man1/alc_bug_report.1

View File

@ -1,88 +0,0 @@
.\" $Id: cofactorbddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)cofactorbddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH COFACTORBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
cofactorbddnode \- computes the generalized cofactor.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**cofactorbddnode( BddSystem, BddNode1, BddNode2 )
bddsystem \(**BddSystem;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode1\fP
The first \fBbdd\fP node.
.TP
\fIBddNode2\fP
The second \fBbdd\fP node.
.SH DESCRIPTION
\fBcofactorbddnode\fP computes the generalized cofactor of
\fIBddNode1\fP by \fIBddNode2\fP, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBcofactorbddnode\fP returns the resulting \fBbdd\fP node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range"
.ft R
.RS
The \fIBddNode2\fP parameter must be different to the zero \fBbdd\fP node.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_OR,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode1 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode2 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddNode = cofactorbddnode( (bddsystem \(**)0, BddNode1, BddNode2 );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays '1' */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,97 +0,0 @@
.\" $Id: composebddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)composebddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH COMPOSEBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
composebddnode \- substitutes a variable by a \fBbdd\fP in another \fBbdd\fP.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**composebddnode( BddSystem, BddNode, Variable, BddSubst )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
bddvar Variable;
bddnode \(**BddSubst;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.TP
\fIVariable\fP
The variable to find.
.TP
\fIBddSubst\fP
The \fBbdd\fP to substitute with.
.SH DESCRIPTION
\fBcomposebddnode\fP substitutes all the occurency of the variable \fIVariable\fP
in the \fBbdd\fP node \fIBddNode\fP by the \fBbdd\fP node \fIBddSubst\fP, in the
\fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBcomposebddnode\fP returns the resulting \fBbdd\fP node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range, error !"
.ft R
.RS
The \fIVariable\fP parameter must be less or equal to
the \fIBddSystem->NUMBER_VAR\fP field.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddVariable;
bddnode \(**BddNode;
bddnode \(**BddSubst;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_OR,
createablatom( "i2" ),
createablatom( "i3" ) );
BddSubst = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
BddNode = composebddnode( (bddsystem \(**)0, BddNode, Variable, BddSubst );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays (i1 and (i2 or i3)) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,69 +0,0 @@
.\" $Id: convertbddcircuitabl.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)convertbddcircuitabl.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CONVERTBDDCIRCUITABL 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
convertbddcircuitabl \- converts a \fBbdd\fP node to an \fBabl\fP expression.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
chain_list \(**convertbddcircuitabl( BddCircuit, BddNode )
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddCircuit\fP
The \fBbdd\fP circuit.
.TP
\fIBddNode\fP
The \fBbdd\fP node to convert.
.SH DESCRIPTION
\fBconvertbddcircuitabl\fP converts the \fBbdd\fP node
to an \fBabl\fP expression. The \fIBddCircuit\fP is used to translate
the variable nodes into atomic expressions.
If a null pointer is given, the default \fBbdd\fP circuit is used.
.br
.SH RETURN VALUE
\fBconvertbddcircuitabl\fP returns a pointer to the \fBabl\fP expression translated.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays (i0 and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR abl (1),
.BR addbddcircuitabl(3).
.so man1/alc_bug_report.1

View File

@ -1,69 +0,0 @@
.\" $Id: convertbddcircuitsumabl.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)convertbddcircuitsumabl.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CONVERTBDDCIRCUITSUMABL 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
convertbddcircuitsumabl \- converts a \fBbdd\fP node to an \fBabl\fP expression.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
chain_list \(**convertbddcircuitsumabl( BddCircuit, BddNode )
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddCircuit\fP
The \fBbdd\fP circuit.
.TP
\fIBddNode\fP
The \fBbdd\fP node to convert.
.SH DESCRIPTION
\fBconvertbddcircuitsumabl\fP converts the \fBbdd\fP node
to a non optimal \fBabl\fP expression. The \fIBddCircuit\fP is used to translate
the variable nodes into atomic expressions.
If a null pointer is given, the default \fBbdd\fP circuit is used.
.br
.SH RETURN VALUE
\fBconvertbddcircuitsumabl\fP returns a pointer to the \fBabl\fP expression translated.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitsumabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = convertbddcircuitsumabl( BddCircuit, BddNode );
/* displays (i0 and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR abl (1),
.BR addbddcircuitabl(3).
.so man1/alc_bug_report.1

View File

@ -1,76 +0,0 @@
.\" $Id: convertbddindexabl.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)convertbddindexabl.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CONVERTBDDINDEXABL 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
convertbddindexabl \- converts a \fBbdd\fP index to an \fBabl\fP expression.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
chain_list *convertbddnodeabl( BddSystem, NameArray, IndexArray, BddNode )
bddsystem \(**BddSystem;
char \(**\(**NameArray;
bddindex \(**IndexArray;
bddindex Index;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fINameArray\fP
The array of names.
.TP
\fIIndexArray\fP
The array of indexes.
.TP
\fIIndex\fP
The \fBbdd\fP index to convert.
.SH DESCRIPTION
\fBconvertbddindexabl\fP converts the \fBbdd\fP index \fIIndex\fP
to an \fBabl\fP expression in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The \fINameArray\fP, and \fIIndexArray\fP parameters are used
to translate the variable nodes into atomic expressions.
The array \fINameArray\fP is list of names.
The array \fIIndexArray\fP does the correspondence between a \fBbdd\fP index
and a slot in the \fINameArray\fP. If the \fIIndexArray\fP parameter
is a null pointer, then the name of the \fBbdd\fP index BDD_INDEX_MIN is assumed
to be the first slot of the \fINameArray\fP, and so on.
.br
.SH RETURN VALUE
\fBconvertbddindexabl\fP returns a pointer to the \fBabl\fP expression translated.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
chain_list \(**Expr;
char \(**NameArray[ 1 ];
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvarlast( BddSystem );
NameArray[ 0 ] = namealloc( "i0" );
Expr = convertbddindexabl( BddSystem, NameArray, (bddindex \(**)0, BddNode->INDEX );
/* displays i0 */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,90 +0,0 @@
.\" $Id: convertbddmuxabl.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)convertbddmuxabl.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CONVERTBDDMUXABL 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
convertbddmuxabl \- converts two \fBbdd\fP nodes to an \fBabl\fP multiplexor expression.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
chain_list *convertbddmuxabl( BddSystem, NameArray, IndexArray, Equation, BddHigh, BddLow )
bddsystem \(*BddSystem;
char \(*\(*NameArray;
bddindex \(*IndexArray;
chain_list \(*Equation;
bddnode \(*BddHigh;
bddnode \(*BddLow;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fINameArray\fP
The array of names.
.TP
\fIIndexArray\fP
The array of indexes.
.TP
\fIEquation\fP
The multiplexor command.
.TP
\fIBddHigh\fP
The first \fBbdd\fP node.
.TP
\fIBddLow\fP
The second \fBbdd\fP node.
.SH DESCRIPTION
\fBconvertbddmuxabl\fP creates the following \fBabl\fP expression
( \fIBddHigh\fP AND \fIEquation\fP ) OR ( \fIBddLow\fP AND (NOT \fIEquation\fP ) )
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The \fINameArray\fP, and \fIIndexArray\fP parameters are used
to translate the variable nodes into atomic expressions.
The array \fINameArray\fP is list of names.
The array \fIIndexArray\fP does the correspondence between a \fBbdd\fP node
index and a slot in the \fINameArray\fP. If the \fIIndexArray\fP parameter
is a null pointer, then the name of the \fBbdd\fP index BDD_INDEX_MIN is assumed
to be the first slot of the \fINameArray\fP, and so on.
.br
.SH RETURN VALUE
\fBconvertbddmuxabl\fP returns a pointer to the \fBabl\fP expression translated.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
chain_list \(**Expr;
char \(**NameArray[ 2 ];
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode1 = addbddvarlast( BddSystem );
BddNode2 = addbddvarlast( BddSystem );
NameArray[ 0 ] = namealloc( "i0" );
NameArray[ 1 ] = namealloc( "i1" );
Expr = convertbddmuxabl( BddSystem, NameArray, (bddindex \(**)0,
createablatom( "C" ), BddNode1, BddNode2 );
/* displays (i0 and C) or (i1 and (not C)) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR abl (1).
.so man1/alc_bug_report.1

View File

@ -1,77 +0,0 @@
.\" $Id: convertbddnodeabl.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)convertbddnodeabl.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CONVERTBDDNODEABL 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
convertbddnodeabl \- converts a \fBbdd\fP node to an \fBabl\fP expression.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
chain_list *convertbddnodeabl( BddSystem, NameArray, IndexArray, BddNode )
bddsystem \(**BddSystem;
char \(**\(**NameArray;
bddindex \(**IndexArray;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fINameArray\fP
The array of names.
.TP
\fIIndexArray\fP
The array of indexes.
.TP
\fIBddNode\fP
The \fBbdd\fP node to convert.
.SH DESCRIPTION
\fBconvertbddnodeabl\fP converts the \fBbdd\fP node \fIBddNode\fP
to an \fBabl\fP expression in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The \fINameArray\fP, and \fIIndexArray\fP parameters are used
to translate the variable nodes into atomic expressions.
The array \fINameArray\fP is list of names.
The array \fIIndexArray\fP does the correspondence between a \fBbdd\fP node
index and a slot in the \fINameArray\fP. If the \fIIndexArray\fP parameter
is a null pointer, then the name of the \fBbdd\fP index BDD_INDEX_MIN is assumed
to be the first slot of the \fINameArray\fP, and so on.
.br
.SH RETURN VALUE
\fBconvertbddnodeabl\fP returns a pointer to the \fBabl\fP expression translated.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
chain_list \(**Expr;
char \(**NameArray[ 1 ];
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvarlast( BddSystem );
NameArray[ 0 ] = namealloc( "i0" );
Expr = convertbddnodeabl( BddSystem, NameArray, (bddindex \(**)0, BddNode );
/* displays i0 */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR abl (1).
.so man1/alc_bug_report.1

View File

@ -1,77 +0,0 @@
.\" $Id: convertbddnodesumabl.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)convertbddnodesumabl.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CONVERTBDDNODESUMABL 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
convertbddnodesumabl \- converts a \fBbdd\fP node to an \fBabl\fP expression.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
chain_list *convertbddnodesumabl( BddSystem, NameArray, IndexArray, BddNode )
bddsystem \(**BddSystem;
char \(**\(**NameArray;
bddindex \(**IndexArray;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fINameArray\fP
The array of names.
.TP
\fIIndexArray\fP
The array of indexes.
.TP
\fIBddNode\fP
The \fBbdd\fP node to convert.
.SH DESCRIPTION
\fBconvertbddnodesumabl\fP converts the \fBbdd\fP node
to a non optimal \fBabl\fP expression in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The \fINameArray\fP, and \fIIndexArray\fP parameters are used
to translate the variable nodes into atomic expressions.
The array \fINameArray\fP is list of names.
The array \fIIndexArray\fP does the correspondence between a \fBbdd\fP node
index and a slot in the \fINameArray\fP. If the \fIIndexArray\fP parameter
is a null pointer, then the name of the \fBbdd\fP index BDD_INDEX_MIN is assumed
to be the first slot of the \fINameArray\fP, and so on.
.br
.SH RETURN VALUE
\fBconvertbddnodesumabl\fP returns a pointer to the \fBabl\fP expression translated.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
chain_list \(**Expr;
char \(**NameArray[ 1 ];
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvarlast( BddSystem );
NameArray[ 0 ] = namealloc( "i0" );
Expr = convertbddnodesumabl( BddSystem, NameArray, (bddindex \(**)0, BddNode );
/* displays i0 */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR abl (1).
.so man1/alc_bug_report.1

View File

@ -1,66 +0,0 @@
.\" $Id: createbddcircuit.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)createbddcircuit.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CREATEBDDCIRCUIT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
createbddcircuit \- creates a \fBbdd\fP circuit.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddcircuit \(**createbddcircuit( Name, NumberIn, NumberOut, BddSystem )
char \(**Name;
long NumberIn;
long NumberOut;
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIName\fP
Name of the \fBbdd\fP circuit.
.TP
\fINumberIn\fP
Number of inputs.
.TP
\fINumberOut\fP
Number of outputs.
.TP
\fIBddSystem\fP
The \fBbdd\fP system to work on.
.SH DESCRIPTION
\fBcreatebddcircuit\fP creates a \fBbdd\fP circuit with the name \fIName\fP,
with \fINumberIn\fP inputs, and \fINumberOut\fP outputs.
This \fBbdd\fP circuit will use the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBcreatebddcircuit\fP returns a pointer to the \fBbdd\fP circuit created.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
...
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR resetbddcircuit(3),
.BR destroybddcircuit(3).
.so man1/alc_bug_report.1

View File

@ -1,89 +0,0 @@
.\" $Id: createbddsystem.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)createbddsystem.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH CREATEBDDSYSTEM 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
createbddsystem \- creates a \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**createbddsystem( ModelVar, ModelOper, MaxVar, MaxNode )
long ModelVar;
long ModelOper;
long MaxVar;
long MaxNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIModelVar\fP
Initial size of the hash table uses for a variable.
.TP
\fIModelOper\fP
Size of the hash table uses as a cache.
.TP
\fIMaxVar\fP
Initial maximum number of variables.
.TP
\fIMaxNode\fP
Maximum nodes allowed.
.SH DESCRIPTION
\fBcreatebddsystem\fP creates and initializes a \fBbdd\fP system.
.br
.SH RETURN VALUE
\fBcreatebddsystem\fP returns a pointer to the \fBbdd\fP system created.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"system model variable xxx error !"
.ft R
.RS
The \fIModelVar\fP parameter must be a positive value.
.RE
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"system model oper xxx error !"
.ft R
.RS
The \fIModelOper\fP parameter must be a positive value.
.RE
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range error !"
.ft R
.RS
The \fIMaxVar\fP parameter must be less than \fIBDD_MAX_VAR\fP.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
destroybddsystem( BddSystem );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.BR resetbddsytem(3),
.BR destroybddsytem(3).
.
.so man1/alc_bug_report.1

View File

@ -1,70 +0,0 @@
.\" $Id: decbddrefext.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)decbddrefext.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DECBDDREFEXT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
decbddrefext \- decrements the external reference of a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**decbddrefext( BddNode )
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBdecbddrefext\fP decrements the number of external reference
of the \fBbdd\fP node \fIBddNode\fP.
.br
.SH RETURN VALUE
\fBdecbddrefext\fP returns the \fIBddNode\fP pointer.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"negative reference, index xxx error !"
.ft R
.RS
The \fIBddNode\fP must have a postive number of external reference.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
decbddrefext( BddNode );
/* displays Node VAR: 0 INDEX: 2 MARK: 0 REF_EXT: 0 REF_INT: 0 */
viewbddnode( (bddsystem \(**)0, BddNode );
/* displays (not i0) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,71 +0,0 @@
.\" $Id: decbddrefint.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)decbddrefint.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DECBDDREFINT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
decbddrefint \- decrements the internal reference of a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**decbddrefint( BddNode )
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBdecbddrefint\fP decrements the number of internal reference
of the \fBbdd\fP node \fIBddNode\fP.
.br
.SH RETURN VALUE
\fBdecbddrefint\fP returns the \fIBddNode\fP pointer.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"negative reference, index xxx error !"
.ft R
.RS
The \fIBddNode\fP must have a postive number of internal reference.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
incbddrefint( BddNode );
decbddrefint( BddNode );
/* displays Node VAR: 0 INDEX: 2 MARK: 0 REF_EXT: 1 REF_INT: 0 */
viewbddnode( (bddsystem \(**)0, BddNode );
/* displays (not i0) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,82 +0,0 @@
.\" $Id: delbddassoc.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)delbddassoc.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DELBDDASSOC 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
delbddassoc \- deletes a variable association.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
int delbddassoc( BddSystem, BddAssoc )
bddsystem \(**BddSystem;
bddassoc \(**BddAssoc;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddAssoc\fP
The variable association to delete.
.SH DESCRIPTION
\fBdelbddassoc\fP deletes the variable association \fIBddAssoc\fP in the \fBbdd\fP system
\fIBddSystem\fP. If a null pointer is given, the default \fBbdd\fP system is used.
For all the \fBbdd\fP nodes of the variable association
\fIBddAssoc\fP, the number of external reference is decremented.
.br
.SH RETURN VALUE
\fBdelbddassoc\fP returns 1 if the variable association is found, 0 otherwise.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddSubst;
bddnode \(**BddVariable;
bddassoc \(**Assoc;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_OR,
createablatom( "i2" ),
createablatom( "i3" ) );
BddSubst = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
Assoc = delbddassoc( (bddsystem \(**)0 );
addbddnodeassoc( (bddsystem \(**)0, Assoc, Variable, BddSubst );
BddNode = substbddnodeassoc( (bddsystem \(**)0, BddSubst, Assoc );
delbddassoc( (bddsystem \(**)0, Assoc );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays ((i3 or i2) and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,63 +0,0 @@
.\" $Id: delbddcircuitout.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)delbddcircuitout.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DELBDDCIRCUITOUT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
delbddcircuitout \- deletes an output in a \fBbdd\fP circuit.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
int delbddcircuitout( BddCircuit, OutputName )
bddcircuit \(**BddCircuit;
char \(**OutputName;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddCircuit\fP
The \fBbdd\fP circuit.
.TP
\fIOutputName\fP
The name of the output to delete.
.SH DESCRIPTION
\fBdelbddcircuitout\fP deletes the output \fIOutputName\fP
in the \fBbdd\fP circuit \fIBddCircuit\fP. If a null pointer is given,
the default \fBbdd\fP circuit is used. If the output \fIOutputName\fP exists,
the number of external reference of the output node
is decremented.
.br
.SH RETURN VALUE
\fBdelbddcircuitout\fP returns 1 if the output \fIOutputName\fP exist, 0 otherwise.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
...
addbddcircuitout( (bddcircuit \(**)0, "Out0", BddNode );
...
delbddcircuitout( (bddcircuit \(**)0, "Out0" );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.BR searchbddcircuitout(3),
.BR addbddcircuitout(3).
.so man1/alc_bug_report.1

View File

@ -1,66 +0,0 @@
.\" $Id: delbddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)delbddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DELBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
delbddnode \- deletes an unused \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void delbddnode( BddSystem, BddNode )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBdelbddnode\fP tries to delete the \fBbdd\fP node \fIBddNode\fP and its
children, if they have not external reference, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used. The use of this
function is not recommended because, it takes time.
It is better to call the \fIdecbddrefext\fP function, and do a garbage collection
with the \fIgarbagebddsystem\fP function.
.br
.SH RETURN VALUE
\fBdelbddnode\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
delbddnode( (bddsystem \(**)0, decbddrefext( BddNode ) );
/* displays (not i0) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,98 +0,0 @@
.\" $Id: delbddnodeassoc.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)delbddnodeassoc.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DELBDDNODEASSOC 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
delbddnodeassoc \- deletes a \fBbdd\fP node in a variable association.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
int delbddnodeassoc( BddSystem, BddAssoc, Variable )
bddsystem \(**BddSystem;
bddassoc \(**BddAssoc;
bddvar Variable;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddAssoc\fP
The variable association.
.TP
\fIVariable\fP
The variable number.
.SH DESCRIPTION
\fBdelbddnodeassoc\fP deletes the \fBbdd\fP node associated to the
variable number \fIVariable\fP, in the variable association \fIBddAssoc\fP,
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The number of external reference of the associated \fBbdd\fP node is incremented.
.br
.SH RETURN VALUE
\fBdelbddnodeassoc\fP returns 1 if the variable is found, 0 otherwise.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range, error !"
.ft R
.RS
The \fIVariable\fP parameter must be less or equal to
the \fIBddSystem->NUMBER_VAR\fP field.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddSubst;
bddnode \(**BddVariable;
bddassoc \(**Assoc;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_OR,
createablatom( "i2" ),
createablatom( "i3" ) );
BddSubst = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
Assoc = addbddassoc( (bddsystem \(**)0 );
addbddnodeassoc( (bddsystem \(**)0, Assoc, Variable, BddSubst );
BddNode = substbddnodeassoc( (bddsystem \(**)0, BddSubst, Assoc );
delbddnodeassoc( (bddsystem \(**)0, Assoc, Variable );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays ((i3 or i2) and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,74 +0,0 @@
.\" $Id: delbddnodelist.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)delbddnodelist.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DELBDDNODELIST 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
delbddnodelist \- deletes a list of \fBbdd\fP nodes.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void delbddnodelist( BddSystem, HeadList )
bddsystem \(**BddSystem;
chain_list \(**HeadList;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIHeadList\fP
The head of the \fIchain_list\fP.
.SH DESCRIPTION
\fBdelbddnodelist\fP deletes all the \fBbdd\fP nodes of the
list \fIHeadList\fP in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
All the nodes have their external references decremented.
.br
.SH RETURN VALUE
\fBdelbddnodelist\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**BddList;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddList = (chain_list \(**)0;
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i0", 0, BDD_IN_MODE_FIRST ) );
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i1", 0, BDD_IN_MODE_FIRST );
BddList = addbddnodelist( (bddsystem \(**)0, BddList,
addbddcircuitin( (bddcircuit \(**)0,
"i2", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnodelist( (bddsystem \(**)0, ABL_AND, BddList );
delbddnodelist( (bddsystem \(**)0, BddList );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
/* displays (i0 and i1 and i2) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,77 +0,0 @@
.\" $Id: destroybddassoc.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)destroybddassoc.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DESTROYBDDASSOC 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
destroybddassoc \- frees all the variable associations.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddassoc \(**destroybddassoc( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBdestroybddassoc\fP frees all the variable associations in the \fBbdd\fP system
\fIBddSystem\fP. If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBdestroybddassoc\fP returns nothing.
.SH ERRORS
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddSubst;
bddnode \(**BddVariable;
bddassoc \(**Assoc;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_OR,
createablatom( "i2" ),
createablatom( "i3" ) );
BddSubst = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
Assoc = addbddassoc( (bddsystem \(**)0 );
addbddnodeassoc( (bddsystem \(**)0, Assoc, Variable, BddSubst );
BddNode = substbddnodeassoc( (bddsystem \(**)0, BddSubst, Assoc );
delbddassoc( (bddsystem \(**)0, Assoc );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays ((i3 or i2) and i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,50 +0,0 @@
.\" $Id: destroybddcircuit.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)destroybddcircuit.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DESTROYBDDCIRCUIT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
destroybddcircuit \- destroys a \fBbdd\fP circuit.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void destroybddcircuit( BddCircuit )
bddcircuit \(**BddCircuit;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddCircuit\fP
The \fBbdd\fP circuit to destroy.
.SH DESCRIPTION
\fBdestroybddcircuit\fP destroys the \fBbdd\fP circuit \fIBddCircuit\fP.
If a null pointer is given, the default \fBbdd\fP circuit is used.
.br
.SH RETURN VALUE
\fBdestroybddcircuit\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
...
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,47 +0,0 @@
.\" $Id: destroybddsystem.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)destroybddsystem.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH DESTROYBDDSYSTEM 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
destroybddsystem \- destroys a \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void destroybddsystem( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system to destroy.
.SH DESCRIPTION
\fBdestroybddsystem\fP destroys the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBdestroybddsystem\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,90 +0,0 @@
.\" $Id: existbddnodeassocoff.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)existbddnodeassocoff.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH EXISTBDDNODEASSOCOFF 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
existbddnodeassocoff \- computes an existantial quantification.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**existbddnodeassocoff( BddSystem, BddNode, BddAssoc )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
bddassoc \(**BddAssoc;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node to treat.
.TP
\fIBddAssoc\fP
The variable association.
.SH DESCRIPTION
\fBexistbddnodeassocoff\fP suppress in the \fBbdd\fP node \fIBddNode\fP complemented,
all the variables associated with something in the variable association
\fIBddAssoc\fP, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBexistbddnodeassocoff\fP returns the computed \fBbdd\fP node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"bad variable association xxx, error !"
.ft R
.RS
The \fIBddAssoc\fP parameter must a valid variable association.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddSubst;
bddnode \(**BddVariable;
bddassoc \(**Assoc;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_NAND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
Assoc = addbddassoc( (bddsystem \(**)0 );
addbddnodeassoc( (bddsystem \(**)0, Assoc, Variable, BddSystem->ONE );
BddNode = existbddnodeassocoff( (bddsystem \(**)0, BddNode, Assoc );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays (not i1) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,90 +0,0 @@
.\" $Id: existbddnodeassocon.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)existbddnodeassocon.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH EXISTBDDNODEASSOCON 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
existbddnodeassocon \- computes an existantial quantification.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**existbddnodeassocon( BddSystem, BddNode, BddAssoc )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
bddassoc \(**BddAssoc;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node to treat.
.TP
\fIBddAssoc\fP
The variable association.
.SH DESCRIPTION
\fBexistbddnodeassocon\fP suppress in \fIBddNode\fP,
all the variables associated with something in the variable association
\fIBddAssoc\fP, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBexistbddnodeassocon\fP returns the computed \fBbdd\fP node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"bad variable association xxx, error !"
.ft R
.RS
The \fIBddAssoc\fP parameter must a valid variable association.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddSubst;
bddnode \(**BddVariable;
bddassoc \(**Assoc;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
Assoc = addbddassoc( (bddsystem \(**)0 );
addbddnodeassoc( (bddsystem \(**)0, Assoc, Variable, BddSystem->ONE );
BddNode = existbddnodeassocon( (bddsystem \(**)0, BddNode, Assoc );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays i1 */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,62 +0,0 @@
.\" $Id: garbagebddsystem.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)garbagebddsystem.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH GARBAGEBDDSYSTEM 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
garbagebddsystem \- Forces a \fBbdd\fP garbage collection.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void garbagebddsystem( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBgarbagebddsystem\fP frees all the unused \fBbdd\fP nodes in the
system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
A \fBbdd\fP node is unused if its number of reference is null.
.br
.SH RETURN VALUE
\fBgarbagebddsystem\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
addbddcircuitin( (bddcircuit \(**)0, "i1", 0, BDD_IN_MODE_FIRST );
BddNode = applybddnode( (bddsystem \(**)0,
ABL_AND,
searchbddcircuitin( (bddcircuit \(**)0, "i0" ),
searchbddcircuitin( (bddcircuit \(**)0, "i1" ) );
decbddrefext( BddNode );
garbagebddsystem( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,63 +0,0 @@
.\" $Id: getbddnodenum.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)getbddnodenum.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH GETBDDNODENUM 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
getbddnodenum \- gets the number of nodes in a \fBbdd\fP.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
long getbddnodenum( BddSystem, BddNode )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBgetbddnodenum\fP computes the number of different nodes in \fIBddNode\fP,
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBgetbddnodenum\fP returns the number of the different nodes reached.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
printf( "Number nodes: %ld\n",
getbddnodenum( (bddsystem \(**)0, BddNode ) );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,63 +0,0 @@
.\" $Id: getbddnodesize.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)getbddnodesize.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH GETBDDNODESIZE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
getbddnodesize \- gets the number of nodes in a \fBbdd\fP.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
long getbddnodesize( BddSystem, BddNode )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBgetbddnodesize\fP computes the total number of nodes in \fIBddNode\fP,
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBgetbddnodesize\fP returns the number of nodes reached.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
printf( "Number nodes: %ld\n",
getbddnodesize( (bddsystem \(**)0, BddNode ) );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,81 +0,0 @@
.\" $Id: getbddnodesupport.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)getbddnodesupport.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH GETBDDNODESUPPORT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
getbddnodesupport \- gives the variable support of a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void \(**getbddnodesupport( BddSystem, BddNode, Mode )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
int Mode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.TP
\fIMode\fP
The type of support.
.SH DESCRIPTION
\fBgetbddnodesupport\fP gives the support of the \fBbdd\fP node \fIBddNode\fP
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
If \fIMode\fP is BDD_SUPPORT_CHAIN the support is returned using
\fIchain_list\fP else it is returned using \fIptype_list\fP.
The support must be freed using the \fIfreechain\fP or \fIfreeptype\fP functions.
.br
.SH RETURN VALUE
\fBgetablexprsupport\fP returns a pointer to a \fIchain_list\fP or
a \fIptype_list\fP.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
chain_list \(**Support;
chain_list \(**ScanSupport;
bddindex Index;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Support = getablbddnodesupport( (bddsystem \(**0), BddNode, BDD_SUPPORT_CHAIN );
for ( ScanSupport = Support;
ScanSupport != (chain_list \(**)0;
ScanSupport = ScanSupport->NEXT )
{
Index = (bddnode \(**)ScanSupport->INDEX;
printf( "%s ", BddCircuit->NAME_IN[ Index - BDD_INDEX_MIN ] );
}
freechain( Support );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,66 +0,0 @@
.\" $Id: getbddvarbyindex.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)getbddvarbyindex.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH GETBDDVARBYINDEX 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
getbddvarbyindex \- converts \fBbdd\fP index to a variable number.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddindex getbddvarbyindex( BddSystem, Index )
bddsystem \(**BddSystem;
bddindex Index;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIIndex\fP
The \fBbdd\fP index to convert.
.SH DESCRIPTION
\fBgetbddvarbyindex\fP converts the \fBbdd\fP index \fIIndex
to a variable number, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The function uses simply the translation table \fIBddSystem\fP->INDEX_TO_VAR.
.br
.SH RETURN VALUE
\fBgetbddvarbyindex\fP returns the variable number of the \fBbdd\fP index \fIIndex\fP.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range, error !"
.ft R
.RS
The \fIIndex parameter must be a valid index.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvar( (bddsystem \(**)0, 0 );
/* displays 0 */
printf( "%d", getbddvarbyindex( (bddsystem \(**)0, BddNode->INDEX ) );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,67 +0,0 @@
.\" $Id: getbddvarindex.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)getbddvarindex.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH GETBDDVARINDEX 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
getbddvarindex \- converts a variable number in a \fBbdd\fP index.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddindex getbddvarindex( BddSystem, Variable )
bddsystem \(**BddSystem;
bddvar Variable;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIVariable\fP
The variable number to convert.
.SH DESCRIPTION
\fBgetbddvarindex\fP converts the variable number \fIVariable\fP
to a \fBbdd\fP index, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The function uses simply the translation table \fIBddSystem\fP->VAR_TO_INDEX.
.br
.SH RETURN VALUE
\fBgetbddvarindex\fP returns the \fBbdd\fP index of \fIVariable\fP.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range, error !"
.ft R
.RS
The \fIVariable\fP parameter must be less or equal to
the \fIBddSystem->NUMBER_VAR\fP field.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddNode = addbddvar( (bddsystem \(**)0, 0 );
/* displays 2 */
printf( "%d", getbddvarindex( (bddsystem \(**)0, 0 ) );
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,66 +0,0 @@
.\" $Id: getbddvarnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)getbddvarnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH GETBDDVARNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
getbddvarnode \- gives the \fBbdd\fP node of a variable.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**getbddvarnode( BddSystem, Variable )
bddsystem \(**BddSystem;
bddvar Variable;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIVariable\fP
The variable number.
.SH DESCRIPTION
\fBgetbddvarnode\fP gives the \fBbdd\fP node of the variable number
\fIVariable\fP, in the \fBbdd\fP system BddSystem.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBgetbddvarnode\fP returns a pointer to the variable \fBbdd\fP node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range, error !"
.ft R
.RS
The \fIVariable\fP parameter must be less or equal to
the \fIBddSystem->NUMBER_VAR\fP field.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
addbddvar( (bddsystem \(**)0, 0 );
BddNode = getbddvarnode( (bddsystem \(**)0, 0 );
...
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,66 +0,0 @@
.\" $Id: getbddvarnodebyindex.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)getbddvarnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH GETBDDVARNODEBYINDEX 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
getbddvarnode \- gives the \fBbdd\fP node of a variable.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**getbddvarnodebyindex( BddSystem, Index )
bddsystem \(**BddSystem;
bddindex Index;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIIndex\fP
The \fBbdd\fP index.
.SH DESCRIPTION
\fBgetbddvarnode\fP gives the \fBbdd\fP node of the \fBbdd\fP index
\fIIndex\fP, in the \fBbdd\fP system BddSystem.
If a null pointer is given, the default \fBbdd\fP system is used.
The function uses simply the table \fIBddSystem\fP->VAR_NODE.
.br
.SH RETURN VALUE
\fBgetbddvarnode\fP returns a pointer to the variable \fBbdd\fP node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range, error !"
.ft R
.RS
The \fIIndex\fP parameter must be a valid index.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddnode \(**BddNode;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
addbddvar( (bddsystem \(**)0, 0 );
BddNode = getbddvarnodebyindex( (bddsystem \(**)0, 2 );
...
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,78 +0,0 @@
.\" $Id: implybddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)implybddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH IMPLYBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
implybddnode \- computes a \fBbdd\fP that implies a conjonction of two \fBbdd\fP nodes.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**implybddnode( BddSystem, BddNode1, BddNode2 )
bddsystem \(**BddSystem;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode1\fP
The first \fBbdd\fP node.
.TP
\fIBddNode2\fP
The second \fBbdd\fP node.
.SH DESCRIPTION
\fBimplybddnode\fP tests if the intersection of \fIBddNode1\fP and not \fIBddNode2\fP,
exists, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBimplybddnode\fP returns the \fBbdd\fP node zero if there is no
intersection, and a computed \fBbdd\fP node otherwise.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
bddnode \(**BddImply;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_OR,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode1 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode1 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddImply = implybddnode( (bddsystem \(**)0, BddNode1, BddNode2 );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays (i0 and (not i1)) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,60 +0,0 @@
.\" $Id: incbddrefext.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)incbddrefext.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH INCBDDREFEXT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
incbddrefext \- increments the external reference of a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**incbddrefext( BddNode )
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBincbddrefext\fP increments the number of external reference
of the \fBbdd\fP node \fIBddNode\fP.
.br
.SH RETURN VALUE
\fBincbddrefext\fP returns the \fIBddNode\fP pointer.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
incbddrefext( BddNode );
/* displays Node VAR: 0 INDEX: 2 MARK: 0 REF_EXT: 2 REF_INT: 0 */
viewbddnode( (bddsystem \(**)0, BddNode );
/* displays (not i0) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,60 +0,0 @@
.\" $Id: incbddrefint.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)incbddrefint.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH INCBDDREFINT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
incbddrefint \- increments the internal reference of a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**incbddrefint( BddNode )
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBincbddrefint\fP increments the number of internal reference
of the \fBbdd\fP node \fIBddNode\fP.
.br
.SH RETURN VALUE
\fBincbddrefint\fP returns the \fIBddNode\fP pointer.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
BddNode = addbddcircuitin( (bddcircuit \(**)0, "i0", 0, BDD_IN_MODE_FIRST );
BddNode = addbddnode( (bddsystem \(**)0, BddNode->INDEX, BddNode->LOW, BddNode->HIGH );
Expr = convertbddcircuitabl( (bddcircuit \(**)0, BddNode );
incbddrefint( BddNode );
/* displays Node VAR: 0 INDEX: 2 MARK: 0 REF_EXT: 1 REF_INT: 1 */
viewbddnode( (bddsystem \(**)0, BddNode );
/* displays (not i0) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,78 +0,0 @@
.\" $Id: intersectbddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)intersectbddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH INTERSECTBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
intersectbddnode \- tests for an intersection between two \fBbdd\fP nodes.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**intersectbddnode( BddSystem, BddNode1, BddNode2 )
bddsystem \(**BddSystem;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode1\fP
The first \fBbdd\fP node.
.TP
\fIBddNode2\fP
The second \fBbdd\fP node.
.SH DESCRIPTION
\fBintersectbddnode\fP tests if the intersection of \fIBddNode1\fP and \fIBddNode2\fP
exists, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBintersectbddnode\fP returns the \fBbdd\fP node zero if there is no
intersection, and a computed \fBbdd\fP node otherwise.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
bddnode \(**BddImply;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode1 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_OR,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode1 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddImply = intersectbddnode( (bddsystem \(**)0, BddNode1, BddNode2 );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays (i0 and i1)) */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,83 +0,0 @@
.\" $Id: isbddvarinsupport.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)isbddvarinsupport.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH ISBDDVARINSUPPORT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
isbddvarinsupport \- tests if a variable appears in a \fBbdd\fP.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
int isbddvarinsupport( BddSystem, BddNode, Variable )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
bddvar Variable;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.TP
\fIVariable\fP
The variable number.
.SH DESCRIPTION
\fBisbddvarinsupport\fP tests if the variable number \fIVariable\fP
appears in the support of the \fBbdd\fP node \fIBddNode\fP, in the
\fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBisbddvarinsupport\fP returns 1 if \fIVariable\fP appears, 0 otherwise.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range, error !"
.ft R
.RS
The \fIVariable\fP parameter must be less or equal to
the \fIBddSystem->NUMBER_VAR\fP field.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddVariable;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(** 0), BddVariable->INDEX ) );
/* displays 1 */
printf( "%d", isbddvarinsupport( (bddsystem \(**)0, BddNode, Variable ) );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,70 +0,0 @@
.\" $Id: markbddnode.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)markbddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH MARKBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
markbddnode \- marks \fBbdd\fP node with a specified mask.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
long markbddnode( BddSystem, BddNode, Mark )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
bddmark Mark;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node to mark.
.TP
\fIMark\fP
The bit mask.
.SH DESCRIPTION
\fBmarkbddnode\fP marks the \fBbdd\fP node \fIBddNode\fP
with the bit mask \fIMark\fP, in the \fBbdd\fP system BddSystem.
If a null pointer is given, the default \fBbdd\fP system is used.
This function does a OR with the field MARK of the \fBbdd\fP node \fIBddNode\fP,
and the bit mask \fIMark\fP.
.br
.SH RETURN VALUE
\fBmarkbddnode\fP returns the number of the differents marked nodes.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
printf( "Number nodes: %ld\n",
markbddnode( (bddsystem \(**)0, BddNode, 0x0001 ) );
unmarkbddnode( (bddsystem \(**)0, BddNode, 0x0001 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,100 +0,0 @@
.\" $Id: relprodbddnodeassoc.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)relprodbddnodeassoc.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH RELPRODBDDNODEASSOC 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
relprodbddnodeassoc \- computes a relational product.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**relprodbddnodeassoc( BddSystem, BddNode1, BddNode2, BddAssoc )
bddsystem \(**BddSystem;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
bddassoc \(**BddAssoc;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode1\fP
The first \fBbdd\fP node.
.TP
\fIBddNode2\fP
The second \fBbdd\fP node.
.TP
\fIBddAssoc\fP
The variable association.
.SH DESCRIPTION
\fBrelprodbddnodeassoc\fP computes \fIBddNode1\fP AND \fIBddNode2\fP,
and suppress the variables associated with something in the variable association
\fIBddAssoc\fP, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBrelprodbddnodeassoc\fP returns the computed \fBbdd\fP node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"bad variable association xxx, error !"
.ft R
.RS
The \fIBddAssoc\fP parameter must a valid variable association.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
bddnode \(**BddNode1;
bddnode \(**BddNode2;
bddnode \(**BddVariable;
bddassoc \(**Assoc;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_AND,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode1 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
Expr = createablbinexpr( ABL_OR,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode2 = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
Assoc = addbddassoc( (bddsystem \(**)0 );
addbddnodeassoc( (bddsystem \(**)0, Assoc, Variable, BddSystem->ONE );
BddNode = relprodbddnodeassoc( (bddsystem \(**)0, BddNode1, BddNode2, Assoc );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays i1 */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddassoc( (bddsystem \(**)0 );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,67 +0,0 @@
.\" $Id: reorderbddsystemdynamic.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)reorderbddsystemdynamic.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH REORDERBDDSYSTEMDYNAMIC 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
reorderbddsystemdynamic \- specifies the dynamic \fBbdd\fP reorder parameters.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void reorderbddsystemdynamic( BddSystem, ReorderFunc, ReorderLow, ReorderRatio )
bddsystem \(**BddSystem;
void (\(**ReorderFunc)();
long ReorderLow;
long ReorderRatio;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIReorderFunc\fP
The dynamic reorder method.
.TP
\fIReorderLow\fP
The minimum number of \fBbdd\fP nodes.
.TP
\fIReorderRatio\fP
The reorder ratio in percent.
.SH DESCRIPTION
\fBreorderbddsystemdynamic\fP specifies to parameters for the dynamic reorder
in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
If the number of \fBbdd\fP nodes is greater than \fIReorderLow\fP, then
the dynamic reorder function \fIReorderFunc\fP is called. The new
reorder limit is computed as the product of the number of \fBbdd\fP nodes
and the \fIReorderRatio\fP value plus 100. If this limit is less than \fIReorderLow\fP
then the new limit is fixed to \fIReorderLow\fP. If the function \fIReorderFunc\fP is a null
pointer, then the dynamic reorder process is skipped.
.br
.SH RETURN VALUE
\fBreorderbddsystemdynamic\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
reorderbddsystemdynamic( BddSystem, reorderbddsystemwindow, 1000, 50 );
...
destroybddsystem( BddSystem );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,51 +0,0 @@
.\" $Id: reorderbddsystemsimple.3,v 1.1 2002/03/18 11:26:50 ludo Exp $
.\" @(#)reorderbddsystemsimple.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH REORDERBDDSYSTEMSIMPLE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
reorderbddsystemsimple \- reorders the \fBbdd\fP nodes of a \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void reorderbddsystemsimple( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBreorderbddsystemsimple\fP reorders all the \fBbdd\fP nodes of the
\fBbdd\fP system \fIBddSystem\fP, in order to minimize the total
number of \fBbdd\fP nodes.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBreorderbddsystemsimple\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
reorderbddsystemsimple( BddSystem );
...
destroybddsystem( BddSystem );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,51 +0,0 @@
.\" $Id: reorderbddsystemtop.3,v 1.1 2002/03/18 11:26:51 ludo Exp $
.\" @(#)reorderbddsystemtop.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH REORDERBDDSYSTEMTOP 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
reorderbddsystemtop \- reorders the \fBbdd\fP nodes of a \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void reorderbddsystemtop( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBreorderbddsystemtop\fP reorders all the \fBbdd\fP nodes of the
\fBbdd\fP system \fIBddSystem\fP, in order to minimize the total
number of \fBbdd\fP nodes.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBreorderbddsystemtop\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
reorderbddsystemtop( BddSystem );
...
destroybddsystem( BddSystem );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,51 +0,0 @@
.\" $Id: reorderbddsystemwindow.3,v 1.1 2002/03/18 11:26:51 ludo Exp $
.\" @(#)reorderbddsystemwindow.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH REORDERBDDSYSTEMWINDOW 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
reorderbddsystemwindow \- reorders the \fBbdd\fP nodes of a \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void reorderbddsystemwindow( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.SH DESCRIPTION
\fBreorderbddsystemwindow\fP reorders all the \fBbdd\fP nodes of the
\fBbdd\fP system \fIBddSystem\fP, in order to minimize the total
number of \fBbdd\fP nodes.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBreorderbddsystemwindow\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
reorderbddsystemwindow( BddSystem );
...
destroybddsystem( BddSystem );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,53 +0,0 @@
.\" $Id: resetbddcircuit.3,v 1.1 2002/03/18 11:26:51 ludo Exp $
.\" @(#)resetbddcircuit.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH RESETBDDCIRCUIT 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
resetbddcircuit \- resets a \fBbdd\fP circuit.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void resetbddcircuit( BddCircuit )
bddcircuit \(**BddCircuit;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddCircuit\fP
The \fBbdd\fP circuit to reset.
.SH DESCRIPTION
\fBresetbddcircuit\fP resets the \fBbdd\fP circuit \fIBddCircuit\fP.
If a null pointer is given, the default \fBbdd\fP circuit is used.
.br
.SH RETURN VALUE
\fBresetbddcircuit\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
...
resetbddcircuit( (bddcircuit \(**)0 );
...
destroybddsystem( (bddsystem \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1),
.BR createbddcircuit(3),
.BR destroybddcircuit(3).
.so man1/alc_bug_report.1

View File

@ -1,50 +0,0 @@
.\" $Id: resetbddsystem.3,v 1.1 2002/03/18 11:26:51 ludo Exp $
.\" @(#)resetbddsystem.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH RESETBDDSYSTEM 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
resetbddsystem \- resets a \fBbdd\fP system.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
void resetbddsystem( BddSystem )
bddsystem \(**BddSystem;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system to reset.
.SH DESCRIPTION
\fBresetbddsystem\fP resets the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBresetbddsystem\fP returns nothing.
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
...
resetbddsystem( (bddsystem \(**)0 );
destroybddsystem( BddSystem );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.BR createbddsytem(3),
.BR destroybddsytem(3).
.so man1/alc_bug_report.1

View File

@ -1,103 +0,0 @@
.\" $Id: restrictbddnode.3,v 1.1 2002/03/18 11:26:51 ludo Exp $
.\" @(#)restrictbddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH RESTRICTBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
restrictbddnode \- substitutes a variable by a zero or one, in a \fBbdd\fP.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**restrictbddnode( BddSystem, BddNode, Variable, BddSubst )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
bddvar Variable;
bddnode \(**BddSubst;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem\fP
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.TP
\fIVariable\fP
The variable to find.
.TP
\fIBddSubst\fP
The \fBbdd\fP to substitute with.
.SH DESCRIPTION
\fBrestrictbddnode\fP substitutes all the occurency of the variable \fIVariable\fP
in the \fBbdd\fP node \fIBddNode\fP by the \fBbdd\fP node \fIBddSubst\fP, in the
\fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
The \fIBddSubst\fP must be a the node \fIBddSystem\fP->ONE or \fIBddSystem\fP->ZERO.
.br
.SH RETURN VALUE
\fBrestrictbddnode\fP returns the resulting \fBbdd\fP node.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"variable xxx out of range, error !"
.ft R
.RS
The \fIVariable\fP parameter must be less or equal to
the \fIBddSystem->NUMBER_VAR\fP field.
.RE
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range, error !"
.ft R
.RS
The \fIBddSubst\fP parameter must have its index less than BDD_INDEX_MIN.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddVariable;
bddnode \(**BddNode;
bddnode \(**BddSubst;
chain_list \(**Expr;
bddvar Variable;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_OR,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddSubst = BddSystem->ONE;
BddVariable = searchbddcircuitin( (bddcircuit \(**)0, "i0" );
Variable = getbddvarbyindex( (bddsystem \(**)0, BddVariable->INDEX );
BddNode = restrictbddnode( (bddsystem \(**)0, BddNode, Variable, BddSubst );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays '1' */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

View File

@ -1,76 +0,0 @@
.\" $Id: satisfybddnode.3,v 1.1 2002/03/18 11:26:51 ludo Exp $
.\" @(#)satisfybddnode.2 2.7 96/07/02 ; Labo masi cao-vlsi; Author : Jacomme Ludovic
.TH SATISFYBDDNODE 3 "October 1, 1997" "ASIM/LIP6" "BDD FUNCTIONS"
.SH NAME
satisfybddnode \- finds a satisfying path for a \fBbdd\fP node.
.so man1/alc_origin.1
.SH SYNOPSYS
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddnode \(**satisfybddnode( BddSystem, BddNode )
bddsystem \(**BddSystem;
bddnode \(**BddNode;
.ft R
.fi
.SH PARAMETERS
.TP 20
\fIBddSystem
The \fBbdd\fP system.
.TP
\fIBddNode\fP
The \fBbdd\fP node.
.SH DESCRIPTION
\fBsatisfybddnode\fP finds a simple path throw the \fBbdd\fP \fIBddNode\fP
that reaches the constant \fBbdd\fP node one, in the \fBbdd\fP system \fIBddSystem\fP.
If a null pointer is given, the default \fBbdd\fP system is used.
.br
.SH RETURN VALUE
\fBsatisfybddnode\fP returns a \fBbdd\fP node that satisfies \fIBddNode\fP.
.SH ERRORS
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
"index xxx out of range, error !"
.ft R
.RS
The \fIBddNode\fP parameter must be different from the \fBbdd\fP node zero.
.RE
.SH EXAMPLE
.ta 3n 6n 9n 12n 15n 18n 21n
.nf
.if n \{\
.ft B \}
.if t \{\
.ft CR \}
#include "bdd101.h"
bddsystem \(**BddSystem;
bddcircuit \(**BddCircuit;
bddnode \(**BddNode;
chain_list \(**Expr;
BddSystem = createbddsystem( 100, 1000, 100, 50000 );
BddCircuit = createbddcircuit( "hello_world", 10, 10, BddSystem );
Expr = createablbinexpr( ABL_OR,
createablatom( "i0" ),
createablatom( "i1" ) );
BddNode = addbddcircuitabl( BddCircuit, Expr );
freeablexpr( Expr );
BddNode = satisfybddnode( (bddsystem \(**)0, BddNode );
Expr = convertbddcircuitabl( BddCircuit, BddNode );
/* displays i0 */
viewablexpr( Expr, ABL_VIEW_VHDL );
freeablexpr( Expr );
destroybddsystem( (bddsystem \(**)0 );
destroybddcircuit( (bddcircuit \(**)0 );
.ft R
.fi
.SH SEE ALSO
.BR bdd (1)
.so man1/alc_bug_report.1

Some files were not shown because too many files have changed in this diff Show More