pub fn display_help(argv0: &str) {
println!("Usage: {} [options] [file list] [-a] [arg list]", argv0);
println!();
println!("When file list is omitted, an interactive REPL is started instead.");
println!();
println!("Available options:");
println!(" --coverage: collect code coverage while running the code and output results to coverage.out");
println!(" --counters: collect native counters data while running the code and output results to callgrind.out");
println!(" -h, --help: Display this usage message.");
println!(
" -i, --interactive: Run an interactive REPL after executing the last script specified."
);
println!(
" -O<n>: compile with optimization level n (default 1, n should be between 0 and 2)."
);
println!(" -g<n>: compile with debug level n (default 1, n should be between 0 and 2).");
println!(" --profile[=N]: profile the code using N Hz sampling (default 10000) and output results to profile.out");
println!(" --timetrace: record compiler time tracing information into trace.json");
println!(" --codegen: execute code using native code generation");
println!(" --codegen-cold: execute code using native code generation, including any functions deemed not profitable to natively compile");
println!(" --codegen-perf: execute code using native code generation and profile using perf (only on Linux)");
println!(" --program-args,-a: declare start of arguments to be passed to the Luau program");
println!(" --fflags=<flags>: comma-separated list of fast flags to enable/disable (--fflags=true,false,LuauFlag1=true,LuauFlag2=false).");
}