Enum llvm::Attribute [] [src]

pub enum Attribute {
    ZExt,
    SExt,
    NoReturn,
    InReg,
    StructRet,
    NoUnwind,
    NoAlias,
    ByVal,
    Nest,
    ReadNone,
    ReadOnly,
    NoInline,
    AlwaysInline,
    OptimizeForSize,
    StackProtect,
    StackProtectReq,
    Alignment,
    NoCapture,
    NoRedZone,
    NoImplicitFloat,
    Naked,
    InlineHint,
    StackAlignment,
    ReturnsTwice,
    UWTable,
    NonLazyBind,
}
[]

These indicate how you want arguments / functions to be handled.

Variants

ZExt
[]

Zero-extended before or after call.

SExt
[]

Sign-extended before or after call.

NoReturn
[]

Mark the function as not returning.

InReg
[]

Force argument to be passed in register.

StructRet
[]

Hidden pointer to structure to return.

NoUnwind
[]

Function doesn't unwind stack.

NoAlias
[]

Consider to not alias after call.

ByVal
[]

Pass structure by value.

Nest
[]

Nested function static chain.

ReadNone
[]

Function doesn't access memory.

ReadOnly
[]

Function only reads from memory.

NoInline
[]

Never inline this function.

AlwaysInline
[]

Always inline this function.

OptimizeForSize
[]

Optimize this function for size.

StackProtect
[]

Stack protection.

StackProtectReq
[]

Stack protection required.

Alignment
[]

Alignment of parameter (5 bits) stored as log2 of alignment with +1 bias 0 means unaligned (different from align(1)).

NoCapture
[]

Function creates no aliases of pointer.

NoRedZone
[]

Disable redzone.

NoImplicitFloat
[]

Disable implicit float instructions.

Naked
[]

Naked function.

InlineHint
[]

The source language has marked this function as inline.

StackAlignment
[]

Alignment of stack for function (3 bits) stored as log2 of alignment with +1 bias 0 means unaligned (different from alignstack=(1)).

ReturnsTwice
[]

This function returns twice.

UWTable
[]

Function must be in unwind table.

NonLazyBind
[]

Function is called early/often, so lazy binding isn't effective.

Trait Implementations

impl From<LLVMAttribute> for Attribute
[src]

fn from(attr: LLVMAttribute) -> Attribute[]

Performs the conversion.

Derived Implementations

impl Debug for Attribute
[src]

fn fmt(&self, __arg_0: &mut Formatter) -> Result[]

Formats the value using the given formatter.

impl PartialEq for Attribute
[src]

fn eq(&self, __arg_0: &Attribute) -> bool[]

This method tests for self and other values to be equal, and is used by ==. Read more

fn ne(&self, other: &Rhs) -> bool
1.0.0
[]

This method tests for !=.

impl Eq for Attribute
[src]

impl Clone for Attribute
[src]

fn clone(&self) -> Attribute[]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)
1.0.0
[]

Performs copy-assignment from source. Read more

impl Copy for Attribute
[src]