@@ -1297,6 +1297,7 @@ int main(int argc, char *argv[])
1297
1297
bool show_errors = false ;
1298
1298
bool with_intrinsic_modules = false ;
1299
1299
std::string arg_pass;
1300
+ std::string skip_pass;
1300
1301
bool arg_no_color = false ;
1301
1302
bool show_llvm = false ;
1302
1303
bool show_asm = false ;
@@ -1363,6 +1364,7 @@ int main(int argc, char *argv[])
1363
1364
app.add_flag (" --indent" , compiler_options.indent , " Indented print ASR/AST" );
1364
1365
app.add_flag (" --tree" , compiler_options.tree , " Tree structure print ASR/AST" );
1365
1366
app.add_option (" --pass" , arg_pass, " Apply the ASR pass and show ASR (implies --show-asr)" );
1367
+ app.add_option (" --skip_pass" , skip_pass, " Skip an ASR pass in default pipeline" );
1366
1368
app.add_flag (" --disable-main" , compiler_options.disable_main , " Do not generate any code for the `main` function" );
1367
1369
app.add_flag (" --symtab-only" , compiler_options.symtab_only , " Only create symbol tables in ASR (skip executable stmt)" );
1368
1370
app.add_flag (" --time-report" , time_report, " Show compilation time report" );
@@ -1539,7 +1541,7 @@ int main(int argc, char *argv[])
1539
1541
// return emit_c_preprocessor(arg_file, compiler_options);
1540
1542
// }
1541
1543
1542
- lpython_pass_manager.parse_pass_arg (arg_pass);
1544
+ lpython_pass_manager.parse_pass_arg (arg_pass, skip_pass );
1543
1545
if (show_tokens) {
1544
1546
return emit_tokens (arg_file, true , compiler_options);
1545
1547
}
0 commit comments