Mercurial > projects > ldc
annotate tools/binding/llvm/c/transforms/IPO.d @ 1638:0de4525a9ed6
Apply workaround for #395 by klickverbot.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Mon, 08 Mar 2010 20:06:08 +0100 |
parents | 29b0f2d11c92 |
children |
rev | line source |
---|---|
1585
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
1 // Converted to the D programming language by Tomas Lindquist Olsen 2009 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
2 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
3 /*===-- IPO.h - Interprocedural Transformations C Interface -----*- C++ -*-===*\ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
4 |* *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
5 |* The LLVM Compiler Infrastructure *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
6 |* *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
7 |* This file is distributed under the University of Illinois Open Source *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
8 |* License. See LICENSE.TXT for details. *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
9 |* *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
10 |*===----------------------------------------------------------------------===*| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
11 |* *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
12 |* This header declares the C interface to libLLVMIPO.a, which implements *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
13 |* various interprocedural transformations of the LLVM IR. *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
14 |* *| |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
15 \*===----------------------------------------------------------------------===*/ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
16 module llvm.c.transforms.IPO; |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
17 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
18 import llvm.c.Core; |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
19 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
20 extern(C): |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
21 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
22 /** See llvm::createArgumentPromotionPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
23 void LLVMAddArgumentPromotionPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
24 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
25 /** See llvm::createConstantMergePass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
26 void LLVMAddConstantMergePass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
27 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
28 /** See llvm::createDeadArgEliminationPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
29 void LLVMAddDeadArgEliminationPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
30 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
31 /** See llvm::createDeadTypeEliminationPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
32 void LLVMAddDeadTypeEliminationPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
33 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
34 /** See llvm::createFunctionAttrsPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
35 void LLVMAddFunctionAttrsPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
36 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
37 /** See llvm::createFunctionInliningPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
38 void LLVMAddFunctionInliningPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
39 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
40 /** See llvm::createGlobalDCEPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
41 void LLVMAddGlobalDCEPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
42 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
43 /** See llvm::createGlobalOptimizerPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
44 void LLVMAddGlobalOptimizerPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
45 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
46 /** See llvm::createIPConstantPropagationPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
47 void LLVMAddIPConstantPropagationPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
48 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
49 /** See llvm::createLowerSetJmpPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
50 void LLVMAddLowerSetJmpPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
51 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
52 /** See llvm::createPruneEHPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
53 void LLVMAddPruneEHPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
54 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
55 /** See llvm::createRaiseAllocationsPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
56 void LLVMAddRaiseAllocationsPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
57 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
58 /** See llvm::createStripDeadPrototypesPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
59 void LLVMAddStripDeadPrototypesPass(LLVMPassManagerRef PM); |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
60 |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
61 /** See llvm::createStripSymbolsPass function. */ |
29b0f2d11c92
Updated C binding to be more up to date with LLVM.
tomas@localhost.localdomain
parents:
diff
changeset
|
62 void LLVMAddStripSymbolsPass(LLVMPassManagerRef PM); |