Go to the source code of this file.
Functions | |
static DLOOP_Count | DLOOP_Stackelm_blocksize (struct DLOOP_Dataloop_stackelm *elmp) |
static DLOOP_Offset | DLOOP_Stackelm_offset (struct DLOOP_Dataloop_stackelm *elmp) |
static void | DLOOP_Stackelm_load (struct DLOOP_Dataloop_stackelm *elmp, struct DLOOP_Dataloop *dlp, int branch_flag) |
int PREPEND_PREFIX() | Segment_init (const DLOOP_Buffer buf, DLOOP_Count count, DLOOP_Handle handle, struct DLOOP_Segment *segp, int flag) |
struct DLOOP_Segment *PREPEND_PREFIX() | Segment_alloc (void) |
void PREPEND_PREFIX() | Segment_free (struct DLOOP_Segment *segp) |
void PREPEND_PREFIX() | Segment_manipulate (struct DLOOP_Segment *segp, DLOOP_Offset first, DLOOP_Offset *lastp, int(*contigfn)(DLOOP_Offset *blocks_p, DLOOP_Type el_type, DLOOP_Offset rel_off, DLOOP_Buffer bufp, void *v_paramp), int(*vectorfn)(DLOOP_Offset *blocks_p, DLOOP_Count count, DLOOP_Count blklen, DLOOP_Offset stride, DLOOP_Type el_type, DLOOP_Offset rel_off, DLOOP_Buffer bufp, void *v_paramp), int(*blkidxfn)(DLOOP_Offset *blocks_p, DLOOP_Count count, DLOOP_Count blklen, DLOOP_Offset *offsetarray, DLOOP_Type el_type, DLOOP_Offset rel_off, DLOOP_Buffer bufp, void *v_paramp), int(*indexfn)(DLOOP_Offset *blocks_p, DLOOP_Count count, DLOOP_Count *blockarray, DLOOP_Offset *offsetarray, DLOOP_Type el_type, DLOOP_Offset rel_off, DLOOP_Buffer bufp, void *v_paramp), DLOOP_Offset(*sizefn)(DLOOP_Type el_type), void *pieceparams) |
static DLOOP_Count DLOOP_Stackelm_blocksize | ( | struct DLOOP_Dataloop_stackelm * | elmp | ) | [inline, static] |
Definition at line 882 of file segment.c.
References DLOOP_Dataloop::bi_t, DLOOP_Dataloop_blockindexed::blocksize, DLOOP_Dataloop_vector::blocksize, DLOOP_Dataloop_struct::blocksize_array, DLOOP_Dataloop_indexed::blocksize_array, DLOOP_Dataloop::c_t, DLOOP_Dataloop_contig::count, DLOOP_Dataloop_stackelm::curcount, DLOOP_Dataloop::i_t, DLOOP_Dataloop::kind, DLOOP_Dataloop_stackelm::loop_p, DLOOP_Dataloop::loop_params, DLOOP_Dataloop_stackelm::orig_count, DLOOP_Dataloop::s_t, and DLOOP_Dataloop::v_t.
Referenced by DLOOP_Stackelm_load().
static DLOOP_Offset DLOOP_Stackelm_offset | ( | struct DLOOP_Dataloop_stackelm * | elmp | ) | [inline, static] |
Definition at line 925 of file segment.c.
References DLOOP_Dataloop::bi_t, DLOOP_Dataloop_stackelm::curcount, DLOOP_Dataloop::i_t, DLOOP_Dataloop::kind, DLOOP_Dataloop_stackelm::loop_p, DLOOP_Dataloop::loop_params, DLOOP_Dataloop_struct::offset_array, DLOOP_Dataloop_indexed::offset_array, DLOOP_Dataloop_blockindexed::offset_array, DLOOP_Dataloop_stackelm::orig_count, and DLOOP_Dataloop::s_t.
Referenced by Segment_init().
static void DLOOP_Stackelm_load | ( | struct DLOOP_Dataloop_stackelm * | elmp, | |
struct DLOOP_Dataloop * | dlp, | |||
int | branch_flag | |||
) | [inline, static] |
Definition at line 956 of file segment.c.
References DLOOP_Dataloop::count, DLOOP_Dataloop_stackelm::curcount, DLOOP_Stackelm_blocksize(), DLOOP_Dataloop::kind, DLOOP_Dataloop_stackelm::loop_p, DLOOP_Dataloop::loop_params, DLOOP_Dataloop_stackelm::may_require_reloading, DLOOP_Dataloop_stackelm::orig_block, and DLOOP_Dataloop_stackelm::orig_count.
Referenced by Segment_init(), and Segment_manipulate().
int PREPEND_PREFIX() Segment_init | ( | const DLOOP_Buffer | buf, | |
DLOOP_Count | count, | |||
DLOOP_Handle | handle, | |||
struct DLOOP_Segment * | segp, | |||
int | flag | |||
) |
Definition at line 49 of file segment.c.
References buf, DLOOP_Segment::builtin_loop, DLOOP_Dataloop::c_t, DLOOP_Dataloop::cm_t, DLOOP_Dataloop_contig::count, count, DLOOP_Segment::cur_sp, DLOOP_Dataloop_stackelm::curblock, DLOOP_Dataloop_stackelm::curoffset, DLOOP_Dataloop_common::dataloop, DLOOP_Dataloop_struct::dataloop_array, DLOOP_Stackelm_load(), DLOOP_Stackelm_offset(), DLOOP_Dataloop::el_extent, DLOOP_Dataloop::el_size, DLOOP_Dataloop::el_type, flag, DLOOP_Segment::handle, handle, DLOOP_Dataloop::kind, DLOOP_Dataloop::loop_params, DLOOP_Dataloop_stackelm::may_require_reloading, DLOOP_Dataloop_stackelm::orig_block, DLOOP_Dataloop_stackelm::orig_offset, DLOOP_Segment::ptr, DLOOP_Dataloop::s_t, DLOOP_Segment::stackelm, DLOOP_Segment::stream_off, and DLOOP_Segment::valid_sp.
Referenced by DLOOP_Dataloop_create_flattened_struct().
struct DLOOP_Segment* PREPEND_PREFIX() Segment_alloc | ( | void | ) | [read] |
Definition at line 220 of file segment.c.
Referenced by DLOOP_Dataloop_create_flattened_struct().
void PREPEND_PREFIX() Segment_free | ( | struct DLOOP_Segment * | segp | ) |
Definition at line 230 of file segment.c.
Referenced by DLOOP_Dataloop_create_flattened_struct().
void PREPEND_PREFIX() Segment_manipulate | ( | struct DLOOP_Segment * | segp, | |
DLOOP_Offset | first, | |||
DLOOP_Offset * | lastp, | |||
int(*)(DLOOP_Offset *blocks_p, DLOOP_Type el_type, DLOOP_Offset rel_off, DLOOP_Buffer bufp, void *v_paramp) | contigfn, | |||
int(*)(DLOOP_Offset *blocks_p, DLOOP_Count count, DLOOP_Count blklen, DLOOP_Offset stride, DLOOP_Type el_type, DLOOP_Offset rel_off, DLOOP_Buffer bufp, void *v_paramp) | vectorfn, | |||
int(*)(DLOOP_Offset *blocks_p, DLOOP_Count count, DLOOP_Count blklen, DLOOP_Offset *offsetarray, DLOOP_Type el_type, DLOOP_Offset rel_off, DLOOP_Buffer bufp, void *v_paramp) | blkidxfn, | |||
int(*)(DLOOP_Offset *blocks_p, DLOOP_Count count, DLOOP_Count *blockarray, DLOOP_Offset *offsetarray, DLOOP_Type el_type, DLOOP_Offset rel_off, DLOOP_Buffer bufp, void *v_paramp) | indexfn, | |||
DLOOP_Offset(*)(DLOOP_Type el_type) | sizefn, | |||
void * | pieceparams | |||
) |
Definition at line 324 of file segment.c.
References DLOOP_Dataloop::cm_t, DLOOP_Segment::cur_sp, DLOOP_Dataloop_stackelm::curblock, DLOOP_Dataloop_stackelm::curcount, DLOOP_Dataloop_stackelm::curoffset, DLOOP_Dataloop_common::dataloop, DLOOP_Stackelm_load(), DLOOP_Dataloop::kind, DLOOP_Dataloop_stackelm::loop_p, DLOOP_Dataloop::loop_params, DLOOP_Dataloop_stackelm::orig_block, DLOOP_Dataloop_stackelm::orig_count, DLOOP_Dataloop_stackelm::orig_offset, PREPEND_PREFIX(), DLOOP_Segment::ptr, Segment_manipulate(), DLOOP_Segment::stackelm, DLOOP_Segment::stream_off, and DLOOP_Segment::valid_sp.
Referenced by Segment_count_contig_blocks(), Segment_manipulate(), Segment_mpi_flatten(), Segment_pack(), and Segment_unpack().