All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.qbicc.machine.llvm.FunctionDefinition Maven / Gradle / Ivy

package org.qbicc.machine.llvm;

/**
 *
 */
public interface FunctionDefinition extends Function {

    LLBasicBlock createBlock();
    LLBasicBlock getRootBlock();

    // overrides

    FunctionDefinition linkage(Linkage linkage);

    FunctionDefinition visibility(Visibility visibility);

    FunctionDefinition dllStorageClass(DllStorageClass dllStorageClass);

    FunctionDefinition callingConvention(CallingConvention callingConvention);

    FunctionDefinition addressNaming(AddressNaming addressNaming);

    FunctionDefinition addressSpace(int addressSpace);

    FunctionDefinition alignment(int alignment);

    FunctionDefinition gc(String gc);

    FunctionDefinition variadic();

    FunctionDefinition meta(String name, LLValue metadata);

    FunctionDefinition comment(String comment);

    // additional properties

    FunctionDefinition section(String section);

    FunctionDefinition preemption(RuntimePreemption preemption);

    FunctionDefinition personality(LLValue personalityValue, LLValue personalityType);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy