File tree 1 file changed +23
-2
lines changed 1 file changed +23
-2
lines changed Original file line number Diff line number Diff line change @@ -48,6 +48,29 @@ entry:
48
48
}
49
49
```
50
50
51
+ ### Types
52
+
53
+ LLVM IR is a strong, statically typed language. As such, values and functions
54
+ are tagged with their types, and conversions between them must be explicit (see
55
+ [ Conversion Operators] ( http://llvm.org/docs/LangRef.html#conversion-operations ) ).
56
+ LLVMSwift represents this with values conforming to the ` IRType ` protocol and defines
57
+ the following types:
58
+
59
+ | ** Type** | ** Represents** |
60
+ | :---:| :---:|
61
+ | VoidType | Nothing; Has no size |
62
+ | IntType | Integer and Boolean values (` i1 ` ) |
63
+ | FloatType | Floating-point values |
64
+ | FunctionType | Function values |
65
+ | LabelType | Code labels |
66
+ | TokenType | Values paired with instructions |
67
+ | MetadataType | Embedded metadata |
68
+ | X86MMXType | X86 MMX values |
69
+ | PointerType | Pointer values |
70
+ | VectorType | SIMD data |
71
+ | ArrayType | Homogeneous values |
72
+ | Structure Type | Heterogeneous values |
73
+
51
74
52
75
### Control Flow
53
76
@@ -158,8 +181,6 @@ print(fn(true)) // 0.00917431192660551...
158
181
print (fn (false )) // 0.0112359550561798...
159
182
```
160
183
161
- ### Platform Management
162
-
163
184
## Installation
164
185
165
186
There are a couple, annoying steps you need to get it working before it'll
You can’t perform that action at this time.
0 commit comments