summaryrefslogtreecommitdiffstats
path: root/src/base/cba/cbaCom.c
diff options
context:
space:
mode:
authorAlan Mishchenko <alanmi@berkeley.edu>2015-02-05 19:34:24 -0800
committerAlan Mishchenko <alanmi@berkeley.edu>2015-02-05 19:34:24 -0800
commitd7099e7adc60190dfef9761130bde0eaf352b48d (patch)
treeeeafc42df15a7ad4822ec5b0d490e72a74ca3e75 /src/base/cba/cbaCom.c
parent35ab8cbdad84e8002db20b0b81681a50058a5bed (diff)
downloadabc-d7099e7adc60190dfef9761130bde0eaf352b48d.tar.gz
abc-d7099e7adc60190dfef9761130bde0eaf352b48d.tar.bz2
abc-d7099e7adc60190dfef9761130bde0eaf352b48d.zip
Adding binary dump to CBA.
Diffstat (limited to 'src/base/cba/cbaCom.c')
-rw-r--r--src/base/cba/cbaCom.c15
1 files changed, 14 insertions, 1 deletions
diff --git a/src/base/cba/cbaCom.c b/src/base/cba/cbaCom.c
index 73c479d5..9229d876 100644
--- a/src/base/cba/cbaCom.c
+++ b/src/base/cba/cbaCom.c
@@ -172,7 +172,7 @@ int Cba_CommandRead( Abc_Frame_t * pAbc, int argc, char ** argv )
if ( (pFile = fopen( pFileName, "r" )) == NULL )
{
Abc_Print( 1, "Cannot open input file \"%s\". ", pFileName );
- if ( (pFileName = Extra_FileGetSimilarName( pFileName, ".v", ".blif", NULL, NULL, NULL )) )
+ if ( (pFileName = Extra_FileGetSimilarName( pFileName, ".v", ".blif", ".smt", ".cba", NULL )) )
Abc_Print( 1, "Did you mean \"%s\"?", pFileName );
Abc_Print( 1, "\n" );
return 0;
@@ -207,6 +207,17 @@ int Cba_CommandRead( Abc_Frame_t * pAbc, int argc, char ** argv )
p = Prs_ManBuildCba( pFileName, vDes );
Prs_ManVecFree( vDes );
}
+ else if ( !strcmp( Extra_FileNameExtension(pFileName), "smt" ) )
+ {
+ vDes = Prs_ManReadSmt( pFileName );
+ if ( vDes && Vec_PtrSize(vDes) )
+ p = Prs_ManBuildCba( pFileName, vDes );
+ Prs_ManVecFree( vDes );
+ }
+ else if ( !strcmp( Extra_FileNameExtension(pFileName), "cba" ) )
+ {
+ p = Cba_ManReadCba( pFileName );
+ }
else assert( 0 );
Cba_AbcUpdateMan( pAbc, p );
return 0;
@@ -268,6 +279,8 @@ int Cba_CommandWrite( Abc_Frame_t * pAbc, int argc, char ** argv )
Cba_ManWriteBlif( pFileName, p );
else if ( !strcmp( Extra_FileNameExtension(pFileName), "v" ) )
Cba_ManWriteVerilog( pFileName, p );
+ else if ( !strcmp( Extra_FileNameExtension(pFileName), "cba" ) )
+ Cba_ManWriteCba( pFileName, p );
else
{
printf( "Unrecognized output file extension.\n" );