/*========================== begin_copyright_notice ============================

Copyright (C) 2024 Intel Corporation

SPDX-License-Identifier: MIT

============================= end_copyright_notice ===========================*/
#ifndef GENX_OPTS_GENX_PRINTF_LEGALIZATION
#define GENX_OPTS_GENX_PRINTF_LEGALIZATION

namespace llvm {
void initializeGenXPrintfLegalizationPass(PassRegistry &);
}

struct GenXPrintfLegalizationPass
    : public llvm::PassInfoMixin<GenXPrintfLegalizationPass> {
  llvm::PreservedAnalyses run(llvm::Module &M, llvm::ModuleAnalysisManager &AM);
};

#endif // GENX_OPTS_GENX_PRINTF_LEGALIZATION
