summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/netlist/prg/nltool.cpp
diff options
context:
space:
mode:
author couriersud <couriersud@gmx.org>2020-09-17 19:45:24 +0200
committer couriersud <couriersud@gmx.org>2020-09-17 19:45:24 +0200
commitec742d3eda78e2fefd01b69a9f10ae1939422d16 (patch)
tree760b40381fb0c5814f9fd91362daeaa6779aaa3b /src/lib/netlist/prg/nltool.cpp
parente62e2d759b1a952390e0fe7a7ed36e33d2676ba5 (diff)
netlist: emscripten can not use specialization efficiently.
* Consequently prefer to save on compile time and size.
Diffstat (limited to 'src/lib/netlist/prg/nltool.cpp')
-rw-r--r--src/lib/netlist/prg/nltool.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/lib/netlist/prg/nltool.cpp b/src/lib/netlist/prg/nltool.cpp
index 27aa5b293c3..44b96bf0d6d 100644
--- a/src/lib/netlist/prg/nltool.cpp
+++ b/src/lib/netlist/prg/nltool.cpp
@@ -694,18 +694,22 @@ void tool_app_t::static_compile()
throw netlist::nl_exception(netlist::MF_FILE_OPEN_ERROR(opt_out()));
sout << "#include \"plib/pdynlib.h\"\n\n";
+ sout << "#if !defined(__EMSCRIPTEN__)\n\n";
for (auto &e : map)
{
sout << "// " << putf8string(e.second.m_module) << "\n";
sout << putf8string(e.second.m_code);
}
+ sout << "#endif\n\n";
sout << "extern const plib::dynlib_static_sym nl_static_solver_syms[];\n";
sout << "const plib::dynlib_static_sym nl_static_solver_syms[] = {\n";
+ sout << "#if !defined(__EMSCRIPTEN__)\n\n";
for (auto &e : map)
{
sout << "// " << putf8string(e.second.m_module) << "\n";
sout << "\t{\"" << putf8string(e.first) << "\", reinterpret_cast<void *>(&" << putf8string(e.first) << ")},\n";
}
+ sout << "#endif\n\n";
sout << "{\"\", nullptr}\n";
sout << "};\n";