PIPS
hpf.h File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  _newgen_struct_align_
 
struct  _newgen_struct_alignment_
 
struct  _newgen_struct_distribute_
 
struct  _newgen_struct_distribution_
 
struct  _newgen_struct_style_
 

Macros

#define _gen_hpf_start   118
 
#define _newgen_entity_domain_defined_
 
#define ENTITY_NEWGEN_DOMAIN   (entity_domain)
 
#define entity_NEWGEN_DOMAIN   (entity_domain)
 
#define _newgen_expression_domain_defined_
 newgen_entity_domain_defined More...
 
#define EXPRESSION_NEWGEN_DOMAIN   (expression_domain)
 
#define expression_NEWGEN_DOMAIN   (expression_domain)
 
#define align_domain   (_gen_hpf_start+0)
 newgen_expression_domain_defined More...
 
#define _newgen_align_domain_defined_
 
#define ALIGN_NEWGEN_DOMAIN   (align_domain)
 
#define align_NEWGEN_DOMAIN   (align_domain)
 
#define alignment_domain   (_gen_hpf_start+1)
 newgen_align_domain_defined More...
 
#define _newgen_alignment_domain_defined_
 
#define ALIGNMENT_NEWGEN_DOMAIN   (alignment_domain)
 
#define alignment_NEWGEN_DOMAIN   (alignment_domain)
 
#define distribute_domain   (_gen_hpf_start+2)
 newgen_alignment_domain_defined More...
 
#define _newgen_distribute_domain_defined_
 
#define DISTRIBUTE_NEWGEN_DOMAIN   (distribute_domain)
 
#define distribute_NEWGEN_DOMAIN   (distribute_domain)
 
#define distribution_domain   (_gen_hpf_start+3)
 newgen_distribute_domain_defined More...
 
#define _newgen_distribution_domain_defined_
 
#define DISTRIBUTION_NEWGEN_DOMAIN   (distribution_domain)
 
#define distribution_NEWGEN_DOMAIN   (distribution_domain)
 
#define style_domain   (_gen_hpf_start+4)
 newgen_distribution_domain_defined More...
 
#define _newgen_style_domain_defined_
 
#define STYLE_NEWGEN_DOMAIN   (style_domain)
 
#define style_NEWGEN_DOMAIN   (style_domain)
 
#define ALIGN(x)   ((align)((x).p))
 newgen_style_domain_defined More...
 
#define align_CAST(x)   ALIGN(x)
 
#define ALIGN_CAST(x)   ALIGN(x)
 
#define ALIGN_(x)   ((x).e)
 
#define ALIGN_TYPE   align
 
#define align_TYPE   align
 
#define align_undefined   ((align)gen_chunk_undefined)
 
#define align_undefined_p(x)   ((x)==align_undefined)
 
#define gen_ALIGN_cons   gen_align_cons
 
#define align_domain_number(x)   ((x)->_type_)
 
#define align_alignment_(x)   align_alignment(x) /**old hack compatible */
 
#define align_alignment(x)   ((x)->_align_alignment_)
 
#define align_template_(x)   align_template(x) /**old hack compatible */
 
#define align_template(x)   ((x)->_align_template_)
 
#define ALIGNMENT(x)   ((alignment)((x).p))
 ALIGNMENT. More...
 
#define alignment_CAST(x)   ALIGNMENT(x)
 
#define ALIGNMENT_CAST(x)   ALIGNMENT(x)
 
#define ALIGNMENT_(x)   ((x).e)
 
#define ALIGNMENT_TYPE   alignment
 
#define alignment_TYPE   alignment
 
#define alignment_undefined   ((alignment)gen_chunk_undefined)
 
#define alignment_undefined_p(x)   ((x)==alignment_undefined)
 
#define gen_ALIGNMENT_cons   gen_alignment_cons
 
#define alignment_domain_number(x)   ((x)->_type_)
 
#define alignment_arraydim_(x)   alignment_arraydim(x) /**old hack compatible */
 
#define alignment_arraydim(x)   ((x)->_alignment_arraydim_)
 
#define alignment_templatedim_(x)   alignment_templatedim(x) /**old hack compatible */
 
#define alignment_templatedim(x)   ((x)->_alignment_templatedim_)
 
#define alignment_rate_(x)   alignment_rate(x) /**old hack compatible */
 
#define alignment_rate(x)   ((x)->_alignment_rate_)
 
#define alignment_constant_(x)   alignment_constant(x) /**old hack compatible */
 
#define alignment_constant(x)   ((x)->_alignment_constant_)
 
#define DISTRIBUTE(x)   ((distribute)((x).p))
 DISTRIBUTE. More...
 
#define distribute_CAST(x)   DISTRIBUTE(x)
 
#define DISTRIBUTE_CAST(x)   DISTRIBUTE(x)
 
#define DISTRIBUTE_(x)   ((x).e)
 
#define DISTRIBUTE_TYPE   distribute
 
#define distribute_TYPE   distribute
 
#define distribute_undefined   ((distribute)gen_chunk_undefined)
 
#define distribute_undefined_p(x)   ((x)==distribute_undefined)
 
#define gen_DISTRIBUTE_cons   gen_distribute_cons
 
#define distribute_domain_number(x)   ((x)->_type_)
 
#define distribute_distribution_(x)   distribute_distribution(x) /**old hack compatible */
 
#define distribute_distribution(x)   ((x)->_distribute_distribution_)
 
#define distribute_processors_(x)   distribute_processors(x) /**old hack compatible */
 
#define distribute_processors(x)   ((x)->_distribute_processors_)
 
#define DISTRIBUTION(x)   ((distribution)((x).p))
 DISTRIBUTION. More...
 
#define distribution_CAST(x)   DISTRIBUTION(x)
 
#define DISTRIBUTION_CAST(x)   DISTRIBUTION(x)
 
#define DISTRIBUTION_(x)   ((x).e)
 
#define DISTRIBUTION_TYPE   distribution
 
#define distribution_TYPE   distribution
 
#define distribution_undefined   ((distribution)gen_chunk_undefined)
 
#define distribution_undefined_p(x)   ((x)==distribution_undefined)
 
#define gen_DISTRIBUTION_cons   gen_distribution_cons
 
#define distribution_domain_number(x)   ((x)->_type_)
 
#define distribution_style_(x)   distribution_style(x) /**old hack compatible */
 
#define distribution_style(x)   ((x)->_distribution_style_)
 
#define distribution_parameter_(x)   distribution_parameter(x) /**old hack compatible */
 
#define distribution_parameter(x)   ((x)->_distribution_parameter_)
 
#define STYLE(x)   ((style)((x).p))
 STYLE. More...
 
#define style_CAST(x)   STYLE(x)
 
#define STYLE_CAST(x)   STYLE(x)
 
#define STYLE_(x)   ((x).e)
 
#define STYLE_TYPE   style
 
#define style_TYPE   style
 
#define style_undefined   ((style)gen_chunk_undefined)
 
#define style_undefined_p(x)   ((x)==style_undefined)
 
#define gen_STYLE_cons   gen_style_cons
 
#define style_domain_number(x)   ((x)->_type_)
 
#define style_tag(x)   ((x)->_style_tag__)
 
#define style_none_p(x)   (style_tag(x)==is_style_none)
 
#define style_none_(x)   style_none(x) /**old hack compatible */
 
#define style_none(x)   ((x)->_style_union_._style_none_.u)
 
#define style_block_p(x)   (style_tag(x)==is_style_block)
 
#define style_block_(x)   style_block(x) /**old hack compatible */
 
#define style_block(x)   ((x)->_style_union_._style_block_.u)
 
#define style_cyclic_p(x)   (style_tag(x)==is_style_cyclic)
 
#define style_cyclic_(x)   style_cyclic(x) /**old hack compatible */
 
#define style_cyclic(x)   ((x)->_style_union_._style_cyclic_.u)
 
#define hpf_spec   "\--NEWGEN-START 118\n\import entity from \"ri.newgen\";\n\import expression from \"ri.newgen\";\n\align = alignment:alignment* x template:entity;\n\alignment = arraydim:int x templatedim:int x rate:expression x constant:expression;\n\distribute = distribution:distribution* x processors:entity;\n\distribution = style:style x parameter:expression;\n\style = none:unit + block:unit + cyclic:unit;\n\"
 

Typedefs

typedef struct _newgen_struct_entity_entity
 
typedef struct _newgen_struct_expression_expression
 
typedef struct _newgen_struct_align_align
 
typedef struct _newgen_struct_alignment_alignment
 
typedef struct _newgen_struct_distribute_distribute
 
typedef struct _newgen_struct_distribution_distribution
 
typedef struct _newgen_struct_style_style
 

Enumerations

enum  style_utype { is_style_none , is_style_block , is_style_cyclic }
 

Functions

align copy_align (align)
 ALIGN. More...
 
void free_align (align)
 
align check_align (align)
 
bool align_consistent_p (align)
 
bool align_defined_p (align)
 
list gen_align_cons (align, list)
 
void align_assign_contents (align, align)
 
void align_non_recursive_free (align)
 
void write_align (FILE *, align)
 
align read_align (FILE *)
 
align make_align (list, entity)
 
alignment copy_alignment (alignment)
 ALIGNMENT. More...
 
void free_alignment (alignment)
 
alignment check_alignment (alignment)
 
bool alignment_consistent_p (alignment)
 
bool alignment_defined_p (alignment)
 
list gen_alignment_cons (alignment, list)
 
void alignment_assign_contents (alignment, alignment)
 
void alignment_non_recursive_free (alignment)
 
void write_alignment (FILE *, alignment)
 
alignment read_alignment (FILE *)
 
alignment make_alignment (intptr_t, intptr_t, expression, expression)
 
distribute copy_distribute (distribute)
 DISTRIBUTE. More...
 
void free_distribute (distribute)
 
distribute check_distribute (distribute)
 
bool distribute_consistent_p (distribute)
 
bool distribute_defined_p (distribute)
 
list gen_distribute_cons (distribute, list)
 
void distribute_assign_contents (distribute, distribute)
 
void distribute_non_recursive_free (distribute)
 
void write_distribute (FILE *, distribute)
 
distribute read_distribute (FILE *)
 
distribute make_distribute (list, entity)
 
distribution copy_distribution (distribution)
 DISTRIBUTION. More...
 
void free_distribution (distribution)
 
distribution check_distribution (distribution)
 
bool distribution_consistent_p (distribution)
 
bool distribution_defined_p (distribution)
 
list gen_distribution_cons (distribution, list)
 
void distribution_assign_contents (distribution, distribution)
 
void distribution_non_recursive_free (distribution)
 
void write_distribution (FILE *, distribution)
 
distribution read_distribution (FILE *)
 
distribution make_distribution (style, expression)
 
style copy_style (style)
 STYLE. More...
 
void free_style (style)
 
style check_style (style)
 
bool style_consistent_p (style)
 
bool style_defined_p (style)
 
list gen_style_cons (style, list)
 
void style_assign_contents (style, style)
 
void style_non_recursive_free (style)
 
void write_style (FILE *, style)
 
style read_style (FILE *)
 
string style_tag_as_string (enum style_utype)
 
style make_style (enum style_utype, void *)
 
style make_style_none (void)
 
style make_style_block (void)
 
style make_style_cyclic (void)
 

Macro Definition Documentation

◆ _gen_hpf_start

#define _gen_hpf_start   118

Definition at line 3 of file hpf.h.

◆ _newgen_align_domain_defined_

#define _newgen_align_domain_defined_

Definition at line 26 of file hpf.h.

◆ _newgen_alignment_domain_defined_

#define _newgen_alignment_domain_defined_

Definition at line 34 of file hpf.h.

◆ _newgen_distribute_domain_defined_

#define _newgen_distribute_domain_defined_

Definition at line 42 of file hpf.h.

◆ _newgen_distribution_domain_defined_

#define _newgen_distribution_domain_defined_

Definition at line 50 of file hpf.h.

◆ _newgen_entity_domain_defined_

#define _newgen_entity_domain_defined_

Definition at line 11 of file hpf.h.

◆ _newgen_expression_domain_defined_

#define _newgen_expression_domain_defined_

newgen_entity_domain_defined

Definition at line 18 of file hpf.h.

◆ _newgen_style_domain_defined_

#define _newgen_style_domain_defined_

Definition at line 58 of file hpf.h.

◆ ALIGN

#define ALIGN (   x)    ((align)((x).p))

newgen_style_domain_defined

ALIGN

Definition at line 66 of file hpf.h.

◆ ALIGN_

#define ALIGN_ (   x)    ((x).e)

Definition at line 69 of file hpf.h.

◆ align_alignment

#define align_alignment (   x)    ((x)->_align_alignment_)

Definition at line 96 of file hpf.h.

◆ align_alignment_

#define align_alignment_ (   x)    align_alignment(x) /**old hack compatible */

Definition at line 95 of file hpf.h.

◆ align_CAST

#define align_CAST (   x)    ALIGN(x)

Definition at line 67 of file hpf.h.

◆ ALIGN_CAST

#define ALIGN_CAST (   x)    ALIGN(x)

Definition at line 68 of file hpf.h.

◆ align_domain

#define align_domain   (_gen_hpf_start+0)

newgen_expression_domain_defined

Definition at line 24 of file hpf.h.

◆ align_domain_number

#define align_domain_number (   x)    ((x)->_type_)

Definition at line 94 of file hpf.h.

◆ ALIGN_NEWGEN_DOMAIN

#define ALIGN_NEWGEN_DOMAIN   (align_domain)

Definition at line 27 of file hpf.h.

◆ align_NEWGEN_DOMAIN

#define align_NEWGEN_DOMAIN   (align_domain)

Definition at line 28 of file hpf.h.

◆ align_template

#define align_template (   x)    ((x)->_align_template_)

Definition at line 98 of file hpf.h.

◆ align_template_

#define align_template_ (   x)    align_template(x) /**old hack compatible */

Definition at line 97 of file hpf.h.

◆ ALIGN_TYPE

#define ALIGN_TYPE   align

Definition at line 70 of file hpf.h.

◆ align_TYPE

#define align_TYPE   align

Definition at line 71 of file hpf.h.

◆ align_undefined

#define align_undefined   ((align)gen_chunk_undefined)

Definition at line 72 of file hpf.h.

◆ align_undefined_p

#define align_undefined_p (   x)    ((x)==align_undefined)

Definition at line 73 of file hpf.h.

◆ ALIGNMENT

#define ALIGNMENT (   x)    ((alignment)((x).p))

ALIGNMENT.

Definition at line 102 of file hpf.h.

◆ ALIGNMENT_

#define ALIGNMENT_ (   x)    ((x).e)

Definition at line 105 of file hpf.h.

◆ alignment_arraydim

#define alignment_arraydim (   x)    ((x)->_alignment_arraydim_)

Definition at line 134 of file hpf.h.

◆ alignment_arraydim_

#define alignment_arraydim_ (   x)    alignment_arraydim(x) /**old hack compatible */

Definition at line 133 of file hpf.h.

◆ alignment_CAST

#define alignment_CAST (   x)    ALIGNMENT(x)

Definition at line 103 of file hpf.h.

◆ ALIGNMENT_CAST

#define ALIGNMENT_CAST (   x)    ALIGNMENT(x)

Definition at line 104 of file hpf.h.

◆ alignment_constant

#define alignment_constant (   x)    ((x)->_alignment_constant_)

Definition at line 140 of file hpf.h.

◆ alignment_constant_

#define alignment_constant_ (   x)    alignment_constant(x) /**old hack compatible */

Definition at line 139 of file hpf.h.

◆ alignment_domain

#define alignment_domain   (_gen_hpf_start+1)

newgen_align_domain_defined

Definition at line 32 of file hpf.h.

◆ alignment_domain_number

#define alignment_domain_number (   x)    ((x)->_type_)

Definition at line 132 of file hpf.h.

◆ ALIGNMENT_NEWGEN_DOMAIN

#define ALIGNMENT_NEWGEN_DOMAIN   (alignment_domain)

Definition at line 35 of file hpf.h.

◆ alignment_NEWGEN_DOMAIN

#define alignment_NEWGEN_DOMAIN   (alignment_domain)

Definition at line 36 of file hpf.h.

◆ alignment_rate

#define alignment_rate (   x)    ((x)->_alignment_rate_)

Definition at line 138 of file hpf.h.

◆ alignment_rate_

#define alignment_rate_ (   x)    alignment_rate(x) /**old hack compatible */

Definition at line 137 of file hpf.h.

◆ alignment_templatedim

#define alignment_templatedim (   x)    ((x)->_alignment_templatedim_)

Definition at line 136 of file hpf.h.

◆ alignment_templatedim_

#define alignment_templatedim_ (   x)    alignment_templatedim(x) /**old hack compatible */

Definition at line 135 of file hpf.h.

◆ ALIGNMENT_TYPE

#define ALIGNMENT_TYPE   alignment

Definition at line 106 of file hpf.h.

◆ alignment_TYPE

#define alignment_TYPE   alignment

Definition at line 107 of file hpf.h.

◆ alignment_undefined

#define alignment_undefined   ((alignment)gen_chunk_undefined)

Definition at line 108 of file hpf.h.

◆ alignment_undefined_p

#define alignment_undefined_p (   x)    ((x)==alignment_undefined)

Definition at line 109 of file hpf.h.

◆ DISTRIBUTE

#define DISTRIBUTE (   x)    ((distribute)((x).p))

DISTRIBUTE.

Definition at line 144 of file hpf.h.

◆ DISTRIBUTE_

#define DISTRIBUTE_ (   x)    ((x).e)

Definition at line 147 of file hpf.h.

◆ distribute_CAST

#define distribute_CAST (   x)    DISTRIBUTE(x)

Definition at line 145 of file hpf.h.

◆ DISTRIBUTE_CAST

#define DISTRIBUTE_CAST (   x)    DISTRIBUTE(x)

Definition at line 146 of file hpf.h.

◆ distribute_distribution

#define distribute_distribution (   x)    ((x)->_distribute_distribution_)

Definition at line 174 of file hpf.h.

◆ distribute_distribution_

#define distribute_distribution_ (   x)    distribute_distribution(x) /**old hack compatible */

Definition at line 173 of file hpf.h.

◆ distribute_domain

#define distribute_domain   (_gen_hpf_start+2)

newgen_alignment_domain_defined

Definition at line 40 of file hpf.h.

◆ distribute_domain_number

#define distribute_domain_number (   x)    ((x)->_type_)

Definition at line 172 of file hpf.h.

◆ DISTRIBUTE_NEWGEN_DOMAIN

#define DISTRIBUTE_NEWGEN_DOMAIN   (distribute_domain)

Definition at line 43 of file hpf.h.

◆ distribute_NEWGEN_DOMAIN

#define distribute_NEWGEN_DOMAIN   (distribute_domain)

Definition at line 44 of file hpf.h.

◆ distribute_processors

#define distribute_processors (   x)    ((x)->_distribute_processors_)

Definition at line 176 of file hpf.h.

◆ distribute_processors_

#define distribute_processors_ (   x)    distribute_processors(x) /**old hack compatible */

Definition at line 175 of file hpf.h.

◆ DISTRIBUTE_TYPE

#define DISTRIBUTE_TYPE   distribute

Definition at line 148 of file hpf.h.

◆ distribute_TYPE

#define distribute_TYPE   distribute

Definition at line 149 of file hpf.h.

◆ distribute_undefined

#define distribute_undefined   ((distribute)gen_chunk_undefined)

Definition at line 150 of file hpf.h.

◆ distribute_undefined_p

#define distribute_undefined_p (   x)    ((x)==distribute_undefined)

Definition at line 151 of file hpf.h.

◆ DISTRIBUTION

#define DISTRIBUTION (   x)    ((distribution)((x).p))

DISTRIBUTION.

Definition at line 180 of file hpf.h.

◆ DISTRIBUTION_

#define DISTRIBUTION_ (   x)    ((x).e)

Definition at line 183 of file hpf.h.

◆ distribution_CAST

#define distribution_CAST (   x)    DISTRIBUTION(x)

Definition at line 181 of file hpf.h.

◆ DISTRIBUTION_CAST

#define DISTRIBUTION_CAST (   x)    DISTRIBUTION(x)

Definition at line 182 of file hpf.h.

◆ distribution_domain

#define distribution_domain   (_gen_hpf_start+3)

newgen_distribute_domain_defined

Definition at line 48 of file hpf.h.

◆ distribution_domain_number

#define distribution_domain_number (   x)    ((x)->_type_)

Definition at line 208 of file hpf.h.

◆ DISTRIBUTION_NEWGEN_DOMAIN

#define DISTRIBUTION_NEWGEN_DOMAIN   (distribution_domain)

Definition at line 51 of file hpf.h.

◆ distribution_NEWGEN_DOMAIN

#define distribution_NEWGEN_DOMAIN   (distribution_domain)

Definition at line 52 of file hpf.h.

◆ distribution_parameter

#define distribution_parameter (   x)    ((x)->_distribution_parameter_)

Definition at line 212 of file hpf.h.

◆ distribution_parameter_

#define distribution_parameter_ (   x)    distribution_parameter(x) /**old hack compatible */

Definition at line 211 of file hpf.h.

◆ distribution_style

#define distribution_style (   x)    ((x)->_distribution_style_)

Definition at line 210 of file hpf.h.

◆ distribution_style_

#define distribution_style_ (   x)    distribution_style(x) /**old hack compatible */

Definition at line 209 of file hpf.h.

◆ DISTRIBUTION_TYPE

#define DISTRIBUTION_TYPE   distribution

Definition at line 184 of file hpf.h.

◆ distribution_TYPE

#define distribution_TYPE   distribution

Definition at line 185 of file hpf.h.

◆ distribution_undefined

#define distribution_undefined   ((distribution)gen_chunk_undefined)

Definition at line 186 of file hpf.h.

◆ distribution_undefined_p

#define distribution_undefined_p (   x)    ((x)==distribution_undefined)

Definition at line 187 of file hpf.h.

◆ ENTITY_NEWGEN_DOMAIN

#define ENTITY_NEWGEN_DOMAIN   (entity_domain)

Definition at line 12 of file hpf.h.

◆ entity_NEWGEN_DOMAIN

#define entity_NEWGEN_DOMAIN   (entity_domain)

Definition at line 13 of file hpf.h.

◆ EXPRESSION_NEWGEN_DOMAIN

#define EXPRESSION_NEWGEN_DOMAIN   (expression_domain)

Definition at line 19 of file hpf.h.

◆ expression_NEWGEN_DOMAIN

#define expression_NEWGEN_DOMAIN   (expression_domain)

Definition at line 20 of file hpf.h.

◆ gen_ALIGN_cons

#define gen_ALIGN_cons   gen_align_cons

Definition at line 80 of file hpf.h.

◆ gen_ALIGNMENT_cons

#define gen_ALIGNMENT_cons   gen_alignment_cons

Definition at line 116 of file hpf.h.

◆ gen_DISTRIBUTE_cons

#define gen_DISTRIBUTE_cons   gen_distribute_cons

Definition at line 158 of file hpf.h.

◆ gen_DISTRIBUTION_cons

#define gen_DISTRIBUTION_cons   gen_distribution_cons

Definition at line 194 of file hpf.h.

◆ gen_STYLE_cons

#define gen_STYLE_cons   gen_style_cons

Definition at line 230 of file hpf.h.

◆ hpf_spec

#define hpf_spec   "\--NEWGEN-START 118\n\import entity from \"ri.newgen\";\n\import expression from \"ri.newgen\";\n\align = alignment:alignment* x template:entity;\n\alignment = arraydim:int x templatedim:int x rate:expression x constant:expression;\n\distribute = distribution:distribution* x processors:entity;\n\distribution = style:style x parameter:expression;\n\style = none:unit + block:unit + cyclic:unit;\n\"

Definition at line 269 of file hpf.h.

◆ STYLE

#define STYLE (   x)    ((style)((x).p))

STYLE.

Definition at line 216 of file hpf.h.

◆ STYLE_

#define STYLE_ (   x)    ((x).e)

Definition at line 219 of file hpf.h.

◆ style_block

#define style_block (   x)    ((x)->_style_union_._style_block_.u)

Definition at line 264 of file hpf.h.

◆ style_block_

#define style_block_ (   x)    style_block(x) /**old hack compatible */

Definition at line 263 of file hpf.h.

◆ style_block_p

#define style_block_p (   x)    (style_tag(x)==is_style_block)

Definition at line 262 of file hpf.h.

◆ style_CAST

#define style_CAST (   x)    STYLE(x)

Definition at line 217 of file hpf.h.

◆ STYLE_CAST

#define STYLE_CAST (   x)    STYLE(x)

Definition at line 218 of file hpf.h.

◆ style_cyclic

#define style_cyclic (   x)    ((x)->_style_union_._style_cyclic_.u)

Definition at line 267 of file hpf.h.

◆ style_cyclic_

#define style_cyclic_ (   x)    style_cyclic(x) /**old hack compatible */

Definition at line 266 of file hpf.h.

◆ style_cyclic_p

#define style_cyclic_p (   x)    (style_tag(x)==is_style_cyclic)

Definition at line 265 of file hpf.h.

◆ style_domain

#define style_domain   (_gen_hpf_start+4)

newgen_distribution_domain_defined

Definition at line 56 of file hpf.h.

◆ style_domain_number

#define style_domain_number (   x)    ((x)->_type_)

Definition at line 257 of file hpf.h.

◆ STYLE_NEWGEN_DOMAIN

#define STYLE_NEWGEN_DOMAIN   (style_domain)

Definition at line 59 of file hpf.h.

◆ style_NEWGEN_DOMAIN

#define style_NEWGEN_DOMAIN   (style_domain)

Definition at line 60 of file hpf.h.

◆ style_none

#define style_none (   x)    ((x)->_style_union_._style_none_.u)

Definition at line 261 of file hpf.h.

◆ style_none_

#define style_none_ (   x)    style_none(x) /**old hack compatible */

Definition at line 260 of file hpf.h.

◆ style_none_p

#define style_none_p (   x)    (style_tag(x)==is_style_none)

Definition at line 259 of file hpf.h.

◆ style_tag

#define style_tag (   x)    ((x)->_style_tag__)

Definition at line 258 of file hpf.h.

◆ STYLE_TYPE

#define STYLE_TYPE   style

Definition at line 220 of file hpf.h.

◆ style_TYPE

#define style_TYPE   style

Definition at line 221 of file hpf.h.

◆ style_undefined

#define style_undefined   ((style)gen_chunk_undefined)

Definition at line 222 of file hpf.h.

◆ style_undefined_p

#define style_undefined_p (   x)    ((x)==style_undefined)

Definition at line 223 of file hpf.h.

Typedef Documentation

◆ align

typedef struct _newgen_struct_align_* align

Definition at line 29 of file hpf.h.

◆ alignment

Definition at line 37 of file hpf.h.

◆ distribute

Definition at line 45 of file hpf.h.

◆ distribution

Definition at line 53 of file hpf.h.

◆ entity

typedef struct _newgen_struct_entity_* entity

Definition at line 14 of file hpf.h.

◆ expression

Definition at line 21 of file hpf.h.

◆ style

typedef struct _newgen_struct_style_* style

Definition at line 61 of file hpf.h.

Enumeration Type Documentation

◆ style_utype

Enumerator
is_style_none 
is_style_block 
is_style_cyclic 

Definition at line 236 of file hpf.h.

236  {
240 };
@ is_style_cyclic
Definition: hpf.h:239
@ is_style_block
Definition: hpf.h:238
@ is_style_none
Definition: hpf.h:237

Function Documentation

◆ align_assign_contents()

void align_assign_contents ( align  r,
align  v 
)

Definition at line 35 of file hpf.c.

35  {
36  check_align(r);
37  check_align(v);
38  message_assert("defined references to domain align",
40  memcpy(r, v, sizeof(struct _newgen_struct_align_));
41 }
bool align_defined_p(align p)
Definition: hpf.c:29
align check_align(align p)
Definition: hpf.c:22
#define message_assert(msg, ex)
Definition: newgen_assert.h:47

References align_defined_p(), check_align(), and message_assert.

+ Here is the call graph for this function:

◆ align_consistent_p()

bool align_consistent_p ( align  p)

Definition at line 25 of file hpf.c.

25  {
26  check_align(p);
27  return gen_consistent_p((gen_chunk*) p);
28 }
int gen_consistent_p(gen_chunk *obj)
GEN_CONSISTENT_P dynamically checks the type correctness of OBJ.
Definition: genClib.c:2398
A gen_chunk is used to store every object.
Definition: genC.h:58

References check_align(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ align_defined_p()

bool align_defined_p ( align  p)

Definition at line 29 of file hpf.c.

29  {
30  return gen_defined_p((gen_chunk*) p);
31 }
int gen_defined_p(gen_chunk *obj)
Definition: genClib.c:2438

References gen_defined_p().

Referenced by align_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ align_non_recursive_free()

void align_non_recursive_free ( align  p)

Definition at line 42 of file hpf.c.

42  {
43  // should clear up contents...
44  free(p);
45 }
void free(void *)

References free().

+ Here is the call graph for this function:

◆ alignment_assign_contents()

void alignment_assign_contents ( alignment  r,
alignment  v 
)

Definition at line 77 of file hpf.c.

77  {
78  check_alignment(r);
79  check_alignment(v);
80  message_assert("defined references to domain alignment",
82  memcpy(r, v, sizeof(struct _newgen_struct_alignment_));
83 }
alignment check_alignment(alignment p)
Definition: hpf.c:64
bool alignment_defined_p(alignment p)
Definition: hpf.c:71

References alignment_defined_p(), check_alignment(), and message_assert.

+ Here is the call graph for this function:

◆ alignment_consistent_p()

bool alignment_consistent_p ( alignment  p)

Definition at line 67 of file hpf.c.

67  {
68  check_alignment(p);
69  return gen_consistent_p((gen_chunk*) p);
70 }

References check_alignment(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ alignment_defined_p()

bool alignment_defined_p ( alignment  p)

Definition at line 71 of file hpf.c.

71  {
72  return gen_defined_p((gen_chunk*) p);
73 }

References gen_defined_p().

Referenced by alignment_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ alignment_non_recursive_free()

void alignment_non_recursive_free ( alignment  p)

Definition at line 84 of file hpf.c.

84  {
85  // should clear up contents...
86  free(p);
87 }

References free().

+ Here is the call graph for this function:

◆ check_align()

align check_align ( align  p)

Definition at line 22 of file hpf.c.

22  {
23  return (align) gen_check((gen_chunk*) p, align_domain);
24 }
gen_chunk * gen_check(gen_chunk *obj, int t)
GEN_CHECK checks that the gen_chunk received OBJ is of the appropriate TYPE.
Definition: genClib.c:2356
#define align_domain
newgen_expression_domain_defined
Definition: hpf.h:24

References align_domain, and gen_check().

Referenced by align_assign_contents(), and align_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_alignment()

alignment check_alignment ( alignment  p)

Definition at line 64 of file hpf.c.

64  {
66 }
#define alignment_domain
newgen_align_domain_defined
Definition: hpf.h:32

References alignment_domain, and gen_check().

Referenced by alignment_assign_contents(), and alignment_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_distribute()

distribute check_distribute ( distribute  p)

Definition at line 106 of file hpf.c.

106  {
108 }
#define distribute_domain
newgen_alignment_domain_defined
Definition: hpf.h:40

References distribute_domain, and gen_check().

Referenced by distribute_assign_contents(), and distribute_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_distribution()

distribution check_distribution ( distribution  p)

Definition at line 148 of file hpf.c.

148  {
150 }
#define distribution_domain
newgen_distribute_domain_defined
Definition: hpf.h:48

References distribution_domain, and gen_check().

Referenced by distribution_assign_contents(), and distribution_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ check_style()

style check_style ( style  p)

Definition at line 190 of file hpf.c.

190  {
191  return (style) gen_check((gen_chunk*) p, style_domain);
192 }
#define style_domain
newgen_distribution_domain_defined
Definition: hpf.h:56

References gen_check(), and style_domain.

Referenced by style_assign_contents(), and style_consistent_p().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ copy_align()

align copy_align ( align  p)

ALIGN.

Definition at line 16 of file hpf.c.

16  {
17  return (align) gen_copy_tree((gen_chunk*) p);
18 }
gen_chunk * gen_copy_tree(gen_chunk *obj)
Definition: genClib.c:1429

References gen_copy_tree().

Referenced by hpfc_translate_call_with_distributed_args(), and new_align_with_template().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ copy_alignment()

alignment copy_alignment ( alignment  p)

ALIGNMENT.

Definition at line 58 of file hpf.c.

58  {
59  return (alignment) gen_copy_tree((gen_chunk*) p);
60 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_distribute()

distribute copy_distribute ( distribute  p)

DISTRIBUTE.

Definition at line 100 of file hpf.c.

100  {
101  return (distribute) gen_copy_tree((gen_chunk*) p);
102 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_distribution()

distribution copy_distribution ( distribution  p)

DISTRIBUTION.

Definition at line 142 of file hpf.c.

142  {
143  return (distribution) gen_copy_tree((gen_chunk*) p);
144 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ copy_style()

style copy_style ( style  p)

STYLE.

Definition at line 184 of file hpf.c.

184  {
185  return (style) gen_copy_tree((gen_chunk*) p);
186 }

References gen_copy_tree().

+ Here is the call graph for this function:

◆ distribute_assign_contents()

void distribute_assign_contents ( distribute  r,
distribute  v 
)

Definition at line 119 of file hpf.c.

119  {
120  check_distribute(r);
121  check_distribute(v);
122  message_assert("defined references to domain distribute",
124  memcpy(r, v, sizeof(struct _newgen_struct_distribute_));
125 }
bool distribute_defined_p(distribute p)
Definition: hpf.c:113
distribute check_distribute(distribute p)
Definition: hpf.c:106

References check_distribute(), distribute_defined_p(), and message_assert.

+ Here is the call graph for this function:

◆ distribute_consistent_p()

bool distribute_consistent_p ( distribute  p)

Definition at line 109 of file hpf.c.

109  {
110  check_distribute(p);
111  return gen_consistent_p((gen_chunk*) p);
112 }

References check_distribute(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ distribute_defined_p()

bool distribute_defined_p ( distribute  p)

Definition at line 113 of file hpf.c.

113  {
114  return gen_defined_p((gen_chunk*) p);
115 }

References gen_defined_p().

Referenced by distribute_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ distribute_non_recursive_free()

void distribute_non_recursive_free ( distribute  p)

Definition at line 126 of file hpf.c.

126  {
127  // should clear up contents...
128  free(p);
129 }

References free().

+ Here is the call graph for this function:

◆ distribution_assign_contents()

void distribution_assign_contents ( distribution  r,
distribution  v 
)

Definition at line 161 of file hpf.c.

161  {
164  message_assert("defined references to domain distribution",
166  memcpy(r, v, sizeof(struct _newgen_struct_distribution_));
167 }
bool distribution_defined_p(distribution p)
Definition: hpf.c:155
distribution check_distribution(distribution p)
Definition: hpf.c:148

References check_distribution(), distribution_defined_p(), and message_assert.

+ Here is the call graph for this function:

◆ distribution_consistent_p()

bool distribution_consistent_p ( distribution  p)

Definition at line 151 of file hpf.c.

151  {
153  return gen_consistent_p((gen_chunk*) p);
154 }

References check_distribution(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ distribution_defined_p()

bool distribution_defined_p ( distribution  p)

Definition at line 155 of file hpf.c.

155  {
156  return gen_defined_p((gen_chunk*) p);
157 }

References gen_defined_p().

Referenced by distribution_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ distribution_non_recursive_free()

void distribution_non_recursive_free ( distribution  p)

Definition at line 168 of file hpf.c.

168  {
169  // should clear up contents...
170  free(p);
171 }

References free().

+ Here is the call graph for this function:

◆ free_align()

void free_align ( align  p)

Definition at line 19 of file hpf.c.

19  {
20  gen_free((gen_chunk*) p);
21 }
void gen_free(gen_chunk *obj)
version without shared_pointers.
Definition: genClib.c:992

References gen_free().

Referenced by array_synonym_aligned_as().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ free_alignment()

void free_alignment ( alignment  p)

Definition at line 61 of file hpf.c.

61  {
62  gen_free((gen_chunk*) p);
63 }

References gen_free().

+ Here is the call graph for this function:

◆ free_distribute()

void free_distribute ( distribute  p)

Definition at line 103 of file hpf.c.

103  {
104  gen_free((gen_chunk*) p);
105 }

References gen_free().

Referenced by template_synonym_distributed_as().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ free_distribution()

void free_distribution ( distribution  p)

Definition at line 145 of file hpf.c.

145  {
146  gen_free((gen_chunk*) p);
147 }

References gen_free().

+ Here is the call graph for this function:

◆ free_style()

void free_style ( style  p)

Definition at line 187 of file hpf.c.

187  {
188  gen_free((gen_chunk*) p);
189 }

References gen_free().

+ Here is the call graph for this function:

◆ gen_align_cons()

list gen_align_cons ( align  p,
list  l 
)

Definition at line 32 of file hpf.c.

32  {
33  return gen_typed_cons(ALIGN_NEWGEN_DOMAIN, p, l);
34 }
list gen_typed_cons(_int type, const void *item, const list next)
CONS a list with minimal type checking this cannot be done within the CONS macro because possible fun...
Definition: list.c:900
#define ALIGN_NEWGEN_DOMAIN
Definition: hpf.h:27

References ALIGN_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_alignment_cons()

list gen_alignment_cons ( alignment  p,
list  l 
)

Definition at line 74 of file hpf.c.

74  {
76 }
#define ALIGNMENT_NEWGEN_DOMAIN
Definition: hpf.h:35

References ALIGNMENT_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_distribute_cons()

list gen_distribute_cons ( distribute  p,
list  l 
)

Definition at line 116 of file hpf.c.

116  {
118 }
#define DISTRIBUTE_NEWGEN_DOMAIN
Definition: hpf.h:43

References DISTRIBUTE_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_distribution_cons()

list gen_distribution_cons ( distribution  p,
list  l 
)

Definition at line 158 of file hpf.c.

158  {
160 }
#define DISTRIBUTION_NEWGEN_DOMAIN
Definition: hpf.h:51

References DISTRIBUTION_NEWGEN_DOMAIN, and gen_typed_cons().

+ Here is the call graph for this function:

◆ gen_style_cons()

list gen_style_cons ( style  p,
list  l 
)

Definition at line 200 of file hpf.c.

200  {
201  return gen_typed_cons(STYLE_NEWGEN_DOMAIN, p, l);
202 }
#define STYLE_NEWGEN_DOMAIN
Definition: hpf.h:59

References gen_typed_cons(), and STYLE_NEWGEN_DOMAIN.

+ Here is the call graph for this function:

◆ make_align()

align make_align ( list  a1,
entity  a2 
)

Definition at line 52 of file hpf.c.

52  {
53  return (align) gen_alloc(3*sizeof(gen_chunk), GEN_CHECK_ALLOC, align_domain, a1, a2);
54 }
#define GEN_CHECK_ALLOC
Definition: genC.h:307
gen_chunk * gen_alloc(int size, int gen_check_p, int dom,...)
allocates something in newgen.
Definition: genClib.c:298

References align_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by array_as_template(), and extract_the_align().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_alignment()

alignment make_alignment ( intptr_t  a1,
intptr_t  a2,
expression  a3,
expression  a4 
)

Definition at line 94 of file hpf.c.

94  {
95  return (alignment) gen_alloc(5*sizeof(gen_chunk), GEN_CHECK_ALLOC, alignment_domain, a1, a2, a3, a4);
96 }

References alignment_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by array_as_template(), and extract_the_align().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_distribute()

distribute make_distribute ( list  a1,
entity  a2 
)

Definition at line 136 of file hpf.c.

136  {
137  return (distribute) gen_alloc(3*sizeof(gen_chunk), GEN_CHECK_ALLOC, distribute_domain, a1, a2);
138 }

References distribute_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by extract_the_distribute().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_distribution()

distribution make_distribution ( style  a1,
expression  a2 
)

Definition at line 178 of file hpf.c.

178  {
180 }

References distribution_domain, gen_alloc(), and GEN_CHECK_ALLOC.

Referenced by extract_the_distribute().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_style()

style make_style ( enum  style_utype,
void *  val 
)

Definition at line 228 of file hpf.c.

228  {
229  return (style) gen_alloc(3*sizeof(gen_chunk), GEN_CHECK_ALLOC, style_domain, tag, val);
230 }
int tag
TAG.
Definition: newgen_types.h:92

References gen_alloc(), GEN_CHECK_ALLOC, and style_domain.

Referenced by extract_the_distribute(), make_style_block(), make_style_cyclic(), and make_style_none().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ make_style_block()

style make_style_block ( void  )

Definition at line 234 of file hpf.c.

234  {
235  return make_style(is_style_block, UU);
236 }
style make_style(enum style_utype tag, void *val)
Definition: hpf.c:228
#define UU
Definition: newgen_types.h:98

References is_style_block, make_style(), and UU.

+ Here is the call graph for this function:

◆ make_style_cyclic()

style make_style_cyclic ( void  )

Definition at line 237 of file hpf.c.

237  {
238  return make_style(is_style_cyclic, UU);
239 }

References is_style_cyclic, make_style(), and UU.

+ Here is the call graph for this function:

◆ make_style_none()

style make_style_none ( void  )

Definition at line 231 of file hpf.c.

231  {
232  return make_style(is_style_none, UU);
233 }

References is_style_none, make_style(), and UU.

+ Here is the call graph for this function:

◆ read_align()

align read_align ( FILE *  f)

Definition at line 49 of file hpf.c.

49  {
50  return (align) gen_read(f);
51 }
gen_chunk * gen_read(FILE *file)
GEN_READ reads any object from the FILE stream.
Definition: genClib.c:2323
int f(int off1, int off2, int n, float r[n], float a[n], float b[n])
Definition: offsets.c:15

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_alignment()

alignment read_alignment ( FILE *  f)

Definition at line 91 of file hpf.c.

91  {
92  return (alignment) gen_read(f);
93 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_distribute()

distribute read_distribute ( FILE *  f)

Definition at line 133 of file hpf.c.

133  {
134  return (distribute) gen_read(f);
135 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_distribution()

distribution read_distribution ( FILE *  f)

Definition at line 175 of file hpf.c.

175  {
176  return (distribution) gen_read(f);
177 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ read_style()

style read_style ( FILE *  f)

Definition at line 217 of file hpf.c.

217  {
218  return (style) gen_read(f);
219 }

References f(), and gen_read().

+ Here is the call graph for this function:

◆ style_assign_contents()

void style_assign_contents ( style  r,
style  v 
)

Definition at line 203 of file hpf.c.

203  {
204  check_style(r);
205  check_style(v);
206  message_assert("defined references to domain style",
208  memcpy(r, v, sizeof(struct _newgen_struct_style_));
209 }
style check_style(style p)
Definition: hpf.c:190
bool style_defined_p(style p)
Definition: hpf.c:197

References check_style(), message_assert, and style_defined_p().

+ Here is the call graph for this function:

◆ style_consistent_p()

bool style_consistent_p ( style  p)

Definition at line 193 of file hpf.c.

193  {
194  check_style(p);
195  return gen_consistent_p((gen_chunk*) p);
196 }

References check_style(), and gen_consistent_p().

+ Here is the call graph for this function:

◆ style_defined_p()

bool style_defined_p ( style  p)

Definition at line 197 of file hpf.c.

197  {
198  return gen_defined_p((gen_chunk*) p);
199 }

References gen_defined_p().

Referenced by style_assign_contents().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ style_non_recursive_free()

void style_non_recursive_free ( style  p)

Definition at line 210 of file hpf.c.

210  {
211  // should clear up contents...
212  free(p);
213 }

References free().

+ Here is the call graph for this function:

◆ style_tag_as_string()

string style_tag_as_string ( enum  style_utype)

Definition at line 220 of file hpf.c.

220  {
221  switch (tag) {
222  case is_style_none: return "none";
223  case is_style_block: return "block";
224  case is_style_cyclic: return "cyclic";
225  default: return string_undefined;
226  }
227 }
#define string_undefined
Definition: newgen_types.h:40

References is_style_block, is_style_cyclic, is_style_none, and string_undefined.

◆ write_align()

void write_align ( FILE *  f,
align  p 
)

Definition at line 46 of file hpf.c.

46  {
47  gen_write(f, (gen_chunk*) p);
48 }
void gen_write(FILE *fd, gen_chunk *obj)
GEN_WRITE writes the OBJect on the stream FD.
Definition: genClib.c:1745

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_alignment()

void write_alignment ( FILE *  f,
alignment  p 
)

Definition at line 88 of file hpf.c.

88  {
89  gen_write(f, (gen_chunk*) p);
90 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_distribute()

void write_distribute ( FILE *  f,
distribute  p 
)

Definition at line 130 of file hpf.c.

130  {
131  gen_write(f, (gen_chunk*) p);
132 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_distribution()

void write_distribution ( FILE *  f,
distribution  p 
)

Definition at line 172 of file hpf.c.

172  {
173  gen_write(f, (gen_chunk*) p);
174 }

References f(), and gen_write().

+ Here is the call graph for this function:

◆ write_style()

void write_style ( FILE *  f,
style  p 
)

Definition at line 214 of file hpf.c.

214  {
215  gen_write(f, (gen_chunk*) p);
216 }

References f(), and gen_write().

+ Here is the call graph for this function: