if (len > 0) {
string num_str = wire_name.substr(i+1, len);
- int num = std::stoi(num_str) & 0x0fffffff;
+ int num = atoi(num_str.c_str()) & 0x0fffffff;
blif_maxnum = std::max(blif_maxnum, num);
}
}
goto next_type;
if (child->id == "bit_width")
- bit_width = std::stoi(child->value);
+ bit_width = atoi(child->value.c_str());
if (child->id == "bit_from")
- bit_from = std::stoi(child->value);
+ bit_from = atoi(child->value.c_str());
if (child->id == "bit_to")
- bit_to = std::stoi(child->value);
+ bit_to = atoi(child->value.c_str());
if (child->id == "downto" && (child->value == "0" || child->value == "false" || child->value == "FALSE"))
upto = true;
continue;
}
if (args[argidx] == "-L" && argidx+1 < GetSize(args)) {
- verific_sva_fsm_limit = std::stoi(args[++argidx]);
+ verific_sva_fsm_limit = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-n") {
sigspec_parse_split(index_tokens, indices.substr(1, indices.size()-2), ':');
if (index_tokens.size() == 1) {
cover("kernel.rtlil.sigspec.parse.bit_sel");
- int a = std::stoi(index_tokens.at(0));
+ int a = atoi(index_tokens.at(0).c_str());
if (a < 0 || a >= wire->width)
return false;
sig.append(RTLIL::SigSpec(wire, a));
} else {
cover("kernel.rtlil.sigspec.parse.part_sel");
- int a = std::stoi(index_tokens.at(0));
- int b = std::stoi(index_tokens.at(1));
+ int a = atoi(index_tokens.at(0).c_str());
+ int b = atoi(index_tokens.at(1).c_str());
if (a > b) {
int tmp = a;
a = b, b = tmp;
if (arg == "-global_input")
arg_flag_global = true;
arg_name = args[++argidx];
- arg_width = std::stoi(args[++argidx]);
+ arg_width = atoi(args[++argidx].c_str());
continue;
}
break;
}
if (mode == 0 && args[argidx] == "-delay" && argidx+1 < args.size()) {
mode = 'd';
- mode_arg = std::stoi(args[++argidx]);
+ mode_arg = atoi(args[++argidx].c_str());
continue;
}
if (mode == 0 && args[argidx] == "-skip" && argidx+1 < args.size()) {
mode = 's';
- mode_arg = std::stoi(args[++argidx]);
+ mode_arg = atoi(args[++argidx].c_str());
continue;
}
if ((mode == 0 || mode == 'c') && args[argidx] == "-assert2assume") {
continue;
}
if (args[argidx] == "-grid" && argidx+1 < args.size()) {
- config.grid = 1.0 / std::stoi(args[++argidx]);
+ config.grid = 1.0 / atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-dump" && argidx+1 < args.size()) {
size_t argidx;
for (argidx = 1; argidx < args.size(); argidx++) {
if (args[argidx] == "-max_depth" && argidx+1 < args.size()) {
- maxDepth = std::stoi(args[++argidx]);
+ maxDepth = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-expect" && argidx+1 < args.size()) {
- expect = std::stoi(args[++argidx]);
+ expect = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-nofeedback") {
size_t endpos = arg.find_first_not_of("0123456789", pos);
if (endpos == std::string::npos)
endpos = arg.size();
- levels = std::stoi(arg.substr(pos, endpos-pos));
+ levels = atoi(arg.substr(pos, endpos-pos).c_str());
pos = endpos;
}
if (endpos == std::string::npos)
endpos = arg.size();
if (int(endpos) > pos)
- rem_objects = std::stoi(arg.substr(pos, endpos-pos));
+ rem_objects = atoi(arg.substr(pos, endpos-pos).c_str());
pos = endpos;
}
if (arg_memb.substr(0, 2) == "s:") {
size_t delim = arg_memb.substr(2).find(':');
if (delim == std::string::npos) {
- int width = std::stoi(arg_memb.substr(2));
+ int width = atoi(arg_memb.substr(2).c_str());
for (auto &it : mod->wires_)
if (it.second->width == width)
sel.selected_members[mod->name].insert(it.first);
} else {
std::string min_str = arg_memb.substr(2, delim);
std::string max_str = arg_memb.substr(2+delim+1);
- int min_width = min_str.empty() ? 0 : std::stoi(min_str);
- int max_width = max_str.empty() ? -1 : std::stoi(max_str);
+ int min_width = min_str.empty() ? 0 : atoi(min_str.c_str());
+ int max_width = max_str.empty() ? -1 : atoi(max_str.c_str());
for (auto &it : mod->wires_)
if (min_width <= it.second->width && (it.second->width <= max_width || max_width == -1))
sel.selected_members[mod->name].insert(it.first);
continue;
}
if (arg == "-assert-count" && argidx+1 < args.size()) {
- assert_count = std::stoi(args[++argidx]);
+ assert_count = atoi(args[++argidx].c_str());
continue;
}
if (arg == "-assert-max" && argidx+1 < args.size()) {
- assert_max = std::stoi(args[++argidx]);
+ assert_max = atoi(args[++argidx].c_str());
continue;
}
if (arg == "-assert-min" && argidx+1 < args.size()) {
- assert_min = std::stoi(args[++argidx]);
+ assert_min = atoi(args[++argidx].c_str());
continue;
}
if (arg == "-clear") {
if (args[argidx] == "-random" && !got_value && argidx+1 < args.size()) {
got_value = true;
worker.next_bit_mode = MODE_RANDOM;
- worker.next_bit_state = std::stoi(args[++argidx]) + 1;
+ worker.next_bit_state = atoi(args[++argidx].c_str()) + 1;
for (int i = 0; i < 10; i++)
worker.next_bit();
continue;
continue;
}
if (arg == "-colors" && argidx+1 < args.size()) {
- colorSeed = std::stoi(args[++argidx]);
+ colorSeed = atoi(args[++argidx].c_str());
for (int i = 0; i < 100; i++)
colorSeed = ShowWorker::xorshift32(colorSeed);
continue;
continue;
}
if (GetSize(args[argidx]) >= 2 && (args[argidx][0] == '-' || args[argidx][0] == '+') && args[argidx][1] >= '0' && args[argidx][1] <= '9') {
- log_verbose_level += std::stoi(args[argidx]);
+ log_verbose_level += atoi(args[argidx].c_str());
continue;
}
break;
continue;
}
if (args[argidx] == "-seq" && argidx+1 < args.size()) {
- max_seq = std::stoi(args[++argidx]);
+ max_seq = atoi(args[++argidx].c_str());
continue;
}
break;
continue;
}
if (args[argidx] == "-seq" && argidx+1 < args.size()) {
- max_seq = std::stoi(args[++argidx]);
+ max_seq = atoi(args[++argidx].c_str());
continue;
}
break;
continue;
}
if (args[argidx] == "-maxiter" && argidx+1 < args.size()) {
- max_iter = std::stoi(args[++argidx]);
+ max_iter = atoi(args[++argidx].c_str());
continue;
}
break;
int pos_idx = pos[0];
int pos_num = pos[1];
int pos_type = pos[2];
- int idx = std::stoi(cell->type.substr(pos_idx + 1, pos_num));
- int num = std::stoi(cell->type.substr(pos_num + 1, pos_type));
+ int idx = atoi(cell->type.substr(pos_idx + 1, pos_num).c_str());
+ int num = atoi(cell->type.substr(pos_num + 1, pos_type).c_str());
array_cells[cell] = std::pair<int, int>(idx, num);
cell->type = cell->type.substr(pos_type + 1);
}
int conn_size = conn.second.size();
RTLIL::IdString portname = conn.first;
if (portname.begins_with("$")) {
- int port_id = std::stoi(portname.substr(1));
+ int port_id = atoi(portname.substr(1).c_str());
for (auto &wire_it : mod->wires_)
if (wire_it.second->port_id == port_id) {
portname = wire_it.first;
bool parse_single_int(const char *stmt, int &value)
{
if (GetSize(tokens) == 2 && tokens[0] == stmt) {
- value = std::stoi(tokens[1]);
+ value = atoi(tokens[1].c_str());
return true;
}
return false;
if (GetSize(tokens) >= 2 && tokens[0] == stmt) {
value.resize(GetSize(tokens)-1);
for (int i = 1; i < GetSize(tokens); i++)
- value[i-1] = std::stoi(tokens[i]);
+ value[i-1] = atoi(tokens[i].c_str());
return true;
}
return false;
}
if (GetSize(tokens) == 3 && tokens[0] == "min") {
- data.min_limits[tokens[1]] = std::stoi(tokens[2]);
+ data.min_limits[tokens[1]] = atoi(tokens[2].c_str());
continue;
}
if (GetSize(tokens) == 3 && tokens[0] == "max") {
- data.max_limits[tokens[1]] = std::stoi(tokens[2]);
+ data.max_limits[tokens[1]] = atoi(tokens[2].c_str());
continue;
}
if (conn_tokens.size() != 2)
log_cmd_error("Invalid format of -dlogic signal mapping.\n");
IdString logic_port = "\\" + conn_tokens[0];
- int lut_input = std::stoi(conn_tokens[1]);
+ int lut_input = atoi(conn_tokens[1].c_str());
dlogic[type][lut_input] = logic_port;
}
continue;
}
if (args[argidx] == "-limit" && argidx + 1 < args.size())
{
- limit = std::stoi(args[++argidx]);
+ limit = atoi(args[++argidx].c_str());
continue;
}
break;
size_t argidx;
for (argidx = 1; argidx < args.size(); argidx++) {
if (args[argidx] == "-min_density" && argidx+1 < args.size()) {
- min_density = std::stoi(args[++argidx]);
+ min_density = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-min_choices" && argidx+1 < args.size()) {
- min_choices = std::stoi(args[++argidx]);
+ min_choices = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-onehot" && argidx+1 < args.size() && args[argidx+1] == "ignore") {
continue;
}
if (args[argidx] == "-limit" && argidx+1 < args.size()) {
- config.limit = std::stoi(args[++argidx]);
+ config.limit = atoi(args[++argidx].c_str());
continue;
}
break;
continue;
}
if (args[argidx] == "-stop" && argidx+1 < args.size()) {
- reduce_stop_at = std::stoi(args[++argidx]);
+ reduce_stop_at = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-dump" && argidx+1 < args.size()) {
for (argidx = 1; argidx < args.size(); argidx++)
{
if (args[argidx] == "-list" && argidx+1 < args.size()) {
- N = std::stoi(args[++argidx]);
+ N = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-o" && argidx+1 < args.size()) {
continue;
}
if (args[argidx] == "-seed" && argidx+1 < args.size()) {
- opts.seed = std::stoi(args[++argidx]);
+ opts.seed = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-none") {
}
if (args[argidx] == "-ctrl" && argidx+3 < args.size()) {
opts.ctrl_name = RTLIL::escape_id(args[++argidx]);
- opts.ctrl_width = std::stoi(args[++argidx]);
- opts.ctrl_value = std::stoi(args[++argidx]);
+ opts.ctrl_width = atoi(args[++argidx].c_str());
+ opts.ctrl_value = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-module" && argidx+1 < args.size()) {
continue;
}
if (args[argidx] == "-portbit" && argidx+1 < args.size()) {
- opts.portbit = std::stoi(args[++argidx]);
+ opts.portbit = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-ctrlbit" && argidx+1 < args.size()) {
- opts.ctrlbit = std::stoi(args[++argidx]);
+ opts.ctrlbit = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-wire" && argidx+1 < args.size()) {
continue;
}
if (args[argidx] == "-wirebit" && argidx+1 < args.size()) {
- opts.wirebit = std::stoi(args[++argidx]);
+ opts.wirebit = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-src" && argidx+1 < args.size()) {
}
if (args[argidx] == "-cfg" && argidx+2 < args.size()) {
if (args[argidx+1] == "pick_cover_prcnt") {
- opts.pick_cover_prcnt = std::stoi(args[argidx+2]);
+ opts.pick_cover_prcnt = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_cover") {
- opts.weight_cover = std::stoi(args[argidx+2]);
+ opts.weight_cover = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_pq_w") {
- opts.weight_pq_w = std::stoi(args[argidx+2]);
+ opts.weight_pq_w = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_pq_b") {
- opts.weight_pq_b = std::stoi(args[argidx+2]);
+ opts.weight_pq_b = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_pq_c") {
- opts.weight_pq_c = std::stoi(args[argidx+2]);
+ opts.weight_pq_c = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_pq_s") {
- opts.weight_pq_s = std::stoi(args[argidx+2]);
+ opts.weight_pq_s = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_pq_mw") {
- opts.weight_pq_mw = std::stoi(args[argidx+2]);
+ opts.weight_pq_mw = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_pq_mb") {
- opts.weight_pq_mb = std::stoi(args[argidx+2]);
+ opts.weight_pq_mb = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_pq_mc") {
- opts.weight_pq_mc = std::stoi(args[argidx+2]);
+ opts.weight_pq_mc = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
if (args[argidx+1] == "weight_pq_ms") {
- opts.weight_pq_ms = std::stoi(args[argidx+2]);
+ opts.weight_pq_ms = atoi(args[argidx+2].c_str());
argidx += 2;
continue;
}
continue;
}
if (args[argidx] == "-timeout" && argidx+1 < args.size()) {
- timeout = std::stoi(args[++argidx]);
+ timeout = std::atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-max" && argidx+1 < args.size()) {
- loopcount = std::stoi(args[++argidx]);
+ loopcount = std::atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-maxsteps" && argidx+1 < args.size()) {
- maxsteps = std::stoi(args[++argidx]);
+ maxsteps = std::atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-initsteps" && argidx+1 < args.size()) {
- initsteps = std::stoi(args[++argidx]);
+ initsteps = std::atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-stepsize" && argidx+1 < args.size()) {
- stepsize = max(1, std::stoi(args[++argidx]));
+ stepsize = max(1, std::atoi(args[++argidx].c_str()));
continue;
}
if (args[argidx] == "-ignore_div_by_zero") {
continue;
}
if (args[argidx] == "-tempinduct-skip" && argidx+1 < args.size()) {
- tempinduct_skip = std::stoi(args[++argidx]);
+ tempinduct_skip = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-prove" && argidx+2 < args.size()) {
continue;
}
if (args[argidx] == "-prove-skip" && argidx+1 < args.size()) {
- prove_skip = std::stoi(args[++argidx]);
+ prove_skip = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-seq" && argidx+1 < args.size()) {
- seq_len = std::stoi(args[++argidx]);
+ seq_len = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-set-at" && argidx+3 < args.size()) {
- int timestep = std::stoi(args[++argidx]);
+ int timestep = atoi(args[++argidx].c_str());
std::string lhs = args[++argidx];
std::string rhs = args[++argidx];
sets_at[timestep].push_back(std::pair<std::string, std::string>(lhs, rhs));
continue;
}
if (args[argidx] == "-unset-at" && argidx+2 < args.size()) {
- int timestep = std::stoi(args[++argidx]);
+ int timestep = atoi(args[++argidx].c_str());
unsets_at[timestep].push_back(args[++argidx]);
continue;
}
if (args[argidx] == "-set-def-at" && argidx+2 < args.size()) {
- int timestep = std::stoi(args[++argidx]);
+ int timestep = atoi(args[++argidx].c_str());
sets_def_at[timestep].push_back(args[++argidx]);
enable_undef = true;
continue;
}
if (args[argidx] == "-set-any-undef-at" && argidx+2 < args.size()) {
- int timestep = std::stoi(args[++argidx]);
+ int timestep = atoi(args[++argidx].c_str());
sets_any_undef_at[timestep].push_back(args[++argidx]);
enable_undef = true;
continue;
}
if (args[argidx] == "-set-all-undef-at" && argidx+2 < args.size()) {
- int timestep = std::stoi(args[++argidx]);
+ int timestep = atoi(args[++argidx].c_str());
sets_all_undef_at[timestep].push_back(args[++argidx]);
enable_undef = true;
continue;
continue;
}
if (args[argidx] == "-n" && argidx+1 < args.size()) {
- numcycles = std::stoi(args[++argidx]);
+ numcycles = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-rstlen" && argidx+1 < args.size()) {
- worker.rstlen = std::stoi(args[++argidx]);
+ worker.rstlen = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-clock" && argidx+1 < args.size()) {
abc_sname.erase(0, 5);
if (std::isdigit(abc_sname.at(0)))
{
- int sid = std::stoi(abc_sname);
+ int sid = std::atoi(abc_sname.c_str());
size_t postfix_start = abc_sname.find_first_not_of("0123456789");
std::string postfix = postfix_start != std::string::npos ? abc_sname.substr(postfix_start) : "";
size_t pos = arg.find_first_of(':');
int lut_mode = 0, lut_mode2 = 0;
if (pos != string::npos) {
- lut_mode = std::stoi(arg.substr(0, pos));
- lut_mode2 = std::stoi(arg.substr(pos+1));
+ lut_mode = std::atoi(arg.substr(0, pos).c_str());
+ lut_mode2 = std::atoi(arg.substr(pos+1).c_str());
} else {
- lut_mode = std::stoi(arg);
+ lut_mode = std::atoi(arg.c_str());
lut_mode2 = lut_mode;
}
lut_costs.clear();
if (GetSize(parts) == 0 && !lut_costs.empty())
lut_costs.push_back(lut_costs.back());
else if (GetSize(parts) == 1)
- lut_costs.push_back(std::stoi(parts.at(0)));
+ lut_costs.push_back(atoi(parts.at(0).c_str()));
else if (GetSize(parts) == 2)
- while (GetSize(lut_costs) < std::stoi(parts.at(0)))
- lut_costs.push_back(std::stoi(parts.at(1)));
+ while (GetSize(lut_costs) < std::atoi(parts.at(0).c_str()))
+ lut_costs.push_back(atoi(parts.at(1).c_str()));
else
log_cmd_error("Invalid -luts syntax.\n");
}
size_t pos = arg.find_first_of(':');
int lut_mode = 0, lut_mode2 = 0;
if (pos != string::npos) {
- lut_mode = std::stoi(arg.substr(0, pos));
- lut_mode2 = std::stoi(arg.substr(pos+1));
+ lut_mode = atoi(arg.substr(0, pos).c_str());
+ lut_mode2 = atoi(arg.substr(pos+1).c_str());
} else {
pos = arg.find_first_of('.');
if (pos != string::npos) {
lut_file = std::string(pwd) + "/" + lut_file;
}
else {
- lut_mode = std::stoi(arg);
+ lut_mode = atoi(arg.c_str());
lut_mode2 = lut_mode;
}
}
if (GetSize(parts) == 0 && !lut_costs.empty())
lut_costs.push_back(lut_costs.back());
else if (GetSize(parts) == 1)
- lut_costs.push_back(std::stoi(parts.at(0)));
+ lut_costs.push_back(atoi(parts.at(0).c_str()));
else if (GetSize(parts) == 2)
- while (GetSize(lut_costs) < std::stoi(parts.at(0)))
- lut_costs.push_back(std::stoi(parts.at(1)));
+ while (GetSize(lut_costs) < atoi(parts.at(0).c_str()))
+ lut_costs.push_back(atoi(parts.at(1).c_str()));
else
log_cmd_error("Invalid -luts syntax.\n");
}
}
if (args[argidx] == "-unmap-mince" && argidx + 1 < args.size()) {
unmap_mode = true;
- min_ce_use = std::stoi(args[++argidx]);
+ min_ce_use = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-direct" && argidx + 2 < args.size()) {
continue;
}
if (args[argidx] == "-mine_cells_span" && argidx+2 < args.size()) {
- mine_cells_min = std::stoi(args[++argidx]);
- mine_cells_max = std::stoi(args[++argidx]);
+ mine_cells_min = atoi(args[++argidx].c_str());
+ mine_cells_max = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-mine_min_freq" && argidx+1 < args.size()) {
- mine_min_freq = std::stoi(args[++argidx]);
+ mine_min_freq = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-mine_limit_matches_per_module" && argidx+1 < args.size()) {
- mine_limit_mod = std::stoi(args[++argidx]);
+ mine_limit_mod = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-mine_split" && argidx+2 < args.size()) {
continue;
}
if (args[argidx] == "-mine_max_fanout" && argidx+1 < args.size()) {
- mine_max_fanout = std::stoi(args[++argidx]);
+ mine_max_fanout = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-verbose") {
if (args[argidx] == "-maxwidth" && argidx+1 < args.size())
{
- maxwidth = std::stoi(args[++argidx]);
+ maxwidth = atoi(args[++argidx].c_str());
continue;
}
}
continue;
}
if (args[argidx] == "-d" && argidx+2 < args.size()) {
- config.maxdepth = std::stoi(args[++argidx]);
+ config.maxdepth = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-b" && argidx+2 < args.size()) {
- config.maxbreadth = std::stoi(args[++argidx]);
+ config.maxbreadth = atoi(args[++argidx].c_str());
continue;
}
break;
{
if (args[argidx] == "-maxlut" && argidx + 1 < args.size())
{
- order = std::stoi(args[++argidx]);
+ order = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-minlut" && argidx + 1 < args.size())
{
- minlut = std::stoi(args[++argidx]);
+ minlut = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-cells" && argidx + 1 < args.size())
}
if (args[argidx] == "-r-alpha" && argidx + 1 < args.size())
{
- r_alpha = std::stoi(args[++argidx]);
+ r_alpha = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-r-beta" && argidx + 1 < args.size())
{
- r_beta = std::stoi(args[++argidx]);
+ r_beta = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-r-gamma" && argidx + 1 < args.size())
{
- r_gamma = std::stoi(args[++argidx]);
+ r_gamma = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-optarea" && argidx + 1 < args.size())
{
relax = true;
- optarea = std::stoi(args[++argidx]);
+ optarea = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-debug")
{
const auto &arg = args[argidx];
if (arg.size() >= 6 && arg.substr(0,6) == "-mux2=") {
- cost_mux2 = std::stoi(arg.substr(6));
+ cost_mux2 = atoi(arg.substr(6).c_str());
continue;
}
if (arg.size() >= 5 && arg.substr(0,5) == "-mux4") {
use_mux4 = true;
if (arg.size() > 5) {
if (arg[5] != '=') break;
- cost_mux4 = std::stoi(arg.substr(6));
+ cost_mux4 = atoi(arg.substr(6).c_str());
}
continue;
}
use_mux8 = true;
if (arg.size() > 5) {
if (arg[5] != '=') break;
- cost_mux8 = std::stoi(arg.substr(6));
+ cost_mux8 = atoi(arg.substr(6).c_str());
}
continue;
}
use_mux16 = true;
if (arg.size() > 6) {
if (arg[6] != '=') break;
- cost_mux16 = std::stoi(arg.substr(7));
+ cost_mux16 = atoi(arg.substr(7).c_str());
}
continue;
}
if (arg.size() >= 6 && arg.substr(0,6) == "-dmux=") {
- cost_dmux = std::stoi(arg.substr(6));
+ cost_dmux = atoi(arg.substr(6).c_str());
continue;
}
if (arg == "-nodecode") {
vector<string> tokens = split_tokens(args[++argidx], ",");
config.luts.clear();
for (auto &token : tokens)
- config.luts.push_back(std::stoi(token));
+ config.luts.push_back(atoi(token.c_str()));
continue;
}
if (args[argidx] == "-assert") {
continue;
}
if (args[argidx] == "-minlen" && argidx+1 < args.size()) {
- opts.minlen = std::stoi(args[++argidx]);
+ opts.minlen = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-maxlen" && argidx+1 < args.size()) {
- opts.maxlen = std::stoi(args[++argidx]);
+ opts.maxlen = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-keep_before" && argidx+1 < args.size()) {
- opts.keep_before = std::stoi(args[++argidx]);
+ opts.keep_before = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-keep_after" && argidx+1 < args.size()) {
- opts.keep_after = std::stoi(args[++argidx]);
+ opts.keep_after = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-tech" && argidx+1 < args.size() && opts.tech == nullptr) {
continue;
}
if (args[argidx] == "-max_iter" && argidx+1 < args.size()) {
- max_iter = std::stoi(args[++argidx]);
+ max_iter = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-D" && argidx+1 < args.size()) {
for (argidx = 1; argidx < GetSize(args); argidx++)
{
if (args[argidx] == "-n" && argidx+1 < GetSize(args)) {
- num_iter = std::stoi(args[++argidx]);
+ num_iter = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-s" && argidx+1 < GetSize(args)) {
- xorshift32_state = std::stoi(args[++argidx]);
+ xorshift32_state = atoi(args[++argidx].c_str());
continue;
}
break;
for (argidx = 1; argidx < GetSize(args); argidx++)
{
if (args[argidx] == "-n" && argidx+1 < GetSize(args)) {
- num_iter = std::stoi(args[++argidx]);
+ num_iter = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-seed" && argidx+1 < GetSize(args)) {
- seed = std::stoi(args[++argidx]);
+ seed = atoi(args[++argidx].c_str());
continue;
}
break;
for (argidx = 1; argidx < GetSize(args); argidx++)
{
if (args[argidx] == "-n" && argidx+1 < GetSize(args)) {
- num_iter = std::stoi(args[++argidx]);
+ num_iter = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-s" && argidx+1 < GetSize(args)) {
- xorshift32_state = std::stoi(args[++argidx]);
+ xorshift32_state = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-map" && argidx+1 < GetSize(args)) {
continue;
}
if (args[argidx] == "-lut") {
- lut = std::stoi(args[++argidx]);
+ lut = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-nofsm") {
continue;
}
if (args[argidx] == "-dffe_min_ce_use" && argidx+1 < args.size()) {
- min_ce_use = std::stoi(args[++argidx]);
+ min_ce_use = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-nobram") {
continue;
}
if (args[argidx] == "-widemux" && argidx+1 < args.size()) {
- widemux = std::stoi(args[++argidx]);
+ widemux = atoi(args[++argidx].c_str());
continue;
}
if (args[argidx] == "-abc9") {