Counter Strike : Global Offensive Source Code
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

81 lines
2.8 KiB

  1. /*===-- IPO.h - Interprocedural Transformations C Interface -----*- C++ -*-===*\
  2. |* *|
  3. |* The LLVM Compiler Infrastructure *|
  4. |* *|
  5. |* This file is distributed under the University of Illinois Open Source *|
  6. |* License. See LICENSE.TXT for details. *|
  7. |* *|
  8. |*===----------------------------------------------------------------------===*|
  9. |* *|
  10. |* This header declares the C interface to libLLVMIPO.a, which implements *|
  11. |* various interprocedural transformations of the LLVM IR. *|
  12. |* *|
  13. \*===----------------------------------------------------------------------===*/
  14. #ifndef LLVM_C_TRANSFORMS_IPO_H
  15. #define LLVM_C_TRANSFORMS_IPO_H
  16. #include "llvm-c/Core.h"
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20. /**
  21. * @defgroup LLVMCTransformsIPO Interprocedural transformations
  22. * @ingroup LLVMCTransforms
  23. *
  24. * @{
  25. */
  26. /** See llvm::createArgumentPromotionPass function. */
  27. void LLVMAddArgumentPromotionPass(LLVMPassManagerRef PM);
  28. /** See llvm::createConstantMergePass function. */
  29. void LLVMAddConstantMergePass(LLVMPassManagerRef PM);
  30. /** See llvm::createDeadArgEliminationPass function. */
  31. void LLVMAddDeadArgEliminationPass(LLVMPassManagerRef PM);
  32. /** See llvm::createFunctionAttrsPass function. */
  33. void LLVMAddFunctionAttrsPass(LLVMPassManagerRef PM);
  34. /** See llvm::createFunctionInliningPass function. */
  35. void LLVMAddFunctionInliningPass(LLVMPassManagerRef PM);
  36. /** See llvm::createAlwaysInlinerPass function. */
  37. void LLVMAddAlwaysInlinerPass(LLVMPassManagerRef PM);
  38. /** See llvm::createGlobalDCEPass function. */
  39. void LLVMAddGlobalDCEPass(LLVMPassManagerRef PM);
  40. /** See llvm::createGlobalOptimizerPass function. */
  41. void LLVMAddGlobalOptimizerPass(LLVMPassManagerRef PM);
  42. /** See llvm::createIPConstantPropagationPass function. */
  43. void LLVMAddIPConstantPropagationPass(LLVMPassManagerRef PM);
  44. /** See llvm::createPruneEHPass function. */
  45. void LLVMAddPruneEHPass(LLVMPassManagerRef PM);
  46. /** See llvm::createIPSCCPPass function. */
  47. void LLVMAddIPSCCPPass(LLVMPassManagerRef PM);
  48. /** See llvm::createInternalizePass function. */
  49. void LLVMAddInternalizePass(LLVMPassManagerRef, unsigned AllButMain);
  50. /** See llvm::createStripDeadPrototypesPass function. */
  51. void LLVMAddStripDeadPrototypesPass(LLVMPassManagerRef PM);
  52. /** See llvm::createStripSymbolsPass function. */
  53. void LLVMAddStripSymbolsPass(LLVMPassManagerRef PM);
  54. /**
  55. * @}
  56. */
  57. #ifdef __cplusplus
  58. }
  59. #endif /* defined(__cplusplus) */
  60. #endif