aboutsummaryrefslogtreecommitdiffstats
path: root/machxo2/cells.cc
diff options
context:
space:
mode:
Diffstat (limited to 'machxo2/cells.cc')
-rw-r--r--machxo2/cells.cc10
1 files changed, 3 insertions, 7 deletions
diff --git a/machxo2/cells.cc b/machxo2/cells.cc
index 7334234d..534d8e3c 100644
--- a/machxo2/cells.cc
+++ b/machxo2/cells.cc
@@ -41,13 +41,9 @@ void add_port(const Context *ctx, CellInfo *cell, IdString id, PortType dir)
std::unique_ptr<CellInfo> create_machxo2_cell(Context *ctx, IdString type, std::string name)
{
static int auto_idx = 0;
- std::unique_ptr<CellInfo> new_cell = std::unique_ptr<CellInfo>(new CellInfo());
- if (name.empty()) {
- new_cell->name = ctx->id("$nextpnr_" + type.str(ctx) + "_" + std::to_string(auto_idx++));
- } else {
- new_cell->name = ctx->id(name);
- }
- new_cell->type = type;
+ IdString name_id =
+ name.empty() ? ctx->id("$nextpnr_" + type.str(ctx) + "_" + std::to_string(auto_idx++)) : ctx->id(name);
+ auto new_cell = std::make_unique<CellInfo>(ctx, name_id, type);
if (type == id_FACADE_SLICE) {
new_cell->params[id_MODE] = std::string("LOGIC");