#!/usr/bin/perl $ALF_InstallDir = ".."; require ("$ALF_InstallDir/source/OpenALF.BOM.pl"); local @alf_files = ( "$ALF_InstallDir/examples/buffer.alf", "$ALF_InstallDir/examples/flipflop.alf", "$ALF_InstallDir/examples/function.style1.alf", "$ALF_InstallDir/examples/function.style2.alf", "$ALF_InstallDir/examples/complex.alf", "$ALF_InstallDir/examples/ecsm.alf", "$ALF_InstallDir/examples/delaycalc.alf", ); local @lib_files = ( "$ALF_InstallDir/examples/buffer.lib", "$ALF_InstallDir/examples/flipflop.lib", "$ALF_InstallDir/examples/function.lib", "$ALF_InstallDir/examples/complex.lib", "$ALF_InstallDir/examples/ecsm.lib", ); local $regression = shift(@ARGV); $ALF_Debug = shift(@ARGV); if (&StringMatch($regression,'alf2alf')) { foreach $file (@alf_files) { &ALF_ReportLibraryContents(&ALF_ReadWrite($file,'alf','try.alf')); print("# comparing input file \47$file\47 and output file \47try.alf\47\n"); system("diff $file try.alf\n"); } } elsif (&StringMatch($regression,'alf2lib')) { foreach $file (@alf_files) { &ALF_ReportLibraryContents(&ALF_ReadWrite($file,'alf','try.lib','lib'),'xref'); } } elsif (&StringMatch($regression,'lib2lib')) { foreach $file (@lib_files) { &ALF_ReportLibraryContents(&ALF_ReadWrite($file,'lib','try.lib')); print("# comparing input file \47$file\47 and output file \47try.lib\47\n"); system("diff $file try.lib\n"); } } elsif (&StringMatch($regression,'lib2alf')) { foreach $file (@lib_files) { &ALF_ReportLibraryContents(&ALF_ReadWrite($file,'lib','try.alf','alf'),'xref'); } } else { die("usage:\tregression.pl [ ]\n\t ::= alf2alf | alf2lib | lib2lib | lib2alf\n\t ::= 1 | 2\n"); }