3
0
Fork 0
mirror of https://github.com/YosysHQ/yosys synced 2025-10-09 17:31:59 +00:00
This commit is contained in:
Emil J 2025-10-08 13:49:18 -07:00 committed by GitHub
commit bf691b6c4d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
8 changed files with 14 additions and 12 deletions

View file

@ -384,6 +384,13 @@ std::string escape_filename_spaces(const std::string& filename)
return out; return out;
} }
void append_globbed(std::vector<std::string>& paths, std::string pattern)
{
rewrite_filename(pattern);
std::vector<std::string> globbed = glob_filename(pattern);
copy(globbed.begin(), globbed.end(), back_inserter(paths));
}
void format_emit_unescaped(std::string &result, std::string_view fmt) void format_emit_unescaped(std::string &result, std::string_view fmt)
{ {
result.reserve(result.size() + fmt.size()); result.reserve(result.size() + fmt.size());

View file

@ -469,6 +469,7 @@ bool is_absolute_path(std::string filename);
void remove_directory(std::string dirname); void remove_directory(std::string dirname);
bool create_directory(const std::string& dirname); bool create_directory(const std::string& dirname);
std::string escape_filename_spaces(const std::string& filename); std::string escape_filename_spaces(const std::string& filename);
void append_globbed(std::vector<std::string>& paths, std::string pattern);
YOSYS_NAMESPACE_END YOSYS_NAMESPACE_END

View file

@ -290,9 +290,7 @@ struct ClockgatePass : public Pass {
continue; continue;
} }
if (args[argidx] == "-liberty" && argidx+1 < args.size()) { if (args[argidx] == "-liberty" && argidx+1 < args.size()) {
std::string liberty_file = args[++argidx]; append_globbed(liberty_files, args[++argidx]);
rewrite_filename(liberty_file);
liberty_files.push_back(liberty_file);
continue; continue;
} }
if (args[argidx] == "-dont_use" && argidx+1 < args.size()) { if (args[argidx] == "-dont_use" && argidx+1 < args.size()) {

View file

@ -609,9 +609,7 @@ struct DfflibmapPass : public Pass {
{ {
std::string arg = args[argidx]; std::string arg = args[argidx];
if (arg == "-liberty" && argidx+1 < args.size()) { if (arg == "-liberty" && argidx+1 < args.size()) {
std::string liberty_file = args[++argidx]; append_globbed(liberty_files, args[++argidx]);
rewrite_filename(liberty_file);
liberty_files.push_back(liberty_file);
continue; continue;
} }
if (arg == "-prepare") { if (arg == "-prepare") {

View file

@ -96,9 +96,7 @@
quiet = true; quiet = true;
continue; continue;
} }
std::string fname = args[argidx]; append_globbed(paths, args[argidx]);
rewrite_filename(fname);
paths.push_back(fname);
break; break;
} }
int modes = enable + disable + purge + list + verbose + quiet; int modes = enable + disable + purge + list + verbose + quiet;

View file

@ -1,5 +1,5 @@
libcache -verbose libcache -verbose
libcache -enable busdef.lib libcache -enable bus*f.lib
logger -expect log "Caching is disabled by default." 1 logger -expect log "Caching is disabled by default." 1
logger -expect log "Caching is enabled for `busdef.lib'." 1 logger -expect log "Caching is enabled for `busdef.lib'." 1

View file

@ -194,7 +194,7 @@ select -assert-count 1 t:\\pdk_icg
#------------------------------------------------------------------------------ #------------------------------------------------------------------------------
design -load before design -load before
clockgate -liberty clockgate.lib clockgate -liberty c*ckgate.lib
# rising edge ICGs # rising edge ICGs
select -module dffe_00 -assert-count 0 t:\\pos_small select -module dffe_00 -assert-count 0 t:\\pos_small

View file

@ -23,7 +23,7 @@ read_liberty -lib dfflibmap.lib
equiv_opt -map dfflibmap-sim.v -assert -multiclock dfflibmap -liberty dfflibmap.lib equiv_opt -map dfflibmap-sim.v -assert -multiclock dfflibmap -liberty dfflibmap.lib
equiv_opt -map dfflibmap-sim.v -assert -multiclock dfflibmap -prepare -liberty dfflibmap.lib equiv_opt -map dfflibmap-sim.v -assert -multiclock dfflibmap -prepare -liberty dfflibmap.lib
dfflibmap -prepare -liberty dfflibmap.lib dfflibmap -prepare -liberty dffl*bmap.lib
equiv_opt -map dfflibmap-sim.v -assert -multiclock dfflibmap -map-only -liberty dfflibmap.lib equiv_opt -map dfflibmap-sim.v -assert -multiclock dfflibmap -map-only -liberty dfflibmap.lib
design -load orig design -load orig