Trait FnAbiLlvmExt

Source
pub(crate) trait FnAbiLlvmExt<'ll, 'tcx> {
    // Required methods
    fn llvm_type(&self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>) -> &'ll Type;
    fn ptr_to_llvm_type(
        &self,
        cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>,
    ) -> &'ll Type;
    fn llvm_cconv(&self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>) -> CallConv;
    fn apply_attrs_llfn(
        &self,
        cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>,
        llfn: &'ll Value,
        instance: Option<Instance<'tcx>>,
    );
    fn apply_attrs_callsite(
        &self,
        bx: &mut GenericBuilder<'_, 'll, FullCx<'ll, 'tcx>>,
        callsite: &'ll Value,
    );
}

Required Methods§

Source

fn llvm_type(&self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>) -> &'ll Type

Source

fn ptr_to_llvm_type(&self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>) -> &'ll Type

Source

fn llvm_cconv(&self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>) -> CallConv

Source

fn apply_attrs_llfn( &self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>, llfn: &'ll Value, instance: Option<Instance<'tcx>>, )

Apply attributes to a function declaration/definition.

Source

fn apply_attrs_callsite( &self, bx: &mut GenericBuilder<'_, 'll, FullCx<'ll, 'tcx>>, callsite: &'ll Value, )

Apply attributes to a function call.

Implementations on Foreign Types§

Source§

impl<'ll, 'tcx> FnAbiLlvmExt<'ll, 'tcx> for FnAbi<'tcx, Ty<'tcx>>

Source§

fn llvm_type(&self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>) -> &'ll Type

Source§

fn ptr_to_llvm_type(&self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>) -> &'ll Type

Source§

fn llvm_cconv(&self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>) -> CallConv

Source§

fn apply_attrs_llfn( &self, cx: &GenericCx<'ll, FullCx<'ll, 'tcx>>, llfn: &'ll Value, instance: Option<Instance<'tcx>>, )

Source§

fn apply_attrs_callsite( &self, bx: &mut GenericBuilder<'_, 'll, FullCx<'ll, 'tcx>>, callsite: &'ll Value, )

Implementors§