From 0640586cbc65e08b17818b0ea9412c88a5e6b3a3 Mon Sep 17 00:00:00 2001 From: Jean-Paul Chaput Date: Thu, 22 Apr 2021 15:14:06 +0200 Subject: [PATCH] In CRL::VstDriver, name-mangle file names too with option UniquifyUpperCase. * Bug: In CRL::vstDriver(), when upper case names are uniquified, including components, the associated model filename must also be mangled. --- crlcore/src/ccore/alliance/vst/VstDriver.cpp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/crlcore/src/ccore/alliance/vst/VstDriver.cpp b/crlcore/src/ccore/alliance/vst/VstDriver.cpp index 6c5bde2d..485b6e83 100644 --- a/crlcore/src/ccore/alliance/vst/VstDriver.cpp +++ b/crlcore/src/ccore/alliance/vst/VstDriver.cpp @@ -39,11 +39,15 @@ namespace CRL { void vstDriver ( const string cellPath, Cell *cell, unsigned int& saveState ) { + NamingScheme ns (NamingScheme::FromVerilog); unsigned int entityFlags = Vhdl::Entity::EntityMode /* | Vhdl::Entity::IeeeMode */; if (saveState & Catalog::State::VstUseConcat ) entityFlags |= Vhdl::Entity::VstUseConcat; if (saveState & Catalog::State::VstNoLowerCase ) entityFlags |= Vhdl::Entity::VstNoLowerCase; - if (saveState & Catalog::State::VstUniquifyUpperCase) entityFlags |= Vhdl::Entity::VstUniquifyUpperCase; if (saveState & Catalog::State::VstNoLinkage ) entityFlags |= Vhdl::Entity::VstNoLinkage; + if (saveState & Catalog::State::VstUniquifyUpperCase) { + entityFlags |= Vhdl::Entity::VstUniquifyUpperCase; + ns.setUniquifyUpperCase( true ); + } //NamingScheme::toVhdl( cell, NamingScheme::FromVerilog ); Vhdl::Entity* vhdlEntity = Vhdl::EntityExtension::create( cell, entityFlags ); @@ -61,7 +65,6 @@ namespace CRL { } else { file = cellPath; } - NamingScheme ns (NamingScheme::FromVerilog); file = getString( ns.convert(file) ); celltest = path + '/' + file + '.' + ext;