void DIBuilder_init (ejsval exports) { _ejs_DIBuilder_specops = _ejs_Object_specops; _ejs_DIBuilder_specops.class_name = "LLVMDIBuilder"; _ejs_DIBuilder_specops.Allocate = DIBuilder_allocate; _ejs_gc_add_root (&_ejs_DIBuilder_prototype); _ejs_DIBuilder_prototype = _ejs_object_create(_ejs_Object_prototype); _ejs_DIBuilder = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMDIBuilder", (EJSClosureFunc)DIBuilder_impl, _ejs_DIBuilder_prototype); _ejs_object_setprop_utf8 (exports, "DIBuilder", _ejs_DIBuilder); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_DIBuilder_prototype, x, DIBuilder_prototype_##x) PROTO_METHOD(createCompileUnit); PROTO_METHOD(createFile); PROTO_METHOD(createFunction); PROTO_METHOD(createLexicalBlock); PROTO_METHOD(finalize); #undef PROTO_METHOD EJS_INSTALL_SYMBOL_FUNCTION_FLAGS (_ejs_DIBuilder, create, DIBuilder_create, EJS_PROP_NOT_ENUMERABLE); }
void ArrayType_init (ejsval exports) { _ejs_ArrayType_specops = _ejs_Object_specops; _ejs_ArrayType_specops.class_name = "LLVMArray"; _ejs_ArrayType_specops.Allocate = ArrayType_allocate; _ejs_gc_add_root (&_ejs_ArrayType_prototype); _ejs_ArrayType_prototype = _ejs_object_new(_ejs_Object_prototype, &_ejs_ArrayType_specops); _ejs_ArrayType = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMArrayType", (EJSClosureFunc)ArrayType_impl, _ejs_ArrayType_prototype); _ejs_object_setprop_utf8 (exports, "ArrayType", _ejs_ArrayType); #define OBJ_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_ArrayType, x, ArrayType_##x) #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_ArrayType_prototype, x, ArrayType_prototype_##x) OBJ_METHOD(get); PROTO_METHOD(dump); PROTO_METHOD(toString); #undef PROTO_METHOD #undef OBJ_METHOD }
void Invoke_init (ejsval exports) { _ejs_Invoke_specops = _ejs_Object_specops; _ejs_Invoke_specops.class_name = "LLVMInvoke"; _ejs_Invoke_specops.Allocate = Invoke_allocate; _ejs_gc_add_root (&_ejs_Invoke_prototype); _ejs_Invoke_prototype = _ejs_object_new(_ejs_Object_prototype, &_ejs_Invoke_specops); _ejs_Invoke = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMInvoke", (EJSClosureFunc)Invoke_impl, _ejs_Invoke_prototype); _ejs_object_setprop_utf8 (exports, "Invoke", _ejs_Invoke); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_Invoke_prototype, x, Invoke_prototype_##x) PROTO_METHOD(setOnlyReadsMemory); PROTO_METHOD(setDoesNotAccessMemory); PROTO_METHOD(setDoesNotThrow); PROTO_METHOD(setStructRet); PROTO_METHOD(dump); PROTO_METHOD(toString); #undef PROTO_METHOD }
void Type_init (ejsval exports) { _ejs_gc_add_root (&_ejs_Type_prototype); _ejs_Type_prototype = _ejs_object_create(_ejs_Object_prototype); _ejs_Type = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMType", (EJSClosureFunc)Type_impl, _ejs_Type_prototype); _ejs_object_setprop_utf8 (exports, "Type", _ejs_Type); #define OBJ_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_Type, x, Type_##x) #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_Type_prototype, x, Type_prototype_##x) OBJ_METHOD(getDoubleTy); OBJ_METHOD(getInt64Ty); OBJ_METHOD(getInt32Ty); OBJ_METHOD(getInt16Ty); OBJ_METHOD(getInt8Ty); OBJ_METHOD(getInt1Ty); OBJ_METHOD(getVoidTy); PROTO_METHOD(pointerTo); PROTO_METHOD(isVoid); PROTO_METHOD(dump); PROTO_METHOD(toString); }
void Module_init (ejsval exports) { _ejs_Module_specops = _ejs_Object_specops; _ejs_Module_specops.class_name = "LLVMModule"; _ejs_Module_specops.Allocate = Module_allocate; _ejs_Module_specops.Finalize = Module_finalize; _ejs_gc_add_root (&_ejs_Module_prototype); _ejs_Module_prototype = _ejs_object_new(_ejs_Object_prototype, &_ejs_Module_specops); _ejs_Module = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMModule", (EJSClosureFunc)Module_impl, _ejs_Module_prototype); _ejs_object_setprop_utf8 (exports, "Module", _ejs_Module); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_Module_prototype, x, Module_prototype_##x) PROTO_METHOD(getGlobalVariable); PROTO_METHOD(getOrInsertIntrinsic); PROTO_METHOD(getOrInsertFunction); PROTO_METHOD(getOrInsertGlobal); PROTO_METHOD(getOrInsertExternalFunction); PROTO_METHOD(getFunction); PROTO_METHOD(dump); PROTO_METHOD(toString); PROTO_METHOD(writeToFile); PROTO_METHOD(writeBitcodeToFile); PROTO_METHOD(setDataLayout); PROTO_METHOD(setTriple); #undef PROTO_METHOD EJS_INSTALL_SYMBOL_FUNCTION_FLAGS (_ejs_Module, create, Module_create, EJS_PROP_NOT_ENUMERABLE); }
void BasicBlock_init (ejsval exports) { basicblock_specops = _ejs_Object_specops; basicblock_specops.class_name = "LLVMBasicBlock"; basicblock_specops.allocate = BasicBlock_allocate; _ejs_gc_add_root (&_ejs_BasicBlock_proto); _ejs_BasicBlock_proto = _ejs_object_new(_ejs_Object_prototype, &basicblock_specops); _ejs_BasicBlock = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMBasicBlock", (EJSClosureFunc)BasicBlock_impl, _ejs_BasicBlock_proto); _ejs_object_setprop_utf8 (exports, "BasicBlock", _ejs_BasicBlock); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_BasicBlock_proto, x, BasicBlock_prototype_##x) #define PROTO_ACCESSOR(x) EJS_INSTALL_ATOM_GETTER(_ejs_BasicBlock_proto, x, BasicBlock_prototype_get_##x) PROTO_ACCESSOR(name); PROTO_ACCESSOR(parent); PROTO_METHOD(dump); PROTO_METHOD(toString); #undef PROTO_METHOD #undef PROTO_ACCESSOR }
void IRBuilder_init (ejsval exports) { _ejs_gc_add_root (&_ejs_IRBuilder_prototype); _ejs_IRBuilder_prototype = _ejs_object_create(_ejs_Object_prototype); _ejs_IRBuilder = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMIRBuilder", (EJSClosureFunc)IRBuilder_impl, _ejs_IRBuilder_prototype); _ejs_object_setprop_utf8 (exports, "IRBuilder", _ejs_IRBuilder); #define OBJ_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_IRBuilder, x, IRBuilder_##x) OBJ_METHOD(setInsertPoint); OBJ_METHOD(setInsertPointStartBB); OBJ_METHOD(getInsertBlock); OBJ_METHOD(createRet); OBJ_METHOD(createRetVoid); OBJ_METHOD(createPointerCast); OBJ_METHOD(createFPCast); OBJ_METHOD(createCall); OBJ_METHOD(createInvoke); OBJ_METHOD(createFAdd); OBJ_METHOD(createAlloca); OBJ_METHOD(createLoad); OBJ_METHOD(createStore); OBJ_METHOD(createExtractElement); OBJ_METHOD(createExtractValue); OBJ_METHOD(createGetElementPointer); OBJ_METHOD(createInBoundsGetElementPointer); OBJ_METHOD(createStructGetElementPointer); OBJ_METHOD(createICmpEq); OBJ_METHOD(createICmpSGt); OBJ_METHOD(createICmpUGE); OBJ_METHOD(createICmpUGt); OBJ_METHOD(createICmpULt); OBJ_METHOD(createBr); OBJ_METHOD(createCondBr); OBJ_METHOD(createPhi); OBJ_METHOD(createGlobalStringPtr); OBJ_METHOD(createUnreachable); OBJ_METHOD(createAnd); OBJ_METHOD(createOr); OBJ_METHOD(createZExt); OBJ_METHOD(createIntToPtr); OBJ_METHOD(createPtrToInt); OBJ_METHOD(createBitCast); OBJ_METHOD(createSwitch); OBJ_METHOD(createSelect); OBJ_METHOD(createNswSub); OBJ_METHOD(createLandingPad); OBJ_METHOD(createResume); OBJ_METHOD(setCurrentDebugLocation); #undef OBJ_METHOD }
void DILexicalBlock_init (ejsval exports) { _ejs_DILexicalBlock_specops = _ejs_Object_specops; _ejs_DILexicalBlock_specops.class_name = "LLVMDILexicalBlock"; _ejs_DILexicalBlock_specops.Allocate = DILexicalBlock_allocate; _ejs_gc_add_root (&_ejs_DILexicalBlock_prototype); _ejs_DILexicalBlock_prototype = _ejs_object_create(_ejs_Object_prototype); _ejs_DILexicalBlock = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMDILexicalBlock", (EJSClosureFunc)DILexicalBlock_impl, _ejs_DILexicalBlock_prototype); _ejs_object_setprop_utf8 (exports, "DILexicalBlock", _ejs_DILexicalBlock); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_DILexicalBlock_prototype, x, DILexicalBlock_prototype_##x) #undef PROTO_METHOD }
void ConstantArray_init (ejsval exports) { _ejs_gc_add_root (&_ejs_ConstantArray_proto); _ejs_ConstantArray_proto = _ejs_object_create(_ejs_Object_prototype); _ejs_ConstantArray = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMConstantArray", (EJSClosureFunc)ConstantArray_impl, _ejs_ConstantArray_proto); _ejs_object_setprop_utf8 (exports, "ConstantArray", _ejs_ConstantArray); #define OBJ_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_ConstantArray, x, ConstantArray_##x) #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_ConstantArray_proto, x, ConstantArray_prototype_##x) OBJ_METHOD(get); #undef PROTO_METHOD #undef OBJ_METHOD }
void DebugLoc_init (ejsval exports) { _ejs_DebugLoc_specops = _ejs_Object_specops; _ejs_DebugLoc_specops.class_name = "LLVMDebugLoc"; _ejs_DebugLoc_specops.Allocate = DebugLoc_allocate; _ejs_gc_add_root (&_ejs_DebugLoc_prototype); _ejs_DebugLoc_prototype = _ejs_object_create(_ejs_Object_prototype); _ejs_DebugLoc = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMDebugLoc", (EJSClosureFunc)DebugLoc_impl, _ejs_DebugLoc_prototype); _ejs_object_setprop_utf8 (exports, "DebugLoc", _ejs_DebugLoc); #define OBJ_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_DebugLoc, x, DebugLoc_##x) OBJ_METHOD(get); }
void GlobalVariable_init (ejsval exports) { _ejs_gc_add_root (&_ejs_GlobalVariable_proto); _ejs_GlobalVariable_proto = _ejs_object_new(_ejs_Object_prototype, &_ejs_Object_specops); _ejs_GlobalVariable = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMGlobalVariable", (EJSClosureFunc)GlobalVariable_impl, _ejs_GlobalVariable_proto); _ejs_object_setprop_utf8 (exports, "GlobalVariable", _ejs_GlobalVariable); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_GlobalVariable_proto, x, GlobalVariable_prototype_##x) PROTO_METHOD(setAlignment); PROTO_METHOD(setInitializer); PROTO_METHOD(dump); PROTO_METHOD(toString); #undef PROTO_METHOD }
void StructType_init (ejsval exports) { _ejs_StructType_proto = _ejs_object_create (Type_get_prototype()); _ejs_StructType = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMStructType", (EJSClosureFunc)StructType_impl, _ejs_StructType_proto); _ejs_object_setprop_utf8 (exports, "StructType", _ejs_StructType); #define OBJ_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_StructType, x, StructType_##x) #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_StructType_proto, x, StructType_prototype_##x) OBJ_METHOD(create); PROTO_METHOD(dump); PROTO_METHOD(toString); #undef OBJ_METHOD #undef PROTO_METHOD }
void Function_init (ejsval exports) { function_specops = _ejs_Object_specops; function_specops.class_name = "LLVMFunction"; function_specops.allocate = Function_allocate; _ejs_gc_add_root (&_ejs_Function_proto); _ejs_Function_proto = _ejs_object_new(_ejs_Object_prototype, &function_specops); _ejs_Function = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMFunction", (EJSClosureFunc)Function_impl, _ejs_Function_proto); _ejs_object_setprop_utf8 (exports, "Function", _ejs_Function); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_Function_proto, x, Function_prototype_##x) #define PROTO_ACCESSOR(x) EJS_INSTALL_ATOM_GETTER(_ejs_Function_proto, x, Function_prototype_get_##x) PROTO_ACCESSOR(args); PROTO_ACCESSOR(argSize); PROTO_ACCESSOR(name); PROTO_ACCESSOR(returnType); PROTO_ACCESSOR(type); PROTO_ACCESSOR(doesNotThrow); PROTO_ACCESSOR(onlyReadsMemory); PROTO_ACCESSOR(doesNotAccessMemory); PROTO_METHOD(dump); PROTO_METHOD(setOnlyReadsMemory); PROTO_METHOD(setDoesNotAccessMemory); PROTO_METHOD(setDoesNotThrow); PROTO_METHOD(setGC); PROTO_METHOD(setExternalLinkage); PROTO_METHOD(setInternalLinkage); PROTO_METHOD(toString); PROTO_METHOD(hasStructRetAttr); PROTO_METHOD(setStructRet); #undef PROTO_METHOD #undef PROTO_ACCESSOR }
void AllocaInst_init (ejsval exports) { allocainst_specops = _ejs_Object_specops; allocainst_specops.class_name = "LLVMAllocaInst"; allocainst_specops.allocate = AllocaInst_allocate; _ejs_gc_add_root (&_ejs_AllocaInst_proto); _ejs_AllocaInst_proto = _ejs_object_new(_ejs_Object_prototype, &allocainst_specops); _ejs_AllocaInst = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMAllocaInst", (EJSClosureFunc)AllocaInst_impl, _ejs_AllocaInst_proto); _ejs_object_setprop_utf8 (exports, "AllocaInst", _ejs_AllocaInst); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_AllocaInst_proto, x, AllocaInst_prototype_##x) PROTO_METHOD(dump); PROTO_METHOD(toString); PROTO_METHOD(setAlignment); #undef PROTO_METHOD }
void Constant_init (ejsval exports) { _ejs_gc_add_root (&_ejs_Constant_prototype); _ejs_Constant_prototype = _ejs_object_create(_ejs_Object_prototype); _ejs_Constant = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMConstant", (EJSClosureFunc)Constant_impl, _ejs_Constant_prototype); _ejs_object_setprop_utf8 (exports, "Constant", _ejs_Constant); #define OBJ_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_Constant, x, Constant_##x) #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_Constant_prototype, x, Constant_prototype_##x) OBJ_METHOD(getNull); OBJ_METHOD(getAggregateZero); OBJ_METHOD(getBoolValue); OBJ_METHOD(getIntegerValue); #undef PROTO_METHOD #undef OBJ_METHOD }
void FunctionType_init (ejsval exports) { _ejs_gc_add_root (&_ejs_FunctionType_proto); _ejs_FunctionType_proto = _ejs_object_create (Type_get_prototype()); _ejs_FunctionType = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMFunctionType", (EJSClosureFunc)FunctionType_impl, _ejs_FunctionType_proto); _ejs_object_setprop_utf8 (exports, "FunctionType", _ejs_FunctionType); #define OBJ_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_FunctionType, x, FunctionType_##x) #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_FunctionType_proto, x, FunctionType_prototype_##x) OBJ_METHOD(get); PROTO_METHOD(getReturnType); PROTO_METHOD(getParamType); PROTO_METHOD(dump); PROTO_METHOD(toString); #undef OBJ_METHOD #undef PROTO_METHOD }
void LandingPad_init (ejsval exports) { _ejs_LandingPad_specops = _ejs_Object_specops; _ejs_LandingPad_specops.class_name = "LLVMLandingPad"; _ejs_LandingPad_specops.allocate = LandingPad_allocate; _ejs_gc_add_root (&_ejs_LandingPad_prototype); _ejs_LandingPad_prototype = _ejs_object_new(_ejs_Object_prototype, &_ejs_LandingPad_specops); _ejs_LandingPad = _ejs_function_new_utf8_with_proto (_ejs_null, "LLVMLandingPad", (EJSClosureFunc)LandingPad_impl, _ejs_LandingPad_prototype); _ejs_object_setprop_utf8 (exports, "LandingPad", _ejs_LandingPad); #define PROTO_METHOD(x) EJS_INSTALL_ATOM_FUNCTION(_ejs_LandingPad_prototype, x, LandingPad_prototype_##x) PROTO_METHOD(dump); PROTO_METHOD(toString); PROTO_METHOD(setCleanup); PROTO_METHOD(addClause); #undef PROTO_METHOD }