mirror of
https://github.com/YosysHQ/yosys
synced 2025-06-06 06:03:23 +00:00
Remove try/catch block that prevents proper stack trace unrolling
This commit is contained in:
parent
a3a9e79263
commit
3a16a369c5
1 changed files with 19 additions and 25 deletions
|
@ -1109,34 +1109,28 @@ bool run_frontend(std::string filename, std::string command, RTLIL::Design *desi
|
||||||
FILE *backup_script_file = Frontend::current_script_file;
|
FILE *backup_script_file = Frontend::current_script_file;
|
||||||
Frontend::current_script_file = f;
|
Frontend::current_script_file = f;
|
||||||
|
|
||||||
try {
|
std::string command;
|
||||||
std::string command;
|
while (fgetline(f, command)) {
|
||||||
while (fgetline(f, command)) {
|
while (!command.empty() && command[command.size() - 1] == '\\') {
|
||||||
while (!command.empty() && command[command.size()-1] == '\\') {
|
std::string next_line;
|
||||||
std::string next_line;
|
if (!fgetline(f, next_line))
|
||||||
if (!fgetline(f, next_line))
|
break;
|
||||||
break;
|
command.resize(command.size() - 1);
|
||||||
command.resize(command.size()-1);
|
command += next_line;
|
||||||
command += next_line;
|
|
||||||
}
|
|
||||||
handle_label(command, from_to_active, run_from, run_to);
|
|
||||||
if (from_to_active) {
|
|
||||||
Pass::call(design, command);
|
|
||||||
design->check();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
handle_label(command, from_to_active, run_from, run_to);
|
||||||
if (!command.empty()) {
|
if (from_to_active) {
|
||||||
handle_label(command, from_to_active, run_from, run_to);
|
Pass::call(design, command);
|
||||||
if (from_to_active) {
|
design->check();
|
||||||
Pass::call(design, command);
|
|
||||||
design->check();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
catch (...) {
|
|
||||||
Frontend::current_script_file = backup_script_file;
|
if (!command.empty()) {
|
||||||
throw;
|
handle_label(command, from_to_active, run_from, run_to);
|
||||||
|
if (from_to_active) {
|
||||||
|
Pass::call(design, command);
|
||||||
|
design->check();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Frontend::current_script_file = backup_script_file;
|
Frontend::current_script_file = backup_script_file;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue