InstCombine.h 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #pragma once
  2. #ifdef __GNUC__
  3. #pragma GCC diagnostic push
  4. #pragma GCC diagnostic ignored "-Wunused-parameter"
  5. #endif
  6. /*===-- Scalar.h - Scalar Transformation Library C Interface ----*- C++ -*-===*\
  7. |* *|
  8. |* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|
  9. |* Exceptions. *|
  10. |* See https://llvm.org/LICENSE.txt for license information. *|
  11. |* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|
  12. |* *|
  13. |*===----------------------------------------------------------------------===*|
  14. |* *|
  15. |* This header declares the C interface to libLLVMInstCombine.a, which *|
  16. |* combines instructions to form fewer, simple IR instructions. *|
  17. |* *|
  18. \*===----------------------------------------------------------------------===*/
  19. #ifndef LLVM_C_TRANSFORMS_INSTCOMBINE_H
  20. #define LLVM_C_TRANSFORMS_INSTCOMBINE_H
  21. #include "llvm-c/ExternC.h"
  22. #include "llvm-c/Types.h"
  23. LLVM_C_EXTERN_C_BEGIN
  24. /**
  25. * @defgroup LLVMCTransformsInstCombine Instruction Combining transformations
  26. * @ingroup LLVMCTransforms
  27. *
  28. * @{
  29. */
  30. /** See llvm::createInstructionCombiningPass function. */
  31. void LLVMAddInstructionCombiningPass(LLVMPassManagerRef PM);
  32. /**
  33. * @}
  34. */
  35. LLVM_C_EXTERN_C_END
  36. #endif
  37. #ifdef __GNUC__
  38. #pragma GCC diagnostic pop
  39. #endif