void AsRemoveDebugMacros ( char *Buffer) { AsRemoveConditionalCompile (Buffer, "ACPI_DEBUG_OUTPUT"); AsRemoveStatement (Buffer, "ACPI_DEBUG_PRINT", REPLACE_WHOLE_WORD); AsRemoveStatement (Buffer, "ACPI_DEBUG_PRINT_RAW", REPLACE_WHOLE_WORD); AsRemoveStatement (Buffer, "DEBUG_EXEC", REPLACE_WHOLE_WORD); AsRemoveStatement (Buffer, "FUNCTION_ENTRY", REPLACE_WHOLE_WORD); AsRemoveStatement (Buffer, "PROC_NAME", REPLACE_WHOLE_WORD); AsRemoveStatement (Buffer, "FUNCTION_TRACE", REPLACE_SUBSTRINGS); AsRemoveStatement (Buffer, "DUMP_", REPLACE_SUBSTRINGS); AsReplaceString ("return_VOID", "return", REPLACE_WHOLE_WORD, Buffer); AsReplaceString ("return_PTR", "return", REPLACE_WHOLE_WORD, Buffer); AsReplaceString ("return_ACPI_STATUS", "return", REPLACE_WHOLE_WORD, Buffer); AsReplaceString ("return_acpi_status", "return", REPLACE_WHOLE_WORD, Buffer); AsReplaceString ("return_VALUE", "return", REPLACE_WHOLE_WORD, Buffer); }
void AsConvertFile ( ACPI_CONVERSION_TABLE *ConversionTable, char *FileBuffer, char *Filename, ACPI_NATIVE_INT FileType) { UINT32 i; UINT32 Functions; ACPI_STRING_TABLE *StringTable; ACPI_IDENTIFIER_TABLE *ConditionalTable; ACPI_IDENTIFIER_TABLE *LineTable; ACPI_IDENTIFIER_TABLE *MacroTable; ACPI_TYPED_IDENTIFIER_TABLE *StructTable; ACPI_IDENTIFIER_TABLE *SpecialMacroTable; switch (FileType) { case FILE_TYPE_SOURCE: Functions = ConversionTable->SourceFunctions; StringTable = ConversionTable->SourceStringTable; LineTable = ConversionTable->SourceLineTable; ConditionalTable = ConversionTable->SourceConditionalTable; MacroTable = ConversionTable->SourceMacroTable; StructTable = ConversionTable->SourceStructTable; SpecialMacroTable = ConversionTable->SourceSpecialMacroTable; break; case FILE_TYPE_HEADER: Functions = ConversionTable->HeaderFunctions; StringTable = ConversionTable->HeaderStringTable; LineTable = ConversionTable->HeaderLineTable; ConditionalTable = ConversionTable->HeaderConditionalTable; MacroTable = ConversionTable->HeaderMacroTable; StructTable = ConversionTable->HeaderStructTable; SpecialMacroTable = ConversionTable->HeaderSpecialMacroTable; break; default: printf ("Unknown file type, cannot process\n"); return; } Gbl_StructDefs = strstr (FileBuffer, "/* acpisrc:StructDefs"); Gbl_Files++; VERBOSE_PRINT (("Processing %u bytes\n", (unsigned int) strlen (FileBuffer))); if (Gbl_Cleanup) { AsRemoveExtraLines (FileBuffer, Filename); AsRemoveSpacesAfterPeriod (FileBuffer, Filename); } if (ConversionTable->LowerCaseTable) { for (i = 0; ConversionTable->LowerCaseTable[i].Identifier; i++) { AsLowerCaseString (ConversionTable->LowerCaseTable[i].Identifier, FileBuffer); } } /* Process all the string replacements */ if (StringTable) { for (i = 0; StringTable[i].Target; i++) { AsReplaceString (StringTable[i].Target, StringTable[i].Replacement, StringTable[i].Type, FileBuffer); } } if (LineTable) { for (i = 0; LineTable[i].Identifier; i++) { AsRemoveLine (FileBuffer, LineTable[i].Identifier); } } if (ConditionalTable) { for (i = 0; ConditionalTable[i].Identifier; i++) { AsRemoveConditionalCompile (FileBuffer, ConditionalTable[i].Identifier); } } if (MacroTable) { for (i = 0; MacroTable[i].Identifier; i++) { AsRemoveMacro (FileBuffer, MacroTable[i].Identifier); } } if (StructTable) { for (i = 0; StructTable[i].Identifier; i++) { AsInsertPrefix (FileBuffer, StructTable[i].Identifier, StructTable[i].Type); } } if (SpecialMacroTable) { for (i = 0; SpecialMacroTable[i].Identifier; i++) { AsCleanupSpecialMacro (FileBuffer, SpecialMacroTable[i].Identifier); } } /* Process the function table */ for (i = 0; i < 32; i++) { /* Decode the function bitmap */ switch ((1 << i) & Functions) { case 0: /* This function not configured */ break; case CVT_COUNT_TABS: AsCountTabs (FileBuffer, Filename); break; case CVT_COUNT_NON_ANSI_COMMENTS: AsCountNonAnsiComments (FileBuffer, Filename); break; case CVT_CHECK_BRACES: AsCheckForBraces (FileBuffer, Filename); break; case CVT_TRIM_LINES: AsTrimLines (FileBuffer, Filename); break; case CVT_COUNT_LINES: AsCountSourceLines (FileBuffer, Filename); break; case CVT_BRACES_ON_SAME_LINE: AsBracesOnSameLine (FileBuffer); break; case CVT_MIXED_CASE_TO_UNDERSCORES: AsMixedCaseToUnderscores (FileBuffer, Filename); break; case CVT_LOWER_CASE_IDENTIFIERS: AsLowerCaseIdentifiers (FileBuffer); break; case CVT_REMOVE_DEBUG_MACROS: AsRemoveDebugMacros (FileBuffer); break; case CVT_TRIM_WHITESPACE: AsTrimWhitespace (FileBuffer); break; case CVT_REMOVE_EMPTY_BLOCKS: AsRemoveEmptyBlocks (FileBuffer, Filename); break; case CVT_REDUCE_TYPEDEFS: AsReduceTypedefs (FileBuffer, "typedef union"); AsReduceTypedefs (FileBuffer, "typedef struct"); break; case CVT_SPACES_TO_TABS4: AsTabify4 (FileBuffer); break; case CVT_SPACES_TO_TABS8: AsTabify8 (FileBuffer); break; case CVT_COUNT_SHORTMULTILINE_COMMENTS: #ifdef ACPI_FUTURE_IMPLEMENTATION AsTrimComments (FileBuffer, Filename); #endif break; default: printf ("Unknown conversion subfunction opcode\n"); break; } } if (ConversionTable->NewHeader) { AsReplaceHeader (FileBuffer, ConversionTable->NewHeader); } }