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:
commit
08080f650b
|
@ -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.
|
|
@ -1 +0,0 @@
|
|||
SUBDIRS = src
|
|
@ -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
|
||||
])
|
|
@ -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
|
|
@ -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
|
|
@ -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);
|
||||
}
|
|
@ -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);
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
|
||||
}
|
|
@ -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);
|
||||
}
|
|
@ -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);
|
||||
}
|
||||
}
|
|
@ -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);
|
||||
}
|
|
@ -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);
|
||||
}
|
|
@ -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" );
|
||||
}
|
||||
}
|
|
@ -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 );
|
||||
}
|
|
@ -1 +0,0 @@
|
|||
SUBDIRS = src
|
|
@ -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
|
||||
])
|
|
@ -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
|
|
@ -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
|
|
@ -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;
|
||||
}
|
|
@ -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
|
|
@ -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);
|
||||
|
||||
}
|
||||
}
|
|
@ -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 );
|
||||
}
|
|
@ -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
|
|
@ -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;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -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 );
|
||||
}
|
|
@ -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
|
|
@ -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);
|
||||
}
|
|
@ -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 );
|
||||
}
|
|
@ -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
|
|
@ -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
|
|
@ -1 +0,0 @@
|
|||
man_MANS = bdd.1
|
|
@ -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
|
||||
|
|
@ -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
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
|
||||
|
|
@ -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
Loading…
Reference in New Issue