function lfds700_list_asu_link_start

From liblfds.org
Jump to navigation Jump to search

Source Files

└───liblfds700
    ├───inc
    │   └───liblfds700
    │           lfds700_list_addonly_singlylinked_unordered.h
    └───src
        └───llfds700_list_addonly_singlylinked_unordered
                lfds700_list_addonly_singlylinked_unordered_insert.c

Opaque Structures

struct lfds700_list_asu_element;
struct lfds700_list_asu_state;
struct lfds700_misc_prng_state;

Prototype

void lfds700_list_asu_link_start( struct lfds700_list_asu_state *lasus,
                                  struct lfds700_list_asu_element *lasue,
                                  struct lfds700_misc_prng_state *ps );

Parameters

struct lfds700_list_asu_state *lasus

A pointer to an initialized struct lfds700_list_asu_state.

struct lfds700_list_asu_element *lasue

A pointer a user-allocated LFDS700_PAL_ATOMIC_ISOLATION_IN_BYTES aligned struct lfds700_list_asu_element. Stack declared variables will automatically be correctly aligned by the compiler, due to the information in the structure definitions; nothing has to be done. Heap allocated variables however will by no means be correctly aligned and an aligned malloc must be used.

struct lfds700_misc_prng_state *ps

A pointer to an initialized struct lfds700_misc_prng_state.

Notes

This function takes a user allocated struct lfds700_list_asu_element and then links this element as the new start of the list.

Example

Coming soon. No, really! (Written 29th Dec 2015).

See Also