Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Added the rest of the enum covers and added the comparison instructio…

…ns to Builder.
  • Loading branch information...
commit 8908665ef52ec31598721b20de1971acc266f114 1 parent 04b70e3
Scott Olson authored

Showing 1 changed file with 65 additions and 68 deletions. Show diff stats Hide diff stats

  1. +65 68 llvm/Core.ooc
133 llvm/Core.ooc
@@ -210,7 +210,8 @@ Builder: cover from LLVMBuilderRef {
210 210 fpCast: extern(LLVMBuildFPCast) func (Value, Type, name: String) -> Value
211 211
212 212 // Comparison instructions
213   -// icmp: extern(LLVMBuildICmp) func ()
  213 + icmp: extern(LLVMBuildICmp) func (IntPredicate, lhs, rhs: Value, name: String) -> Value
  214 + fcmp: extern(LLVMBuildICmp) func (RealPredicate, lhs, rhs: Value, name: String) -> Value
214 215 }
215 216
216 217
@@ -258,70 +259,66 @@ TypeKind: cover from LLVMTypeKind {
258 259 metadata: extern(LLVMMetadataTypeKind) static This
259 260 }
260 261
261   -//typedef enum {
262   -// LLVMExternalLinkage, /**< Externally visible function */
263   -// LLVMAvailableExternallyLinkage,
264   -// LLVMLinkOnceAnyLinkage, /**< Keep one copy of function when linking (inline)*/
265   -// LLVMLinkOnceODRLinkage, /**< Same, but only replaced by something
266   -// equivalent. */
267   -// LLVMWeakAnyLinkage, /**< Keep one copy of function when linking (weak) */
268   -// LLVMWeakODRLinkage, /**< Same, but only replaced by something
269   -// equivalent. */
270   -// LLVMAppendingLinkage, /**< Special purpose, only applies to global arrays */
271   -// LLVMInternalLinkage, /**< Rename collisions when linking (static
272   -// functions) */
273   -// LLVMPrivateLinkage, /**< Like Internal, but omit from symbol table */
274   -// LLVMDLLImportLinkage, /**< Function to be imported from DLL */
275   -// LLVMDLLExportLinkage, /**< Function to be accessible from DLL */
276   -// LLVMExternalWeakLinkage,/**< ExternalWeak linkage description */
277   -// LLVMGhostLinkage, /**< Stand-in functions for streaming fns from
278   -// bitcode */
279   -// LLVMCommonLinkage, /**< Tentative definitions */
280   -// LLVMLinkerPrivateLinkage /**< Like Private, but linker removes. */
281   -//} LLVMLinkage;
282   -
283   -//typedef enum {
284   -// LLVMDefaultVisibility, /**< The GV is visible */
285   -// LLVMHiddenVisibility, /**< The GV is hidden */
286   -// LLVMProtectedVisibility /**< The GV is protected */
287   -//} LLVMVisibility;
288   -
289   -//typedef enum {
290   -// LLVMCCallConv = 0,
291   -// LLVMFastCallConv = 8,
292   -// LLVMColdCallConv = 9,
293   -// LLVMX86StdcallCallConv = 64,
294   -// LLVMX86FastcallCallConv = 65
295   -//} LLVMCallConv;
296   -
297   -//typedef enum {
298   -// LLVMIntEQ = 32, /**< equal */
299   -// LLVMIntNE, /**< not equal */
300   -// LLVMIntUGT, /**< unsigned greater than */
301   -// LLVMIntUGE, /**< unsigned greater or equal */
302   -// LLVMIntULT, /**< unsigned less than */
303   -// LLVMIntULE, /**< unsigned less or equal */
304   -// LLVMIntSGT, /**< signed greater than */
305   -// LLVMIntSGE, /**< signed greater or equal */
306   -// LLVMIntSLT, /**< signed less than */
307   -// LLVMIntSLE /**< signed less or equal */
308   -//} LLVMIntPredicate;
309   -
310   -//typedef enum {
311   -// LLVMRealPredicateFalse, /**< Always false (always folded) */
312   -// LLVMRealOEQ, /**< True if ordered and equal */
313   -// LLVMRealOGT, /**< True if ordered and greater than */
314   -// LLVMRealOGE, /**< True if ordered and greater than or equal */
315   -// LLVMRealOLT, /**< True if ordered and less than */
316   -// LLVMRealOLE, /**< True if ordered and less than or equal */
317   -// LLVMRealONE, /**< True if ordered and operands are unequal */
318   -// LLVMRealORD, /**< True if ordered (no nans) */
319   -// LLVMRealUNO, /**< True if unordered: isnan(X) | isnan(Y) */
320   -// LLVMRealUEQ, /**< True if unordered or equal */
321   -// LLVMRealUGT, /**< True if unordered or greater than */
322   -// LLVMRealUGE, /**< True if unordered, greater than, or equal */
323   -// LLVMRealULT, /**< True if unordered or less than */
324   -// LLVMRealULE, /**< True if unordered, less than, or equal */
325   -// LLVMRealUNE, /**< True if unordered or not equal */
326   -// LLVMRealPredicateTrue /**< Always true (always folded) */
327   -//} LLVMRealPredicate;
  262 +Linkage: cover from LLVMLinkage {
  263 + external: extern(LLVMExternalLinkage) static This
  264 + availableExternally: extern(LLVMAvailableExternallyLinkage) static This
  265 + linkOnceAny: extern(LLVMLinkOnceAnyLinkage) static This
  266 + linkOnceODR: extern(LLVMLinkOnceODRLinkage) static This
  267 + weakAny: extern(LLVMWeakAnyLinkage) static This
  268 + weakODR: extern(LLVMWeakODRLinkage) static This
  269 + appending: extern(LLVMAppendingLinkage) static This
  270 + internal: extern(LLVMInternalLinkage) static This
  271 + private: extern(LLVMPrivateLinkage) static This
  272 + dllImport: extern(LLVMDLLImportLinkage) static This
  273 + dllExport: extern(LLVMDLLExportLinkage) static This
  274 + externalWeak: extern(LLVMExternalWeakLinkage) static This
  275 + ghost: extern(LLVMGhostLinkage) static This
  276 + common: extern(LLVMCommonLinkage) static This
  277 + linkerPrivate: extern(LLVMLinkerPrivateLinkage) static This
  278 +}
  279 +
  280 +Visibility: cover from LLVMVisibility {
  281 + default: extern(LLVMDefaultVisibility) static This
  282 + hidden: extern(LLVMHiddenVisibility) static This
  283 + protected: extern(LLVMProtectedVisibility) static This
  284 +}
  285 +
  286 +CallConv: cover from LLVMCallConv {
  287 + ccall: extern(LLVMCCallConv) static This
  288 + fast: extern(LLVMFastCallConv) static This
  289 + cold: extern(LLVMColdCallConv) static This
  290 + x86stdcall: extern(LLVMX86StdcallCallConv) static This
  291 + x86fastcall: extern(LLVMX86FastcallCallConv) static This
  292 +}
  293 +
  294 +IntPredicate: cover from LLVMIntPredicate {
  295 + eq: extern(LLVMIntEQ) static This
  296 + ne: extern(LLVMIntNE) static This
  297 + ugt: extern(LLVMIntUGT) static This
  298 + uge: extern(LLVMIntUGE) static This
  299 + ult: extern(LLVMIntULT) static This
  300 + ule: extern(LLVMIntULE) static This
  301 + sgt: extern(LLVMIntSGT) static This
  302 + sge: extern(LLVMIntSGE) static This
  303 + slt: extern(LLVMIntSLT) static This
  304 + sle: extern(LLVMIntSLE) static This
  305 +}
  306 +
  307 +RealPredicate: cover from LLVMRealPredicate {
  308 + truePred: extern(LLVMRealPredicateTrue) static This
  309 + falsePred: extern(LLVMRealPredicateFalse) static This
  310 + oeq: extern(LLVMRealOEQ) static This
  311 + ogt: extern(LLVMRealOGT) static This
  312 + oge: extern(LLVMRealOGE) static This
  313 + olt: extern(LLVMRealOLT) static This
  314 + ole: extern(LLVMRealOLE) static This
  315 + one: extern(LLVMRealONE) static This
  316 + ord: extern(LLVMRealORD) static This
  317 + uno: extern(LLVMRealUNO) static This
  318 + ueq: extern(LLVMRealUEQ) static This
  319 + ugt: extern(LLVMRealUGT) static This
  320 + uge: extern(LLVMRealUGE) static This
  321 + ult: extern(LLVMRealULT) static This
  322 + ule: extern(LLVMRealULE) static This
  323 + une: extern(LLVMRealUNE) static This
  324 +}

0 comments on commit 8908665

Please sign in to comment.
Something went wrong with that request. Please try again.