Basic Types

## Classes

struct | kmp_taskred_flags

enum

{
KMP_IDENT_IMB = 0x01 , KMP_IDENT_KMPC = 0x02 , KMP_IDENT_AUTOPAR = 0x08 , KMP_IDENT_ATOMIC_REDUCE = 0x10 ,
KMP_IDENT_BARRIER_EXPL = 0x20 , KMP_IDENT_BARRIER_IMPL = 0x0040 , KMP_IDENT_BARRIER_IMPL_MASK = 0x01C0 , KMP_IDENT_BARRIER_IMPL_FOR = 0x0040 ,
KMP_IDENT_BARRIER_IMPL_SECTIONS = 0x00C0 , KMP_IDENT_BARRIER_IMPL_SINGLE = 0x0140 , KMP_IDENT_BARRIER_IMPL_WORKSHARE = 0x01C0 , KMP_IDENT_WORK_LOOP = 0x200 ,
KMP_IDENT_WORK_SECTIONS = 0x400 , KMP_IDENT_WORK_DISTRIBUTE = 0x800 , KMP_IDENT_ATOMIC_HINT_MASK = 0xFF0000 , KMP_IDENT_ATOMIC_HINT_UNCONTENDED = 0x010000 ,
KMP_IDENT_ATOMIC_HINT_CONTENDED = 0x020000 , KMP_IDENT_ATOMIC_HINT_NONSPECULATIVE = 0x040000 , KMP_IDENT_ATOMIC_HINT_SPECULATIVE = 0x080000 , KMP_IDENT_OPENMP_SPEC_VERSION_MASK = 0xFF000000
}

typedef struct ident | ident_t
typedef struct kmp_taskred_flags | kmp_taskred_flags_t
typedef struct kmp_task_red_input | kmp_task_red_input_t
typedef struct kmp_taskred_data | kmp_taskred_data_t
typedef struct kmp_taskred_input | kmp_taskred_input_t

## Detailed Description

Types that are used throughout the runtime.

## Typedef Documentation

## ident_t

typedef struct ident ident_t

The ident structure that describes a source location.

## kmp_task_red_input_t

typedef struct kmp_task_red_input kmp_task_red_input_t

Internal struct for reduction data item related info set up by compiler.

## kmp_taskred_data_t

typedef struct kmp_taskred_data kmp_taskred_data_t

Internal struct for reduction data item related info saved by the library.

## kmp_taskred_flags_t

typedef struct kmp_taskred_flags kmp_taskred_flags_t

Flags for special info per task reduction item.

## kmp_taskred_input_t

typedef struct kmp_taskred_input kmp_taskred_input_t

Internal struct for reduction data item related info set up by compiler.

New interface: added reduce_orig field to provide omp_orig for UDR initializer.

## Enumeration Type Documentation

## anonymous enum

anonymous enum

Values for bit flags used in the ident_t to describe the fields.

Enumerator
KMP_IDENT_IMB | Use trampoline for internal microtasks
KMP_IDENT_KMPC | Use c-style ident structure
KMP_IDENT_AUTOPAR | Entry point generated by auto-parallelization
KMP_IDENT_ATOMIC_REDUCE | Compiler generates atomic reduction option for kmpc_reduce*
KMP_IDENT_BARRIER_EXPL | To mark a 'barrier' directive in user code
KMP_IDENT_BARRIER_IMPL | To Mark implicit barriers.
KMP_IDENT_WORK_LOOP | To mark a static loop in OMPT callbacks
KMP_IDENT_WORK_SECTIONS | To mark a sections directive in OMPT callbacks
KMP_IDENT_WORK_DISTRIBUTE | To mark a distribute construct in OMPT callbacks
KMP_IDENT_ATOMIC_HINT_MASK | Atomic hint; bottom four bits as omp_sync_hint_t. Top four reserved and not currently used. If one day we need more bits, then we can use an invalid combination of hints to mean that another, larger field should be used in a different flag.

Definition at line 187 of file kmp.h.