mirror of
https://github.com/odin-lang/Odin.git
synced 2025-12-30 18:02:02 +00:00
Add experimental support for a threaded semantic checker to -threaded-checker
This commit is contained in:
12
src/main.cpp
12
src/main.cpp
@@ -600,6 +600,7 @@ enum BuildFlagKind {
|
||||
BuildFlag_NoEntryPoint,
|
||||
BuildFlag_UseLLD,
|
||||
BuildFlag_UseSeparateModules,
|
||||
BuildFlag_ThreadedChecker,
|
||||
BuildFlag_Vet,
|
||||
BuildFlag_VetExtra,
|
||||
BuildFlag_UseLLVMApi,
|
||||
@@ -722,6 +723,7 @@ bool parse_build_flags(Array<String> args) {
|
||||
add_flag(&build_flags, BuildFlag_NoEntryPoint, str_lit("no-entry-point"), BuildFlagParam_None, Command__does_check &~ Command_test);
|
||||
add_flag(&build_flags, BuildFlag_UseLLD, str_lit("lld"), BuildFlagParam_None, Command__does_build);
|
||||
add_flag(&build_flags, BuildFlag_UseSeparateModules,str_lit("use-separate-modules"),BuildFlagParam_None, Command__does_build);
|
||||
add_flag(&build_flags, BuildFlag_ThreadedChecker, str_lit("threaded-checker"), BuildFlagParam_None, Command__does_check);
|
||||
add_flag(&build_flags, BuildFlag_Vet, str_lit("vet"), BuildFlagParam_None, Command__does_check);
|
||||
add_flag(&build_flags, BuildFlag_VetExtra, str_lit("vet-extra"), BuildFlagParam_None, Command__does_check);
|
||||
add_flag(&build_flags, BuildFlag_UseLLVMApi, str_lit("llvm-api"), BuildFlagParam_None, Command__does_build);
|
||||
@@ -1206,6 +1208,10 @@ bool parse_build_flags(Array<String> args) {
|
||||
build_context.use_separate_modules = true;
|
||||
break;
|
||||
|
||||
case BuildFlag_ThreadedChecker:
|
||||
build_context.threaded_checker = true;
|
||||
break;
|
||||
|
||||
case BuildFlag_Vet:
|
||||
build_context.vet = true;
|
||||
break;
|
||||
@@ -1746,6 +1752,11 @@ void print_show_help(String const arg0, String const &command) {
|
||||
}
|
||||
|
||||
if (check) {
|
||||
print_usage_line(1, "-threaded-checker");
|
||||
print_usage_line(1, "[EXPERIMENTAL]");
|
||||
print_usage_line(2, "Multithread the semantic checker stage");
|
||||
print_usage_line(0, "");
|
||||
|
||||
print_usage_line(1, "-vet");
|
||||
print_usage_line(2, "Do extra checks on the code");
|
||||
print_usage_line(2, "Extra checks include:");
|
||||
@@ -1960,6 +1971,7 @@ int main(int arg_count, char const **arg_ptr) {
|
||||
init_global_error_collector();
|
||||
init_keyword_hash_table();
|
||||
global_big_int_init();
|
||||
init_type_mutex();
|
||||
|
||||
if (!check_env()) {
|
||||
return 1;
|
||||
|
||||
Reference in New Issue
Block a user