📄 aslmain.c
字号:
break; case 'd': switch (AcpiGbl_Optarg[0]) { case '^': Gbl_DoCompile = FALSE; break; case 'c': break; default: printf ("Unknown option: -d%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } Gbl_DisasmFlag = TRUE; break; case 'e': Gbl_ExternalFilename = AcpiGbl_Optarg; break; case 'f': /* Ignore errors and force creation of aml file */ Gbl_IgnoreErrors = TRUE; break; case 'g': /* Get all ACPI tables */ Gbl_GetAllTables = TRUE; Gbl_DoCompile = FALSE; break; case 'h': switch (AcpiGbl_Optarg[0]) { case '^': HelpMessage (); exit (0); case 'c': UtDisplayConstantOpcodes (); exit (0); case 'r': /* reserved names */ MpDisplayReservedNames (); exit (0); default: printf ("Unknown option: -h%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } break; case 'i': switch (AcpiGbl_Optarg[0]) { case 'a': /* Produce assembly code include file */ Gbl_AsmIncludeOutputFlag = TRUE; break; case 'c': /* Produce C include file */ Gbl_C_IncludeOutputFlag = TRUE; break; default: printf ("Unknown option: -s%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } break; case 'l': switch (AcpiGbl_Optarg[0]) { case '^': /* Produce listing file (Mixed source/aml) */ Gbl_ListingFlag = TRUE; break; case 'n': /* Produce namespace file */ Gbl_NsOutputFlag = TRUE; break; case 's': /* Produce combined source file */ Gbl_SourceOutputFlag = TRUE; break; default: printf ("Unknown option: -l%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } break; case 'o': switch (AcpiGbl_Optarg[0]) { case 'a': /* Disable all optimizations */ Gbl_FoldConstants = FALSE; Gbl_IntegerOptimizationFlag = FALSE; Gbl_ReferenceOptimizationFlag = FALSE; break; case 'f': /* Disable folding on "normal" expressions */ Gbl_FoldConstants = FALSE; break; case 'i': /* Disable integer optimization to constants */ Gbl_IntegerOptimizationFlag = FALSE; break; case 'n': /* Disable named reference optimization */ Gbl_ReferenceOptimizationFlag = FALSE; break; case 't': /* Display compile time(s) */ Gbl_CompileTimesFlag = TRUE; break; default: printf ("Unknown option: -c%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } break; case 'p': /* Override default AML output filename */ Gbl_OutputFilenamePrefix = AcpiGbl_Optarg; Gbl_UseDefaultAmlFilename = FALSE; break; case 'r': Gbl_RevisionOverride = (UINT8) strtoul (AcpiGbl_Optarg, NULL, 0); break; case 's': switch (AcpiGbl_Optarg[0]) { case 'a': /* Produce assembly code output file */ Gbl_AsmOutputFlag = TRUE; break; case 'c': /* Produce C hex output file */ Gbl_C_OutputFlag = TRUE; break; default: printf ("Unknown option: -s%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } break; case 't': /* Produce hex table output file */ switch (AcpiGbl_Optarg[0]) { case 'a': Gbl_HexOutputFlag = HEX_OUTPUT_ASM; break; case 'c': Gbl_HexOutputFlag = HEX_OUTPUT_C; break; default: printf ("Unknown option: -t%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } break; case 'v': switch (AcpiGbl_Optarg[0]) { case 'i': /* Less verbose error messages */ Gbl_VerboseErrors = FALSE; break; case 'o': Gbl_DisplayOptimizations = TRUE; break; case 'r': Gbl_DisplayRemarks = FALSE; break; case 's': Gbl_DoSignon = FALSE; break; default: printf ("Unknown option: -v%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } break; case 'w': /* Set warning levels */ switch (AcpiGbl_Optarg[0]) { case '1': Gbl_WarningLevel = ASL_WARNING; break; case '2': Gbl_WarningLevel = ASL_WARNING2; break; case '3': Gbl_WarningLevel = ASL_WARNING3; break; default: printf ("Unknown option: -w%s\n", AcpiGbl_Optarg); BadCommandLine = TRUE; break; } break; case 'x': AcpiDbgLevel = strtoul (AcpiGbl_Optarg, NULL, 16); break; default: BadCommandLine = TRUE; break; } /* Next parameter must be the input filename */ if (!argv[AcpiGbl_Optind] && !Gbl_DisasmFlag && !Gbl_GetAllTables) { printf ("Missing input filename\n"); BadCommandLine = TRUE; } if (Gbl_DoSignon) { AslCompilerSignon (ASL_FILE_STDOUT); } /* Abort if anything went wrong on the command line */ if (BadCommandLine) { printf ("\n"); Usage (); exit (1); } return (AcpiGbl_Optind);}/******************************************************************************* * * FUNCTION: main * * PARAMETERS: Standard argc/argv * * RETURN: Program termination code * * DESCRIPTION: C main routine for the Asl Compiler. Handle command line * options and begin the compile for each file on the command line * ******************************************************************************/int ACPI_SYSTEM_XFACEmain ( int argc, char **argv){ ACPI_STATUS Status; int Index;#ifdef _DEBUG _CrtSetDbgFlag (_CRTDBG_CHECK_ALWAYS_DF | _CRTDBG_LEAK_CHECK_DF | _CrtSetDbgFlag(_CRTDBG_REPORT_FLAG));#endif /* Init and command line */ AslInitialize (); Index = AslCommandLine (argc, argv); /* Process each pathname/filename in the list, with possible wildcards */ while (argv[Index]) { Status = AslDoOnePathname (argv[Index]); if (ACPI_FAILURE (Status)) { return (-1); } Index++; } return (0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -