From 81109494a52adc27ededf13b9cdb4d019b94d8a5 Mon Sep 17 00:00:00 2001 From: Ludovic Jacomme Date: Fri, 2 Aug 2002 13:51:14 +0000 Subject: [PATCH] Correction d'un bug dans la construction des beaux/beout du VBE resultant de la synthese d'une multi-FSM --- alliance/src/syf/src/syf_fsm2fbh.c | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/alliance/src/syf/src/syf_fsm2fbh.c b/alliance/src/syf/src/syf_fsm2fbh.c index 8b6fc46e..09de6d62 100644 --- a/alliance/src/syf/src/syf_fsm2fbh.c +++ b/alliance/src/syf/src/syf_fsm2fbh.c @@ -132,6 +132,7 @@ void SyfFsmTreatOutput( FsmFigure, FbhFigure ) syfout *ScanSyfOut; syfregout *OutArray; fbout_list *FbhOut; + fbaux_list *ScanAux; fbrin_list *FbhRin; fbreg_list *FbhReg; fbbiabl_list *FbhBiAbl; @@ -172,7 +173,21 @@ void SyfFsmTreatOutput( FsmFigure, FbhFigure ) } } - FbhOut = fbh_addfbout( FbhOut, ScanOut->NAME, AblExpr, (bddnode *)0, 0 ); + for ( ScanAux = FbhFigure->BEAUX; + ScanAux != (fbaux_list *)0; + ScanAux = ScanAux->NEXT ) + { + if ( ScanAux->NAME == ScanOut->NAME ) break; + } + + if ( ScanAux == (fbaux_list *)0 ) + { + FbhOut = fbh_addfbout( FbhOut, ScanOut->NAME, AblExpr, (bddnode *)0, 0 ); + } + else + { + ScanAux->ABL = AblExpr; + } } }