33#ifndef LEGION_USE_PYTHON_CFFI
49#define NEW_OPAQUE_TYPE(T) \
53 NEW_OPAQUE_TYPE(legion_runtime_t);
54 NEW_OPAQUE_TYPE(legion_context_t);
55 NEW_OPAQUE_TYPE(legion_domain_point_iterator_t);
56#define NEW_ITERATOR_TYPE(DIM) \
57 NEW_OPAQUE_TYPE(legion_rect_in_domain_iterator_##DIM##d_t);
58 LEGION_FOREACH_N(NEW_ITERATOR_TYPE);
59#undef NEW_ITERATOR_TYPE
60 NEW_OPAQUE_TYPE(legion_coloring_t);
61 NEW_OPAQUE_TYPE(legion_domain_coloring_t);
62 NEW_OPAQUE_TYPE(legion_point_coloring_t);
63 NEW_OPAQUE_TYPE(legion_domain_point_coloring_t);
64 NEW_OPAQUE_TYPE(legion_multi_domain_point_coloring_t);
65 NEW_OPAQUE_TYPE(legion_index_space_allocator_t);
66 NEW_OPAQUE_TYPE(legion_field_allocator_t);
67 NEW_OPAQUE_TYPE(legion_argument_map_t);
68 NEW_OPAQUE_TYPE(legion_predicate_t);
69 NEW_OPAQUE_TYPE(legion_future_t);
70 NEW_OPAQUE_TYPE(legion_future_map_t);
71#define NEW_DEFERRED_BUFFER_TYPE(DIM) \
72 NEW_OPAQUE_TYPE(legion_deferred_buffer_char_##DIM##d_t);
73 LEGION_FOREACH_N(NEW_DEFERRED_BUFFER_TYPE)
74#undef NEW_DEFERRED_BUFFER_TYPE
75 NEW_OPAQUE_TYPE(legion_task_launcher_t);
76 NEW_OPAQUE_TYPE(legion_index_launcher_t);
77 NEW_OPAQUE_TYPE(legion_inline_launcher_t);
78 NEW_OPAQUE_TYPE(legion_copy_launcher_t);
79 NEW_OPAQUE_TYPE(legion_index_copy_launcher_t);
80 NEW_OPAQUE_TYPE(legion_fill_launcher_t);
81 NEW_OPAQUE_TYPE(legion_index_fill_launcher_t);
82 NEW_OPAQUE_TYPE(legion_discard_launcher_t);
83 NEW_OPAQUE_TYPE(legion_acquire_launcher_t);
84 NEW_OPAQUE_TYPE(legion_release_launcher_t);
85 NEW_OPAQUE_TYPE(legion_attach_launcher_t);
86 NEW_OPAQUE_TYPE(legion_index_attach_launcher_t);
87 NEW_OPAQUE_TYPE(legion_must_epoch_launcher_t);
88 NEW_OPAQUE_TYPE(legion_physical_region_t);
89 NEW_OPAQUE_TYPE(legion_external_resources_t);
90#define NEW_ACCESSOR_ARRAY_TYPE(DIM) \
91 NEW_OPAQUE_TYPE(legion_accessor_array_##DIM##d_t);
92 LEGION_FOREACH_N(NEW_ACCESSOR_ARRAY_TYPE)
93#undef NEW_ACCESSOR_ARRAY_TYPE
94 NEW_OPAQUE_TYPE(legion_task_t);
95 NEW_OPAQUE_TYPE(legion_task_mut_t);
96 NEW_OPAQUE_TYPE(legion_copy_t);
97 NEW_OPAQUE_TYPE(legion_fill_t);
98 NEW_OPAQUE_TYPE(legion_inline_t);
99 NEW_OPAQUE_TYPE(legion_mappable_t);
100 NEW_OPAQUE_TYPE(legion_region_requirement_t);
101 NEW_OPAQUE_TYPE(legion_output_requirement_t);
102 NEW_OPAQUE_TYPE(legion_machine_t);
103 NEW_OPAQUE_TYPE(legion_logger_t);
104 NEW_OPAQUE_TYPE(legion_mapper_t);
105 NEW_OPAQUE_TYPE(legion_default_mapper_t);
106 NEW_OPAQUE_TYPE(legion_processor_query_t);
107 NEW_OPAQUE_TYPE(legion_memory_query_t);
108 NEW_OPAQUE_TYPE(legion_machine_query_interface_t);
109 NEW_OPAQUE_TYPE(legion_execution_constraint_set_t);
110 NEW_OPAQUE_TYPE(legion_layout_constraint_set_t);
111 NEW_OPAQUE_TYPE(legion_task_layout_constraint_set_t);
112 NEW_OPAQUE_TYPE(legion_slice_task_output_t);
113 NEW_OPAQUE_TYPE(legion_map_task_input_t);
114 NEW_OPAQUE_TYPE(legion_map_task_output_t);
115 NEW_OPAQUE_TYPE(legion_physical_instance_t);
116 NEW_OPAQUE_TYPE(legion_mapper_runtime_t);
117 NEW_OPAQUE_TYPE(legion_mapper_context_t);
118 NEW_OPAQUE_TYPE(legion_field_map_t);
119 NEW_OPAQUE_TYPE(legion_point_transform_functor_t);
120 NEW_OPAQUE_TYPE(legion_task_variant_registrar_t);
121#undef NEW_OPAQUE_TYPE
130 typedef legion_coord_t coord_t;
132#define NEW_POINT_TYPE(DIM) \
133 typedef struct legion_point_##DIM##d_t { \
135 } legion_point_##DIM##d_t;
136 LEGION_FOREACH_N(NEW_POINT_TYPE)
139#define NEW_RECT_TYPE(DIM) \
140 typedef struct legion_rect_##DIM##d_t { \
141 legion_point_##DIM##d_t lo, hi; \
142 } legion_rect_##DIM##d_t;
143 LEGION_FOREACH_N(NEW_RECT_TYPE)
146#define NEW_BLOCKIFY_TYPE(DIM) \
147 typedef struct legion_blockify_##DIM##d_t { \
148 legion_point_##DIM##d_t block_size; \
149 legion_point_##DIM##d_t offset; \
150 } legion_blockify_##DIM##d_t;
151 LEGION_FOREACH_N(NEW_BLOCKIFY_TYPE)
152#undef NEW_BLOCKIFY_TYPE
154#define NEW_TRANSFORM_TYPE(D1, D2) \
155 typedef struct legion_transform_##D1##x##D2##_t { \
156 coord_t trans[D1][D2]; \
157 } legion_transform_##D1##x##D2##_t;
158 LEGION_FOREACH_NN(NEW_TRANSFORM_TYPE)
159#undef NEW_TRANSFORM_TYPE
161#define NEW_AFFINE_TRANSFORM_TYPE(D1, D2) \
162 typedef struct legion_affine_transform_##D1##x##D2##_t { \
163 legion_transform_##D1##x##D2##_t transform; \
164 legion_point_##D1##d_t offset; \
165 } legion_affine_transform_##D1##x##D2##_t;
166 LEGION_FOREACH_NN(NEW_AFFINE_TRANSFORM_TYPE)
167#undef NEW_AFFINE_TRANSFORM_TYPE
174 legion_type_tag_t is_type;
180#if LEGION_MAX_DIM == 1
181#define MAX_DOMAIN_DIM 2
182#elif LEGION_MAX_DIM == 2
183#define MAX_DOMAIN_DIM 4
184#elif LEGION_MAX_DIM == 3
185#define MAX_DOMAIN_DIM 6
186#elif LEGION_MAX_DIM == 4
187#define MAX_DOMAIN_DIM 8
188#elif LEGION_MAX_DIM == 5
189#define MAX_DOMAIN_DIM 10
190#elif LEGION_MAX_DIM == 6
191#define MAX_DOMAIN_DIM 12
192#elif LEGION_MAX_DIM == 7
193#define MAX_DOMAIN_DIM 14
194#elif LEGION_MAX_DIM == 8
195#define MAX_DOMAIN_DIM 16
196#elif LEGION_MAX_DIM == 9
197#define MAX_DOMAIN_DIM 18
199#error "Illegal value of LEGION_MAX_DIM"
201#if MAX_DOMAIN_DIM != 2 * LEGION_MAX_RECT_DIM
202#error Mismatch in MAX_DOMAIN_DIM
204 coord_t rect_data[MAX_DOMAIN_DIM];
213 coord_t point_data[LEGION_MAX_DIM];
225#if LEGION_MAX_DIM == 1
226#define MAX_MATRIX_DIM 1
227#elif LEGION_MAX_DIM == 2
228#define MAX_MATRIX_DIM 4
229#elif LEGION_MAX_DIM == 3
230#define MAX_MATRIX_DIM 9
231#elif LEGION_MAX_DIM == 4
232#define MAX_MATRIX_DIM 16
233#elif LEGION_MAX_DIM == 5
234#define MAX_MATRIX_DIM 25
235#elif LEGION_MAX_DIM == 6
236#define MAX_MATRIX_DIM 36
237#elif LEGION_MAX_DIM == 7
238#define MAX_MATRIX_DIM 49
239#elif LEGION_MAX_DIM == 8
240#define MAX_MATRIX_DIM 64
241#elif LEGION_MAX_DIM == 9
242#define MAX_MATRIX_DIM 81
244#error "Illegal value of LEGION_MAX_DIM"
246#if MAX_MATRIX_DIM != \
247 LEGION_MAX_POINT_DIM * LEGION_MAX_POINT_DIM
248#error Mismatch in MAX_MATRIX_DIM
250 coord_t matrix[MAX_MATRIX_DIM];
266 legion_distributed_id_t id;
267 legion_index_tree_id_t tid;
268 legion_type_tag_t type_tag;
275 legion_distributed_id_t id;
276 legion_index_tree_id_t tid;
277 legion_type_tag_t type_tag;
284 legion_distributed_id_t id;
291 legion_distributed_id_t tree_id;
300 legion_distributed_id_t tree_id;
369 realm_barrier_timestamp_t timestamp;
380 realm_barrier_timestamp_t timestamp;
382 legion_reduction_op_id_t redop;
393 bool valid_instances;
396 legion_task_priority_t parent_priority;
407 legion_machine_t , legion_runtime_t ,
443 const void* ,
size_t );
454 const void* ,
size_t );
462 legion_runtime_t , legion_mappable_t ,
472 legion_runtime_t , legion_mappable_t ,
495 legion_runtime_t runtime, legion_context_t ctx,
legion_ptr_t pointer,
510#define FROM_RECT(DIM) \
511 legion_domain_t legion_domain_from_rect_##DIM##d(legion_rect_##DIM##d_t r);
524#define GET_RECT(DIM) \
525 legion_rect_##DIM##d_t legion_domain_get_rect_##DIM##d(legion_domain_t d);
534#define GET_BOUNDS(DIM) \
535 legion_rect_##DIM##d_t legion_domain_get_bounds_##DIM##d(legion_domain_t d);
536 LEGION_FOREACH_N(GET_BOUNDS)
554 unsigned m,
unsigned n);
556#define FROM_TRANSFORM(D1, D2) \
557 legion_domain_transform_t legion_domain_transform_from_##D1##x##D2( \
558 legion_transform_##D1##x##D2##_t t);
559 LEGION_FOREACH_NN(FROM_TRANSFORM)
563 unsigned m,
unsigned n);
565#define FROM_AFFINE(D1, D2) \
566 legion_domain_affine_transform_t \
567 legion_domain_affine_transform_from_##D1##x##D2( \
568 legion_affine_transform_##D1##x##D2##_t t);
569 LEGION_FOREACH_NN(FROM_AFFINE)
579#define FROM_POINT(DIM) \
580 legion_domain_point_t legion_domain_point_from_point_##DIM##d( \
581 legion_point_##DIM##d_t p);
588#define GET_POINT(DIM) \
589 legion_point_##DIM##d_t legion_domain_point_get_point_##DIM##d( \
590 legion_domain_point_t p);
611 legion_runtime_t runtime, legion_context_t ctx,
632 legion_domain_point_iterator_t handle);
638 legion_domain_point_iterator_t handle);
644 legion_domain_point_iterator_t handle);
655#define ITERATOR_CREATE(DIM) \
656 legion_rect_in_domain_iterator_##DIM##d_t \
657 legion_rect_in_domain_iterator_create_##DIM##d(legion_domain_t handle);
659#undef ITERATOR_CREATE
666#define ITERATOR_DESTROY(DIM) \
667 void legion_rect_in_domain_iterator_destroy_##DIM##d( \
668 legion_rect_in_domain_iterator_##DIM##d_t handle);
670#undef ITERATOR_DESTROY
675#define ITERATOR_VALID(DIM) \
676 bool legion_rect_in_domain_iterator_valid_##DIM##d( \
677 legion_rect_in_domain_iterator_##DIM##d_t handle);
684#define ITERATOR_STEP(DIM) \
685 bool legion_rect_in_domain_iterator_step_##DIM##d( \
686 legion_rect_in_domain_iterator_##DIM##d_t handle);
693#define ITERATOR_OP(DIM) \
694 legion_rect_##DIM##d_t legion_rect_in_domain_iterator_get_rect_##DIM##d( \
695 legion_rect_in_domain_iterator_##DIM##d_t handle);
721 legion_coloring_t handle, legion_color_t color);
727 legion_coloring_t handle, legion_color_t color,
legion_ptr_t point);
733 legion_coloring_t handle, legion_color_t color,
legion_ptr_t point);
739 legion_coloring_t handle, legion_color_t color,
legion_ptr_t point);
745 legion_coloring_t handle, legion_color_t color,
legion_ptr_t start,
770 legion_domain_coloring_t handle, legion_color_t color,
777 legion_domain_coloring_t handle);
828 legion_domain_point_coloring_t handle);
846 legion_multi_domain_point_coloring_t
855 legion_multi_domain_point_coloring_t handle);
874 legion_runtime_t runtime, legion_context_t ctx,
size_t max_num_elmts);
882 legion_runtime_t runtime, legion_context_t ctx,
legion_domain_t domain);
890 legion_runtime_t runtime, legion_context_t ctx,
size_t dimensions,
891 legion_future_t future, legion_type_tag_t type_tag );
899 legion_runtime_t runtime, legion_context_t ctx,
908 legion_runtime_t runtime, legion_context_t ctx,
955 legion_runtime_t runtime, legion_context_t ctx,
964 legion_runtime_t runtime, legion_context_t ctx,
973 legion_runtime_t runtime, legion_context_t ctx,
981 legion_semantic_tag_t tag,
const void* buffer,
size_t size,
989 legion_semantic_tag_t tag,
const void** result,
size_t* size,
990 bool can_fail ,
bool wait_until_ready );
1004 const char** result);
1024 legion_runtime_t runtime, legion_context_t ctx,
1026 legion_color_t part_color );
1035 legion_runtime_t runtime, legion_context_t ctx,
1037 legion_domain_coloring_t coloring,
bool disjoint,
1038 legion_color_t part_color );
1047 legion_runtime_t runtime, legion_context_t ctx,
1049 legion_point_coloring_t coloring,
1050 legion_partition_kind_t part_kind ,
1051 legion_color_t color );
1061 legion_runtime_t runtime, legion_context_t ctx,
1063 legion_domain_point_coloring_t coloring,
1064 legion_partition_kind_t part_kind ,
1065 legion_color_t color );
1076 legion_runtime_t runtime, legion_context_t ctx,
1078 legion_multi_domain_point_coloring_t coloring,
1079 legion_partition_kind_t part_kind ,
1080 legion_color_t color );
1088#define CREATE_BLOCKIFY(DIM) \
1089 legion_index_partition_t legion_index_partition_create_blockify_##DIM##d( \
1090 legion_runtime_t runtime, legion_context_t ctx, \
1091 legion_index_space_t parent, legion_blockify_##DIM##d_t blockify, \
1092 legion_color_t part_color );
1094#undef CREATE_BLOCKIFY
1102 legion_runtime_t runtime, legion_context_t ctx,
1104 size_t granularity, legion_color_t color );
1112 legion_runtime_t runtime, legion_context_t ctx,
1115 size_t granularity ,
1116 legion_color_t color );
1124 legion_runtime_t runtime, legion_context_t ctx,
1127 legion_color_t color );
1135 legion_runtime_t runtime, legion_context_t ctx,
1138 legion_partition_kind_t part_kind ,
1139 legion_color_t color );
1147 legion_runtime_t runtime, legion_context_t ctx,
1150 legion_partition_kind_t part_kind ,
1151 legion_color_t color );
1159 legion_runtime_t runtime, legion_context_t ctx,
1161 legion_partition_kind_t part_kind ,
1162 legion_color_t color ,
1171 legion_runtime_t runtime, legion_context_t ctx,
1174 legion_partition_kind_t part_kind ,
1175 legion_color_t color );
1183 legion_runtime_t runtime, legion_context_t ctx,
1187 legion_partition_kind_t part_kind ,
1188 legion_color_t color );
1196 legion_runtime_t runtime, legion_context_t ctx,
1199 legion_partition_kind_t part_kind ,
1200 legion_color_t color );
1208 legion_runtime_t runtime, legion_context_t ctx,
1211 legion_color_t color ,
1212 legion_mapper_id_t
id , legion_mapping_tag_id_t tag ,
1213 legion_partition_kind_t part_kind ,
1222 legion_runtime_t runtime, legion_context_t ctx,
1226 legion_partition_kind_t part_kind ,
1227 legion_color_t color ,
1228 legion_mapper_id_t
id , legion_mapping_tag_id_t tag ,
1237 legion_runtime_t runtime, legion_context_t ctx,
1241 legion_partition_kind_t part_kind ,
1242 legion_color_t color ,
1243 legion_mapper_id_t
id , legion_mapping_tag_id_t tag ,
1252 legion_runtime_t runtime, legion_context_t ctx,
1256 legion_partition_kind_t part_kind ,
1257 legion_color_t color ,
1258 legion_mapper_id_t
id , legion_mapping_tag_id_t tag ,
1267 legion_runtime_t runtime, legion_context_t ctx,
1271 legion_partition_kind_t part_kind ,
1272 legion_color_t color ,
1273 legion_mapper_id_t
id , legion_mapping_tag_id_t tag ,
1282 legion_runtime_t runtime, legion_context_t ctx,
1285 legion_partition_kind_t part_kind ,
1286 legion_color_t color );
1294 legion_runtime_t runtime, legion_context_t ctx,
1296 legion_partition_kind_t part_kind ,
1297 legion_color_t color );
1303 legion_runtime_t runtime, legion_context_t ctx,
1312 legion_runtime_t runtime, legion_context_t ctx,
1321 legion_runtime_t runtime, legion_context_t ctx,
1330 legion_runtime_t runtime, legion_context_t ctx,
1338 legion_runtime_t runtime, legion_context_t ctx,
1362 legion_color_t color);
1406 legion_runtime_t runtime, legion_context_t ctx,
1415 legion_runtime_t runtime, legion_context_t ctx,
1424 legion_runtime_t runtime, legion_context_t ctx,
1433 legion_semantic_tag_t tag,
const void* buffer,
size_t size,
1441 legion_semantic_tag_t tag,
const void** result,
size_t* size,
1442 bool can_fail ,
bool wait_until_ready );
1449 const char* name,
bool is_mutable );
1456 const char** result);
1468 legion_runtime_t runtime, legion_context_t ctx);
1476 legion_runtime_t runtime, legion_context_t ctx,
size_t* field_sizes,
1477 legion_field_id_t* field_ids,
size_t num_fields,
1478 legion_custom_serdez_id_t serdez);
1486 legion_runtime_t runtime, legion_context_t ctx,
1487 legion_future_t* field_sizes, legion_field_id_t* field_ids,
1488 size_t num_fields, legion_custom_serdez_id_t serdez);
1501 legion_runtime_t runtime, legion_context_t ctx,
1510 legion_runtime_t runtime, legion_context_t ctx,
1519 legion_runtime_t runtime, legion_context_t ctx,
1527 legion_semantic_tag_t tag,
const void* buffer,
size_t size,
1535 legion_semantic_tag_t tag,
const void** result,
size_t* size,
1536 bool can_fail ,
bool wait_until_ready );
1544 legion_runtime_t runtime, legion_context_t ctx,
1553 legion_runtime_t runtime, legion_context_t ctx,
1555 size_t fields_size);
1562 legion_field_id_t
id, legion_semantic_tag_t tag,
const void* buffer,
1563 size_t size,
bool is_mutable );
1570 legion_field_id_t
id, legion_semantic_tag_t tag,
const void** result,
1571 size_t* size,
bool can_fail ,
1572 bool wait_until_ready );
1586 const char** result);
1593 legion_field_id_t
id,
const char* name,
bool is_mutable );
1600 legion_field_id_t
id,
const char** result);
1606 legion_runtime_t runtime, legion_context_t ctx,
1619 legion_runtime_t runtime, legion_context_t ctx,
1628 legion_runtime_t runtime, legion_context_t ctx,
1637 legion_runtime_t runtime, legion_context_t ctx,
1646 legion_runtime_t runtime, legion_context_t ctx,
1678 legion_semantic_tag_t tag,
const void* buffer,
size_t size,
1686 legion_semantic_tag_t tag,
const void** result,
size_t* size,
1687 bool can_fail ,
bool wait_until_ready );
1694 const char* name,
bool is_mutable );
1701 const char** result);
1728 legion_runtime_t runtime, legion_context_t ctx,
1730 legion_region_tree_id_t tid);
1738 legion_runtime_t runtime, legion_context_t ctx,
1747 legion_runtime_t runtime, legion_context_t ctx,
1807 legion_semantic_tag_t tag,
const void* buffer,
size_t size,
1815 legion_semantic_tag_t tag,
const void** result,
size_t* size,
1816 bool can_fail ,
bool wait_until_ready );
1823 const char* name,
bool is_mutable );
1830 const char** result);
1839 legion_runtime_t runtime, legion_context_t ctx,
1841 int num_fields, legion_field_id_t* fields);
1853 legion_mapping_tag_id_t tag ,
bool verified );
1858 legion_region_requirement_t
1861 legion_privilege_mode_t priv, legion_coherence_property_t prop,
1868 legion_region_requirement_t
1871 legion_projection_id_t proj , legion_privilege_mode_t priv,
1873 legion_mapping_tag_id_t tag ,
bool verified );
1884 legion_region_requirement_t handle, legion_field_id_t field,
1885 bool instance_field);
1891 legion_region_requirement_t handle, legion_region_flags_t flags);
1897 legion_region_requirement_t handle);
1903 legion_region_requirement_t handle);
1909 legion_region_requirement_t handle);
1915 legion_region_requirement_t handle);
1929 legion_region_requirement_t handle, legion_field_id_t* fields,
1930 unsigned fields_size);
1940 legion_region_requirement_t handle,
unsigned idx);
1946 legion_region_requirement_t handle);
1960 legion_region_requirement_t handle, legion_field_id_t* fields,
1961 unsigned fields_size);
1969 legion_region_requirement_t handle,
unsigned idx);
1975 legion_region_requirement_t handle);
1981 legion_region_requirement_t handle);
1987 legion_region_requirement_t handle);
1993 legion_region_requirement_t handle);
1999 legion_region_requirement_t handle);
2005 legion_region_requirement_t handle);
2016 size_t fields_size,
int dim,
bool global_indexing);
2021 legion_output_requirement_t
2023 legion_region_requirement_t handle);
2034 legion_output_requirement_t handle, legion_field_id_t field,
2041 legion_output_requirement_t handle);
2047 legion_output_requirement_t handle);
2053 legion_output_requirement_t handle);
2065 legion_runtime_t runtime, legion_context_t ctx,
2084 legion_field_allocator_t allocator,
size_t field_size,
2085 legion_field_id_t desired_fieldid );
2091 legion_field_allocator_t allocator, legion_future_t field_size,
2092 legion_field_id_t desired_fieldid );
2098 legion_field_allocator_t allocator, legion_field_id_t fid);
2104 legion_field_allocator_t allocator, legion_field_id_t fid,
2111 legion_field_allocator_t allocator,
size_t field_size,
2112 legion_field_id_t desired_fieldid );
2127 legion_future_map_t map);
2141 legion_future_t future,
bool replace );
2160 legion_runtime_t runtime, legion_context_t ctx, legion_future_t f);
2193 legion_runtime_t runtime, legion_context_t ctx,
unsigned arrivals);
2201 legion_runtime_t runtime, legion_context_t ctx,
2208 legion_runtime_t runtime, legion_context_t ctx,
2215 legion_runtime_t runtime, legion_context_t ctx,
2222 legion_runtime_t runtime, legion_context_t ctx,
2231 legion_runtime_t runtime, legion_context_t ctx,
2244 legion_runtime_t runtime, legion_context_t ctx,
unsigned arrivals,
2245 legion_reduction_op_id_t redop,
const void* init_value,
size_t init_size);
2253 legion_runtime_t runtime, legion_context_t ctx,
2260 legion_runtime_t runtime, legion_context_t ctx,
2267 legion_runtime_t runtime, legion_context_t ctx,
2275 legion_runtime_t runtime, legion_context_t ctx,
2285 legion_runtime_t runtime, legion_context_t ctx,
2294 legion_runtime_t runtime, legion_context_t ctx,
2307 legion_runtime_t runtime,
const void* buffer,
size_t size);
2315 legion_runtime_t runtime,
const void* buffer,
size_t size,
2316 bool take_ownership,
const char* provenance,
bool shard_local);
2341 legion_future_t handle,
bool silence_warnings ,
2342 const char* warning_string );
2373 legion_future_t handle,
size_t* size );
2417 legion_runtime_t runtime, legion_context_t ctx,
2418 legion_future_map_t handle, legion_reduction_op_id_t redop,
2419 bool deterministic, legion_mapper_id_t map_id,
2420 legion_mapping_tag_id_t tag);
2428 legion_runtime_t runtime, legion_context_t ctx,
2429 legion_future_map_t handle, legion_reduction_op_id_t redop,
2430 bool deterministic, legion_mapper_id_t map_id,
2431 legion_mapping_tag_id_t tag,
const char* provenance,
2432 legion_future_t initial_value);
2440 legion_runtime_t runtime, legion_context_t ctx,
legion_domain_t domain,
2442 size_t num_points,
bool collective, legion_sharding_id_t sid,
2443 bool implicit_sharding);
2451 legion_runtime_t runtime, legion_context_t ctx,
legion_domain_t domain,
2453 size_t num_futures,
bool collective, legion_sharding_id_t sid,
2454 bool implicit_sharding);
2462 legion_runtime_t runtime, legion_context_t ctx, legion_future_map_t fm,
2464 bool take_ownership);
2475#define BUFFER_CREATE(DIM) \
2476 legion_deferred_buffer_char_##DIM##d_t \
2477 legion_deferred_buffer_char_##DIM##d_create( \
2478 legion_rect_##DIM##d_t bounds, legion_memory_kind_t kind, \
2479 char* initial_value);
2486#define BUFFER_PTR(DIM) \
2487 char* legion_deferred_buffer_char_##DIM##d_ptr( \
2488 legion_deferred_buffer_char_##DIM##d_t buffer, \
2489 legion_point_##DIM##d_t p);
2490 LEGION_FOREACH_N(BUFFER_PTR)
2496#define BUFFER_DESTROY(DIM) \
2497 void legion_deferred_buffer_char_##DIM##d_destroy( \
2498 legion_deferred_buffer_char_##DIM##d_t buffer);
2499 LEGION_FOREACH_N(BUFFER_DESTROY)
2500#undef BUFFER_DESTROY
2513 legion_predicate_t pred ,
2514 legion_mapper_id_t
id , legion_mapping_tag_id_t tag );
2522 legion_task_id_t tid,
const void* buffer,
size_t buffer_size,
2523 legion_predicate_t pred ,
2524 legion_mapper_id_t
id , legion_mapping_tag_id_t tag );
2539 legion_runtime_t runtime, legion_context_t ctx,
2540 legion_task_launcher_t launcher);
2548 legion_runtime_t runtime, legion_context_t ctx,
2549 legion_task_launcher_t launcher, legion_output_requirement_t* reqs,
2557 legion_privilege_mode_t priv, legion_coherence_property_t prop,
2566 legion_reduction_op_id_t redop, legion_coherence_property_t prop,
2574 legion_task_launcher_t launcher,
unsigned idx,
2577 legion_mapping_tag_id_t tag ,
bool verified );
2583 legion_task_launcher_t launcher,
unsigned idx,
2586 legion_mapping_tag_id_t tag ,
bool verified );
2592 legion_task_launcher_t launcher,
unsigned idx, legion_field_id_t fid,
2599 legion_region_requirement_t requirement,
size_t* size);
2605 legion_index_launcher_t launcher_,
unsigned idx,
const void* args,
2606 size_t size,
bool own);
2612 legion_task_launcher_t launcher,
unsigned idx,
2613 enum legion_region_flags_t flags);
2619 legion_task_launcher_t launcher,
unsigned idx,
2620 enum legion_region_flags_t flags);
2634 legion_task_launcher_t launcher, legion_future_t future);
2670 legion_task_launcher_t launcher, legion_future_t f);
2682 legion_task_launcher_t launcher, legion_mapper_id_t mapper_id);
2688 legion_task_launcher_t launcher, legion_mapping_tag_id_t tag);
2700 legion_task_launcher_t launcher,
bool enable_inlining);
2706 legion_task_launcher_t launcher,
bool local_function_task);
2712 legion_task_launcher_t launcher,
bool elide_future_return);
2718 legion_task_launcher_t launcher,
const char* provenance);
2728 legion_predicate_t pred ,
2729 bool must , legion_mapper_id_t
id ,
2730 legion_mapping_tag_id_t tag );
2739 size_t buffer_size, legion_argument_map_t map,
2740 legion_predicate_t pred ,
2741 bool must , legion_mapper_id_t
id ,
2742 legion_mapping_tag_id_t tag );
2758 legion_runtime_t runtime, legion_context_t ctx,
2759 legion_index_launcher_t launcher);
2768 legion_runtime_t runtime, legion_context_t ctx,
2769 legion_index_launcher_t launcher, legion_reduction_op_id_t redop);
2778 legion_runtime_t runtime, legion_context_t ctx,
2779 legion_index_launcher_t launcher, legion_output_requirement_t* reqs,
2789 legion_runtime_t runtime, legion_context_t ctx,
2790 legion_index_launcher_t launcher, legion_reduction_op_id_t redop,
2791 bool deterministic);
2800 legion_runtime_t runtime, legion_context_t ctx,
2801 legion_index_launcher_t launcher, legion_reduction_op_id_t redop,
2802 bool deterministic, legion_output_requirement_t* reqs,
size_t reqs_size);
2809 legion_projection_id_t proj , legion_privilege_mode_t priv,
2811 legion_mapping_tag_id_t tag ,
bool verified );
2818 legion_projection_id_t proj , legion_privilege_mode_t priv,
2820 legion_mapping_tag_id_t tag ,
bool verified );
2828 legion_projection_id_t proj , legion_reduction_op_id_t redop,
2830 legion_mapping_tag_id_t tag ,
bool verified );
2838 legion_projection_id_t proj , legion_reduction_op_id_t redop,
2840 legion_mapping_tag_id_t tag ,
bool verified );
2846 legion_index_launcher_t launcher,
unsigned idx,
2848 legion_privilege_mode_t priv, legion_coherence_property_t prop,
2856 legion_index_launcher_t launcher,
unsigned idx,
2858 legion_privilege_mode_t priv, legion_coherence_property_t prop,
2866 legion_index_launcher_t launcher,
unsigned idx,
2868 legion_reduction_op_id_t redop, legion_coherence_property_t prop,
2876 legion_index_launcher_t launcher,
unsigned idx,
2878 legion_reduction_op_id_t redop, legion_coherence_property_t prop,
2886 legion_index_launcher_t launcher,
unsigned idx, legion_field_id_t fid,
2893 legion_index_launcher_t launcher,
unsigned idx,
2894 enum legion_region_flags_t flags);
2900 legion_index_launcher_t launcher,
unsigned idx,
2901 enum legion_region_flags_t flags);
2915 legion_index_launcher_t launcher, legion_future_t future);
2933 legion_index_launcher_t launcher, legion_argument_map_t map);
2951 legion_index_launcher_t launcher, legion_mapper_id_t mapper_id);
2957 legion_index_launcher_t launcher, legion_mapping_tag_id_t tag);
2969 legion_index_launcher_t launcher,
bool elide_future_return);
2975 legion_index_launcher_t launcher,
const char* provenance);
2981 legion_index_launcher_t launcher,
bool concurrent);
2987 legion_index_launcher_t launcher, legion_future_t initial_value);
3001 legion_mapping_tag_id_t region_tag ,
bool verified ,
3002 legion_mapper_id_t
id ,
3003 legion_mapping_tag_id_t launcher_tag );
3018 legion_runtime_t runtime, legion_context_t ctx,
3019 legion_inline_launcher_t launcher);
3025 legion_inline_launcher_t launcher, legion_field_id_t fid,
3038 legion_inline_launcher_t launcher,
const char* provenance);
3044 legion_runtime_t runtime, legion_context_t ctx,
3045 legion_physical_region_t region);
3051 legion_runtime_t runtime, legion_context_t ctx,
3052 legion_physical_region_t region);
3058 legion_runtime_t runtime, legion_context_t ctx);
3068 legion_runtime_t runtime, legion_context_t ctx,
3070 legion_field_id_t fid,
const void* value,
size_t value_size,
3071 legion_predicate_t pred );
3077 legion_runtime_t runtime, legion_context_t ctx,
3079 legion_field_id_t fid, legion_future_t f,
3080 legion_predicate_t pred );
3089 legion_field_id_t fid,
const void* value,
size_t value_size,
3090 legion_predicate_t pred ,
3091 legion_mapper_id_t
id , legion_mapping_tag_id_t tag );
3100 legion_field_id_t fid, legion_future_t f,
3101 legion_predicate_t pred ,
3102 legion_mapper_id_t
id , legion_mapping_tag_id_t tag );
3115 legion_fill_launcher_t handle, legion_field_id_t fid);
3121 legion_runtime_t runtime, legion_context_t ctx,
3122 legion_fill_launcher_t launcher);
3146 legion_fill_launcher_t launcher,
const char* provenance);
3157 legion_runtime_t runtime, legion_context_t ctx,
3159 legion_field_id_t fid,
const void* value,
size_t value_size,
3160 legion_projection_id_t proj ,
3161 legion_predicate_t pred ,
3162 legion_mapper_id_t
id ,
3163 legion_mapping_tag_id_t launcher_tag );
3170 legion_runtime_t runtime, legion_context_t ctx,
3173 size_t value_size, legion_projection_id_t proj ,
3174 legion_predicate_t pred ,
3175 legion_mapper_id_t
id ,
3176 legion_mapping_tag_id_t launcher_tag );
3183 legion_runtime_t runtime, legion_context_t ctx,
legion_domain_t domain,
3185 legion_field_id_t fid,
const void* value,
size_t value_size,
3186 legion_projection_id_t proj ,
3187 legion_predicate_t pred ,
3188 legion_mapper_id_t
id ,
3189 legion_mapping_tag_id_t launcher_tag );
3196 legion_runtime_t runtime, legion_context_t ctx,
3198 legion_field_id_t fid, legion_future_t f,
3199 legion_projection_id_t proj ,
3200 legion_predicate_t pred ,
3201 legion_mapper_id_t
id ,
3202 legion_mapping_tag_id_t launcher_tag );
3209 legion_runtime_t runtime, legion_context_t ctx,
3212 legion_projection_id_t proj ,
3213 legion_predicate_t pred ,
3214 legion_mapper_id_t
id ,
3215 legion_mapping_tag_id_t launcher_tag );
3222 legion_runtime_t runtime, legion_context_t ctx,
legion_domain_t domain,
3224 legion_field_id_t fid, legion_future_t f,
3225 legion_projection_id_t proj ,
3226 legion_predicate_t pred ,
3227 legion_mapper_id_t
id ,
3228 legion_mapping_tag_id_t launcher_tag );
3238 size_t value_size, legion_projection_id_t proj ,
3239 legion_predicate_t pred ,
3240 legion_mapper_id_t
id ,
3241 legion_mapping_tag_id_t launcher_tag );
3251 size_t value_size, legion_projection_id_t proj ,
3252 legion_predicate_t pred ,
3253 legion_mapper_id_t
id ,
3254 legion_mapping_tag_id_t launcher_tag );
3261 legion_index_fill_launcher_t
3265 legion_future_t future, legion_projection_id_t proj ,
3266 legion_predicate_t pred ,
3267 legion_mapper_id_t
id ,
3268 legion_mapping_tag_id_t launcher_tag );
3275 legion_index_fill_launcher_t
3279 legion_future_t future, legion_projection_id_t proj ,
3280 legion_predicate_t pred ,
3281 legion_mapper_id_t
id ,
3282 legion_mapping_tag_id_t launcher_tag );
3295 legion_fill_launcher_t handle, legion_field_id_t fid);
3301 legion_runtime_t runtime, legion_context_t ctx,
3302 legion_index_fill_launcher_t launcher);
3320 legion_index_fill_launcher_t launcher,
const char* provenance);
3352 legion_discard_launcher_t handle, legion_field_id_t fid);
3358 legion_runtime_t runtime, legion_context_t ctx,
3359 legion_discard_launcher_t launcher);
3365 legion_discard_launcher_t launcher,
const char* provenance);
3381 void legion_field_map_insert(
3382 legion_field_map_t handle, legion_field_id_t key,
const char* value);
3390 legion_runtime_t runtime, legion_context_t ctx,
const char* filename,
3392 legion_field_map_t field_map, legion_file_mode_t mode);
3398 legion_runtime_t runtime, legion_context_t ctx,
3399 legion_physical_region_t region);
3411 legion_predicate_t pred ,
3412 legion_mapper_id_t
id ,
3413 legion_mapping_tag_id_t launcher_tag );
3428 legion_runtime_t runtime, legion_context_t ctx,
3429 legion_copy_launcher_t launcher);
3436 legion_privilege_mode_t priv, legion_coherence_property_t prop,
3445 legion_privilege_mode_t priv, legion_coherence_property_t prop,
3455 legion_reduction_op_id_t redop, legion_coherence_property_t prop,
3465 legion_field_id_t fid, legion_coherence_property_t prop,
3467 bool is_range_indirection ,
bool verified );
3475 legion_field_id_t fid, legion_coherence_property_t prop,
3477 bool is_range_indirection ,
bool verified );
3483 legion_copy_launcher_t launcher,
unsigned idx, legion_field_id_t fid,
3490 legion_copy_launcher_t launcher,
unsigned idx, legion_field_id_t fid,
3509 legion_copy_launcher_t launcher,
bool flag);
3515 legion_copy_launcher_t launcher,
bool flag);
3539 legion_copy_launcher_t launcher,
const char* provenance);
3550 legion_copy_t copy,
unsigned idx);
3563 legion_predicate_t pred ,
3564 legion_mapper_id_t
id ,
3565 legion_mapping_tag_id_t launcher_tag );
3580 legion_runtime_t runtime, legion_context_t ctx,
3581 legion_index_copy_launcher_t launcher);
3588 legion_projection_id_t proj , legion_privilege_mode_t priv,
3590 legion_mapping_tag_id_t tag ,
bool verified );
3597 legion_projection_id_t proj , legion_privilege_mode_t priv,
3599 legion_mapping_tag_id_t tag ,
bool verified );
3606 legion_index_copy_launcher_t launcher,
3608 legion_projection_id_t proj , legion_privilege_mode_t priv,
3610 legion_mapping_tag_id_t tag ,
bool verified );
3617 legion_index_copy_launcher_t launcher,
3619 legion_projection_id_t proj , legion_privilege_mode_t priv,
3621 legion_mapping_tag_id_t tag ,
bool verified );
3629 legion_projection_id_t proj , legion_reduction_op_id_t redop,
3631 legion_mapping_tag_id_t tag ,
bool verified );
3638 legion_index_copy_launcher_t launcher,
3640 legion_projection_id_t proj , legion_reduction_op_id_t redop,
3642 legion_mapping_tag_id_t tag ,
bool verified );
3650 legion_projection_id_t proj , legion_field_id_t fid,
3652 legion_mapping_tag_id_t tag ,
3653 bool is_range_indirection ,
bool verified );
3661 legion_projection_id_t proj , legion_field_id_t fid,
3663 legion_mapping_tag_id_t tag ,
3664 bool is_range_indirection ,
bool verified );
3671 legion_index_copy_launcher_t launcher,
3673 legion_projection_id_t proj , legion_field_id_t fid,
3675 legion_mapping_tag_id_t tag ,
3676 bool is_range_indirection ,
bool verified );
3683 legion_index_copy_launcher_t launcher,
3685 legion_projection_id_t proj , legion_field_id_t fid,
3687 legion_mapping_tag_id_t tag ,
3688 bool is_range_indirection ,
bool verified );
3694 legion_index_copy_launcher_t launcher,
unsigned idx,
3695 legion_field_id_t fid,
bool inst );
3701 legion_index_copy_launcher_t launcher,
unsigned idx,
3702 legion_field_id_t fid,
bool inst );
3720 legion_index_copy_launcher_t launcher,
bool flag);
3726 legion_index_copy_launcher_t launcher,
bool flag);
3744 legion_index_copy_launcher_t launcher,
const char* provenance);
3758 legion_predicate_t pred ,
3759 legion_mapper_id_t
id , legion_mapping_tag_id_t tag );
3774 legion_runtime_t runtime, legion_context_t ctx,
3775 legion_acquire_launcher_t launcher);
3781 legion_acquire_launcher_t launcher, legion_field_id_t fid);
3811 legion_acquire_launcher_t launcher,
const char* provenance);
3825 legion_predicate_t pred ,
3826 legion_mapper_id_t
id , legion_mapping_tag_id_t tag );
3841 legion_runtime_t runtime, legion_context_t ctx,
3842 legion_release_launcher_t launcher);
3848 legion_release_launcher_t launcher, legion_field_id_t fid);
3878 legion_release_launcher_t launcher,
const char* provenance);
3892 legion_external_resource_t resource);
3898 legion_attach_launcher_t handle,
const char* filename,
3899 legion_field_map_t field_map, legion_file_mode_t mode);
3905 legion_attach_launcher_t handle,
bool restricted);
3911 legion_attach_launcher_t handle,
bool mapped);
3917 legion_attach_launcher_t handle,
const char* provenance);
3932 legion_runtime_t runtime, legion_context_t ctx,
3933 legion_attach_launcher_t launcher);
3939 legion_attach_launcher_t launcher, legion_field_id_t fid,
void* base_ptr,
3946 legion_attach_launcher_t launcher,
size_t footprint);
3954 legion_runtime_t runtime, legion_context_t ctx,
3955 legion_physical_region_t handle);
3963 legion_runtime_t runtime, legion_context_t ctx,
3964 legion_physical_region_t handle,
bool flush);
3972 legion_runtime_t runtime, legion_context_t ctx,
3973 legion_physical_region_t handle,
bool flush,
bool unordered);
3979 legion_runtime_t runtime, legion_context_t ctx);
3992 legion_external_resource_t resource,
bool restricted );
3998 legion_index_attach_launcher_t handle,
bool restricted);
4004 legion_index_attach_launcher_t handle,
const char* provenance);
4010 legion_index_attach_launcher_t handle,
bool deduplicate);
4017 const char* filename,
const legion_field_id_t* fields,
size_t num_fields,
4018 legion_file_mode_t mode);
4025 const char* filename, legion_field_map_t field_map,
4026 legion_file_mode_t mode);
4033 void* base_ptr,
bool column_major,
const legion_field_id_t* fields,
4041 void* base_ptr,
bool column_major,
const legion_field_id_t* fields,
4050 legion_index_attach_launcher_t handle);
4058 legion_runtime_t runtime, legion_context_t ctx,
4059 legion_index_attach_launcher_t launcher);
4067 legion_runtime_t runtime, legion_context_t ctx,
4068 legion_external_resources_t,
bool flush,
bool unordered);
4080 legion_mapper_id_t
id ,
4081 legion_mapping_tag_id_t launcher_tag );
4096 legion_runtime_t runtime, legion_context_t ctx,
4097 legion_must_epoch_launcher_t launcher);
4106 legion_task_launcher_t handle);
4114 legion_must_epoch_launcher_t launcher, legion_index_launcher_t handle);
4132 legion_must_epoch_launcher_t launcher,
const char* provenance);
4142 legion_runtime_t runtime, legion_context_t ctx);
4148 legion_runtime_t runtime, legion_context_t ctx);
4158 legion_runtime_t runtime, legion_context_t ctx, legion_trace_id_t tid,
4165 legion_runtime_t runtime, legion_context_t ctx, legion_trace_id_t tid);
4171 void legion_runtime_complete_frame(
4172 legion_runtime_t runtime, legion_context_t ctx);
4184 legion_runtime_t runtime, legion_context_t ctx, legion_tunable_id_t tid,
4185 legion_mapper_id_t mapper ,
4186 legion_mapping_tag_id_t tag );
4226 legion_runtime_t runtime, legion_context_t ctx);
4237 legion_runtime_t runtime, legion_context_t ctx);
4239 legion_shard_id_t legion_runtime_local_shard_without_context(
void);
4245 legion_runtime_t runtime, legion_context_t ctx);
4271 legion_sharding_id_t sid, legion_shard_id_t shard,
4275 void legion_runtime_enable_scheduler_lock(
void);
4277 void legion_runtime_disable_scheduler_lock(
void);
4283 legion_runtime_t runtime, legion_context_t ctx, FILE* f,
4284 const char* message);
4289 legion_runtime_t runtime, legion_context_t ctx,
int fd,
const char* mode,
4290 const char* message);
4309 legion_physical_region_t handle);
4330 legion_physical_region_t handle);
4336 legion_physical_region_t handle);
4337 legion_field_id_t legion_physical_region_get_field_id(
4338 legion_physical_region_t handle,
size_t index);
4344 legion_physical_region_t handle);
4346 legion_physical_region_t handle,
size_t index);
4353#define ACCESSOR_ARRAY(DIM) \
4354 legion_accessor_array_##DIM##d_t \
4355 legion_physical_region_get_field_accessor_array_##DIM##d( \
4356 legion_physical_region_t handle, legion_field_id_t fid);
4358#undef ACCESSOR_ARRAY
4360#define ACCESSOR_ARRAY(DIM) \
4361 legion_accessor_array_##DIM##d_t \
4362 legion_physical_region_get_field_accessor_array_##DIM##d_with_transform( \
4363 legion_physical_region_t handle, legion_field_id_t fid, \
4364 legion_domain_affine_transform_t transform);
4366#undef ACCESSOR_ARRAY
4368#define RAW_PTR(DIM) \
4369 void* legion_accessor_array_##DIM##d_raw_rect_ptr( \
4370 legion_accessor_array_##DIM##d_t handle, legion_rect_##DIM##d_t rect, \
4371 legion_rect_##DIM##d_t* subrect, legion_byte_offset_t* offsets);
4372 LEGION_FOREACH_N(RAW_PTR)
4376 void legion_accessor_array_1d_read(
4377 legion_accessor_array_1d_t handle,
legion_ptr_t ptr,
void* dst,
4380#define READ_ARRAY(DIM) \
4381 void legion_accessor_array_##DIM##d_read_point( \
4382 legion_accessor_array_##DIM##d_t handle, legion_point_##DIM##d_t point, \
4383 void* dst, size_t bytes);
4384 LEGION_FOREACH_N(READ_ARRAY)
4388 void legion_accessor_array_1d_write(
4389 legion_accessor_array_1d_t handle,
legion_ptr_t ptr,
const void* src,
4392#define WRITE_ARRAY(DIM) \
4393 void legion_accessor_array_##DIM##d_write_point( \
4394 legion_accessor_array_##DIM##d_t handle, legion_point_##DIM##d_t point, \
4395 const void* src, size_t bytes);
4396 LEGION_FOREACH_N(WRITE_ARRAY)
4400 void* legion_accessor_array_1d_ref(
4403#define REF_ARRAY(DIM) \
4404 void* legion_accessor_array_##DIM##d_ref_point( \
4405 legion_accessor_array_##DIM##d_t handle, legion_point_##DIM##d_t point);
4406 LEGION_FOREACH_N(REF_ARRAY)
4412#define DESTROY_ARRAY(DIM) \
4413 void legion_accessor_array_##DIM##d_destroy( \
4414 legion_accessor_array_##DIM##d_t handle);
4438 legion_external_resources_t handle,
unsigned index);
4448 legion_mappable_t mappable);
4529 legion_runtime_t runtime, legion_task_id_t task_id,
4530 legion_semantic_tag_t tag,
const void* buffer,
size_t size,
4537 legion_runtime_t runtime, legion_task_id_t task_id,
4538 legion_semantic_tag_t tag,
const void** result,
size_t* size,
4539 bool can_fail ,
bool wait_until_ready );
4545 legion_runtime_t runtime, legion_task_id_t task_id,
const char* name,
4552 legion_runtime_t runtime, legion_task_id_t task_id,
const char** result);
4610 legion_task_t task,
unsigned idx);
4652 legion_inline_t inline_operation);
4672 legion_execution_constraint_set_t handle);
4678 legion_execution_constraint_set_t handle, uint64_t prop);
4685 legion_execution_constraint_set_t handle,
4686 legion_processor_kind_t proc_kind);
4693 legion_execution_constraint_set_t handle,
4694 legion_resource_constraint_t resource, legion_equality_kind_t eq,
4702 legion_execution_constraint_set_t handle, legion_launch_constraint_t kind,
4710 legion_execution_constraint_set_t handle, legion_launch_constraint_t kind,
4711 const size_t* values,
int dims);
4718 legion_execution_constraint_set_t handle,
const unsigned* indexes,
4719 size_t num_indexes,
const legion_field_id_t* fields,
size_t num_fields);
4738 legion_layout_constraint_set_t handle);
4747 legion_layout_constraint_set_t handle,
4748 const char* layout_name );
4756 legion_layout_constraint_set_t handle,
4757 const char* layout_name );
4765 legion_runtime_t runtime, legion_layout_constraint_id_t handle);
4772 legion_layout_constraint_set_t handle,
4773 legion_specialized_constraint_t specialized,
4774 legion_reduction_op_id_t redop);
4781 legion_layout_constraint_set_t handle, legion_memory_kind_t kind);
4788 legion_layout_constraint_set_t handle,
const legion_field_id_t* fields,
4789 size_t num_fields,
bool contiguous,
bool inorder);
4796 legion_layout_constraint_set_t handle,
4797 const legion_dimension_kind_t* dims,
size_t num_dims,
bool contiguous);
4804 legion_layout_constraint_set_t handle, legion_dimension_kind_t dim,
4805 size_t value,
bool tiles);
4812 legion_layout_constraint_set_t handle, legion_dimension_kind_t dim,
4813 legion_equality_kind_t eq,
size_t value);
4820 legion_layout_constraint_set_t handle, legion_field_id_t field,
4821 legion_equality_kind_t eq,
size_t byte_boundary);
4828 legion_layout_constraint_set_t handle, legion_field_id_t field,
4857 legion_task_layout_constraint_set_t handle);
4863 legion_task_layout_constraint_set_t handle,
unsigned idx,
4864 legion_layout_constraint_id_t layout);
4874 int* argc,
char*** argv,
bool filter );
4880 int argc,
char** argv,
bool background );
4917 legion_runtime_t runtime,
const char* library_name,
size_t count);
4923 legion_runtime_t runtime, legion_mapper_t mapper,
4935 legion_runtime_t runtime,
const char* library_name,
size_t count);
4941 legion_runtime_t runtime,
const char* library_name,
size_t count);
4947 legion_runtime_t runtime,
const char* library_name,
size_t count);
4953 legion_projection_id_t
id,
bool exclusive,
unsigned depth,
4961 legion_runtime_t runtime, legion_projection_id_t
id,
bool exclusive,
4970 legion_projection_id_t
id,
bool exclusive,
unsigned depth,
4978 legion_runtime_t runtime, legion_projection_id_t
id,
bool exclusive,
4986 legion_projection_id_t
id,
bool exclusive,
unsigned depth,
4994 legion_runtime_t runtime, legion_projection_id_t
id,
bool exclusive,
5003 legion_runtime_t runtime,
const char* library_name,
size_t count);
5011 legion_task_id_t tid,
bool global,
const char* variant_name);
5019 legion_task_variant_registrar_t registrar);
5025 legion_task_variant_registrar_t registrar,
5026 legion_execution_constraint_set_t constraints);
5032 legion_task_variant_registrar_t registrar,
5033 legion_task_layout_constraint_set_t constraints);
5042 legion_task_variant_registrar_t registrar,
5049 legion_task_variant_registrar_t registrar, legion_memory_kind_t kind,
5050 size_t size,
unsigned alignment);
5056 legion_runtime_t runtime, legion_task_variant_registrar_t registrar,
5058 legion_variant_id_t variant_id,
const void* userdata,
size_t userlen,
5059 size_t return_type_size,
bool has_return_type_size);
5066 legion_task_variant_registrar_t registrar,
5068 legion_variant_id_t variant_id,
const char* task_name,
5069 const void* userdata,
size_t userlen,
size_t return_type_size,
5070 bool has_return_type_size);
5076 legion_runtime_t runtime, legion_task_id_t
id ,
5077 const char* task_name ,
5078 const char* variant_name ,
bool global,
5079 legion_execution_constraint_set_t execution_constraints,
5080 legion_task_layout_constraint_set_t layout_constraints,
5089 legion_task_id_t
id ,
5090 legion_variant_id_t variant_id ,
5091 const char* task_name ,
5092 const char* variant_name ,
5093 legion_execution_constraint_set_t execution_constraints,
5094 legion_task_layout_constraint_set_t layout_constraints,
5099#ifdef REALM_USE_LLVM
5103 legion_task_id_t legion_runtime_register_task_variant_llvmir(
5104 legion_runtime_t runtime, legion_task_id_t
id ,
5105 const char* task_name ,
bool global,
5106 legion_execution_constraint_set_t execution_constraints,
5107 legion_task_layout_constraint_set_t layout_constraints,
5109 const char* entry_symbol,
const void* userdata,
size_t userlen);
5114 legion_task_id_t legion_runtime_preregister_task_variant_llvmir(
5115 legion_task_id_t
id ,
5116 legion_variant_id_t variant_id ,
5117 const char* task_name ,
5118 legion_execution_constraint_set_t execution_constraints,
5119 legion_task_layout_constraint_set_t layout_constraints,
5121 const char* entry_symbol,
const void* userdata,
size_t userlen);
5124#ifdef REALM_USE_PYTHON
5128 legion_task_id_t legion_runtime_register_task_variant_python_source(
5129 legion_runtime_t runtime, legion_task_id_t
id ,
5130 const char* task_name ,
bool global,
5131 legion_execution_constraint_set_t execution_constraints,
5132 legion_task_layout_constraint_set_t layout_constraints,
5134 const char* function_name,
const void* userdata,
size_t userlen);
5139 legion_task_id_t legion_runtime_register_task_variant_python_source_qualname(
5140 legion_runtime_t runtime, legion_task_id_t
id ,
5141 const char* task_name ,
bool global,
5142 legion_execution_constraint_set_t execution_constraints,
5143 legion_task_layout_constraint_set_t layout_constraints,
5145 const char** function_qualname,
size_t function_qualname_len,
5146 const void* userdata,
size_t userlen);
5153 const void* data,
size_t datalen, realm_id_t proc_id,
5154 legion_task_t* taskptr,
const legion_physical_region_t** regionptr,
5155 unsigned* num_regions_ptr, legion_context_t* ctxptr,
5156 legion_runtime_t* runtimeptr);
5162 legion_runtime_t runtime, legion_context_t ctx,
const void* retval,
5183 legion_runtime_t runtime, legion_context_t ctx);
5189 legion_runtime_t runtime, legion_context_t ctx);
5195 legion_runtime_t runtime, legion_context_t ctx);
5308 size_t processors_size);
5320 size_t memories_size);
5366 legion_machine_t machine);
5374 legion_processor_query_t query);
5389 legion_processor_query_t query, legion_processor_kind_t kind);
5397 legion_processor_query_t query);
5422 unsigned min_bandwidth ,
unsigned max_latency );
5431 int bandwidth_weight ,
int latency_weight );
5442 legion_processor_query_t query);
5454 legion_processor_query_t query);
5473 legion_memory_query_t query);
5488 legion_memory_query_t query, legion_memory_kind_t kind);
5520 unsigned min_bandwidth ,
unsigned max_latency );
5529 unsigned min_bandwidth ,
unsigned max_latency );
5538 int bandwidth_weight ,
int latency_weight );
5547 int bandwidth_weight ,
int latency_weight );
5579 void legion_physical_instance_destroy(legion_physical_instance_t instance);
5595 legion_slice_task_output_t output,
bool verify_correctness);
5605 legion_map_task_output_t output);
5611 legion_map_task_output_t output,
size_t idx);
5617 legion_map_task_output_t output, legion_physical_instance_t* instances,
5618 size_t instances_size);
5624 legion_map_task_output_t output,
size_t idx,
5625 legion_physical_instance_t* instances,
size_t instances_size);
5631 legion_map_task_output_t output);
5643 legion_map_task_output_t output,
size_t idx);
5649 legion_map_task_output_t output, legion_task_priority_t priority);
5661 legion_mapper_runtime_t runtime, legion_mapper_context_t ctx,
5662 legion_memory_t target_memory, legion_layout_constraint_set_t constraints,
5664 legion_physical_instance_t* result,
bool acquire,
5665 legion_garbage_collection_priority_t priority);
5673 legion_mapper_runtime_t runtime, legion_mapper_context_t ctx,
5674 legion_memory_t target_memory, legion_layout_constraint_id_t layout_id,
5676 legion_physical_instance_t* result,
bool acquire,
5677 legion_garbage_collection_priority_t priority);
5685 legion_mapper_runtime_t runtime, legion_mapper_context_t ctx,
5686 legion_memory_t target_memory, legion_layout_constraint_set_t constraints,
5688 legion_physical_instance_t* result,
bool* created,
bool acquire,
5689 legion_garbage_collection_priority_t priority,
bool tight_region_bounds);
5698 legion_mapper_runtime_t runtime, legion_mapper_context_t ctx,
5700 legion_layout_constraint_id_t layout_id,
5702 legion_physical_instance_t* result,
bool* created,
bool acquire,
5703 legion_garbage_collection_priority_t priority,
5704 bool tight_region_bounds);
5712 legion_mapper_runtime_t runtime, legion_mapper_context_t ctx,
5713 legion_memory_t target_memory, legion_layout_constraint_set_t constraints,
5715 legion_physical_instance_t* result,
bool acquire,
5716 bool tight_region_bounds);
5724 legion_mapper_runtime_t runtime, legion_mapper_context_t ctx,
5725 legion_memory_t target_memory, legion_layout_constraint_id_t layout_id,
5727 legion_physical_instance_t* result,
bool acquire,
5728 bool tight_region_bounds);
5736 legion_mapper_runtime_t runtime, legion_mapper_context_t ctx,
5737 legion_physical_instance_t instance);
5745 legion_mapper_runtime_t runtime, legion_mapper_context_t ctx,
5746 legion_physical_instance_t* instances,
size_t instances_size);
5750 legion_shard_id_t legion_context_get_shard_id(
5751 legion_runtime_t , legion_context_t ,
5754 size_t legion_context_get_num_shards(
5755 legion_runtime_t , legion_context_t ,
5761 legion_future_t legion_context_consensus_match(
5762 legion_runtime_t , legion_context_t ,
5763 const void* ,
void* ,
size_t ,
5770 legion_physical_region_t* regionptr,
int id,
int num_regions);
void legion_task_launcher_set_point(legion_task_launcher_t launcher, legion_domain_point_t point)
void legion_index_space_destroy_unordered(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t handle, bool unordered)
bool legion_index_partition_retrieve_semantic_information(legion_runtime_t runtime, legion_index_partition_t handle, legion_semantic_tag_t tag, const void **result, size_t *size, bool can_fail, bool wait_until_ready)
size_t legion_runtime_get_maximum_dimension(void)
void legion_inline_launcher_destroy(legion_inline_launcher_t handle)
legion_domain_point_coloring_t legion_domain_point_coloring_create(void)
legion_index_space_t legion_index_space_create_future(legion_runtime_t runtime, legion_context_t ctx, size_t dimensions, legion_future_t future, legion_type_tag_t type_tag)
const legion_predicate_t legion_predicate_false(void)
void legion_context_progress_unordered_operations(legion_runtime_t runtime, legion_context_t ctx)
legion_layout_constraint_id_t legion_layout_constraint_set_register(legion_runtime_t runtime, legion_field_space_t fspace, legion_layout_constraint_set_t handle, const char *layout_name)
legion_shard_id_t legion_sharding_functor_shard(legion_sharding_id_t sid, legion_domain_point_t point, legion_domain_t full_space, size_t total_shards)
void legion_runtime_replace_default_mapper(legion_runtime_t runtime, legion_mapper_t mapper, legion_processor_t proc)
legion_index_space_t legion_index_partition_create_index_space_difference(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t parent, legion_domain_point_t color, legion_index_space_t initial, const legion_index_space_t *spaces, size_t num_spaces)
void legion_index_fill_launcher_set_mapper_arg(legion_index_fill_launcher_t launcher, legion_untyped_buffer_t arg)
void legion_task_set_arglen(legion_task_mut_t task, size_t arglen)
void legion_field_id_attach_name(legion_runtime_t runtime, legion_field_space_t handle, legion_field_id_t id, const char *name, bool is_mutable)
legion_variant_id_t legion_runtime_preregister_task_variant_fnptr_with_registrar(legion_task_variant_registrar_t registrar, legion_task_pointer_wrapped_t wrapped_task_pointer, legion_variant_id_t variant_id, const char *task_name, const void *userdata, size_t userlen, size_t return_type_size, bool has_return_type_size)
unsigned legion_region_requirement_get_privilege_fields_size(legion_region_requirement_t handle)
void legion_processor_query_same_address_space_as_processor(legion_processor_query_t query, legion_processor_t proc)
void legion_task_layout_constraint_set_destroy(legion_task_layout_constraint_set_t handle)
legion_index_partition_t legion_index_partition_create_by_preimage_range(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t projection, legion_logical_region_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_index_space_t color_space, legion_partition_kind_t part_kind, legion_color_t color, legion_mapper_id_t id, legion_mapping_tag_id_t tag, legion_untyped_buffer_t map_arg)
legion_index_partition_t legion_index_partition_create_by_intersection(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_index_partition_t handle1, legion_index_partition_t handle2, legion_index_space_t color_space, legion_partition_kind_t part_kind, legion_color_t color)
const char * legion_task_get_name(legion_task_t task)
unsigned legion_index_copy_launcher_add_dst_region_requirement_logical_region_reduction(legion_index_copy_launcher_t launcher, legion_logical_region_t handle, legion_projection_id_t proj, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
int legion_runtime_start(int argc, char **argv, bool background)
legion_memory_t legion_memory_query_random(legion_memory_query_t query)
legion_index_fill_launcher_t legion_index_fill_launcher_create_with_domain(legion_domain_t domain, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, const void *value, size_t value_size, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
legion_index_fill_launcher_t legion_index_fill_launcher_create_from_future_with_domain(legion_domain_t domain, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_future_t future, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
void legion_runtime_fill_field(legion_runtime_t runtime, legion_context_t ctx, legion_logical_region_t handle, legion_logical_region_t parent, legion_field_id_t fid, const void *value, size_t value_size, legion_predicate_t pred)
void legion_task_variant_registrar_destroy(legion_task_variant_registrar_t registrar)
void legion_runtime_index_fill_field_future(legion_runtime_t runtime, legion_context_t ctx, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_future_t f, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
void legion_index_attach_launcher_attach_array_soa(legion_index_attach_launcher_t handle, legion_logical_region_t region, void *base_ptr, bool column_major, const legion_field_id_t *fields, size_t num_fields, legion_memory_t memory)
void legion_field_space_retrieve_name(legion_runtime_t runtime, legion_field_space_t handle, const char **result)
legion_index_space_t legion_index_partition_get_index_subspace(legion_runtime_t runtime, legion_index_partition_t handle, legion_color_t color)
void legion_processor_query_only_kind(legion_processor_query_t query, legion_processor_kind_t kind)
legion_future_map_t legion_index_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_index_launcher_t launcher)
legion_coloring_t legion_coloring_create(void)
void legion_must_epoch_launcher_add_single_task(legion_must_epoch_launcher_t launcher, legion_domain_point_t point, legion_task_launcher_t handle)
void legion_domain_point_coloring_color_domain(legion_domain_point_coloring_t handle, legion_domain_point_t color, legion_domain_t domain)
unsigned legion_index_copy_launcher_add_src_indirect_region_requirement_logical_partition(legion_index_copy_launcher_t launcher, legion_logical_partition_t handle, legion_projection_id_t proj, legion_field_id_t fid, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool is_range_indirection, bool verified)
void legion_acquire_launcher_destroy(legion_acquire_launcher_t handle)
void legion_index_partition_attach_semantic_information(legion_runtime_t runtime, legion_index_partition_t handle, legion_semantic_tag_t tag, const void *buffer, size_t size, bool is_mutable)
void legion_release_launcher_set_provenance(legion_release_launcher_t launcher, const char *provenance)
void legion_index_partition_destroy_unordered(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t handle, bool unordered, bool recurse)
legion_index_partition_t legion_index_partition_create_by_image_range(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t handle, legion_logical_partition_t projection, legion_logical_region_t parent, legion_field_id_t fid, legion_index_space_t color_space, legion_partition_kind_t part_kind, legion_color_t color, legion_mapper_id_t id, legion_mapping_tag_id_t tag, legion_untyped_buffer_t map_arg)
legion_inline_launcher_t legion_inline_launcher_create_logical_region(legion_logical_region_t handle, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t region_tag, bool verified, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
void legion_index_partition_destroy(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t handle)
void legion_runtime_yield(legion_runtime_t runtime, legion_context_t ctx)
void legion_index_launcher_add_field(legion_index_launcher_t launcher, unsigned idx, legion_field_id_t fid, bool inst)
legion_attach_launcher_t legion_attach_launcher_create(legion_logical_region_t logical_region, legion_logical_region_t parent_region, legion_external_resource_t resource)
legion_processor_t legion_processor_query_first(legion_processor_query_t query)
void legion_future_map_destroy(legion_future_map_t handle)
legion_index_space_t legion_index_partition_create_index_space_intersection_partition(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t parent, legion_domain_point_t color, legion_index_partition_t handle)
void legion_task_launcher_intersect_flags(legion_task_launcher_t launcher, unsigned idx, enum legion_region_flags_t flags)
legion_execution_constraint_set_t legion_execution_constraint_set_create(void)
legion_domain_point_t legion_logical_region_get_color_domain_point(legion_runtime_t runtime_, legion_logical_region_t handle_)
unsigned legion_index_copy_launcher_add_dst_region_requirement_logical_partition(legion_index_copy_launcher_t launcher, legion_logical_partition_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_field_id_t legion_field_allocator_allocate_local_field(legion_field_allocator_t allocator, size_t field_size, legion_field_id_t desired_fieldid)
bool legion_domain_contains(legion_domain_t d, legion_domain_point_t p)
void legion_index_attach_launcher_attach_file(legion_index_attach_launcher_t handle, legion_logical_region_t region, const char *filename, const legion_field_id_t *fields, size_t num_fields, legion_file_mode_t mode)
void legion_index_attach_launcher_set_deduplicate_across_shards(legion_index_attach_launcher_t handle, bool deduplicate)
legion_future_t legion_future_from_untyped_pointer(legion_runtime_t runtime, const void *buffer, size_t size)
legion_logical_partition_t legion_logical_partition_create_by_tree(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t handle, legion_field_space_t fspace, legion_region_tree_id_t tid)
void legion_runtime_set_top_level_task_id(legion_task_id_t top_id)
void legion_copy_launcher_set_mapper_arg(legion_copy_launcher_t launcher, legion_untyped_buffer_t arg)
legion_future_t legion_future_from_untyped_pointer_detailed(legion_runtime_t runtime, const void *buffer, size_t size, bool take_ownership, const char *provenance, bool shard_local)
void legion_index_fill_launcher_destroy(legion_index_fill_launcher_t handle)
#define DESTROY_ARRAY(DIM)
Definition c_bindings.h:4412
void legion_index_launcher_add_arrival_barrier(legion_index_launcher_t launcher, legion_phase_barrier_t bar)
void legion_acquire_launcher_add_arrival_barrier(legion_acquire_launcher_t launcher, legion_phase_barrier_t bar)
legion_field_id_t legion_region_requirement_get_privilege_field(legion_region_requirement_t handle, unsigned idx)
legion_phase_barrier_t legion_phase_barrier_alter_arrival_count(legion_runtime_t runtime, legion_context_t ctx, legion_phase_barrier_t handle, int delta)
legion_logical_partition_t legion_logical_region_get_parent_logical_partition(legion_runtime_t runtime, legion_logical_region_t handle)
const void * legion_future_get_metadata(legion_future_t handle, size_t *size)
legion_index_partition_t legion_index_partition_create_point_coloring(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_domain_t color_space, legion_point_coloring_t coloring, legion_partition_kind_t part_kind, legion_color_t color)
legion_index_space_t legion_index_space_create(legion_runtime_t runtime, legion_context_t ctx, size_t max_num_elmts)
unsigned legion_index_launcher_add_region_requirement_logical_partition_reduction(legion_index_launcher_t launcher, legion_logical_partition_t handle, legion_projection_id_t proj, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_output_requirement_add_field(legion_output_requirement_t handle, legion_field_id_t field, bool instance)
bool legion_index_space_has_parent_index_partition(legion_runtime_t runtime, legion_index_space_t handle)
legion_point_coloring_t legion_point_coloring_create(void)
void legion_output_requirement_destroy(legion_output_requirement_t handle)
size_t legion_physical_region_get_field_count(legion_physical_region_t handle)
void legion_discard_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_discard_launcher_t launcher)
void legion_index_copy_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_index_copy_launcher_t launcher)
legion_domain_t legion_index_space_get_domain(legion_runtime_t runtime, legion_index_space_t handle)
legion_field_space_t legion_field_space_no_space()
legion_index_partition_t legion_index_partition_create_coloring(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_coloring_t coloring, bool disjoint, legion_color_t part_color)
legion_processor_t legion_task_get_target_proc(legion_task_t task)
legion_handle_type_t legion_region_requirement_get_handle_type(legion_region_requirement_t handle)
void legion_logical_region_attach_name(legion_runtime_t runtime, legion_logical_region_t handle, const char *name, bool is_mutable)
bool legion_logger_want_print(legion_logger_t handle)
legion_unique_id_t legion_task_get_unique_id(legion_task_t task)
legion_index_partition_t legion_index_partition_create_by_domain(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_domain_point_t *colors, legion_domain_t *domains, size_t num_color_domains, legion_index_space_t color_space, bool perform_intersections, legion_partition_kind_t part_kind, legion_color_t color)
void legion_external_resources_destroy(legion_external_resources_t handle)
legion_physical_region_t legion_external_resources_get_region(legion_external_resources_t handle, unsigned index)
legion_coherence_property_t legion_region_requirement_get_prop(legion_region_requirement_t handle)
void legion_copy_launcher_destroy(legion_copy_launcher_t handle)
void legion_layout_constraint_set_add_specialized_constraint(legion_layout_constraint_set_t handle, legion_specialized_constraint_t specialized, legion_reduction_op_id_t redop)
void legion_region_requirement_get_instance_fields(legion_region_requirement_t handle, legion_field_id_t *fields, unsigned fields_size)
void legion_domain_point_iterator_destroy(legion_domain_point_iterator_t handle)
legion_logical_region_t legion_logical_partition_get_logical_subregion_by_tree(legion_runtime_t runtime, legion_index_space_t handle, legion_field_space_t fspace, legion_region_tree_id_t tid)
void legion_processor_query_has_affinity_to_memory(legion_processor_query_t query, legion_memory_t mem, unsigned min_bandwidth, unsigned max_latency)
void legion_layout_constraint_set_add_tiling_constraint(legion_layout_constraint_set_t handle, legion_dimension_kind_t dim, size_t value, bool tiles)
legion_discard_launcher_t legion_discard_launcher_create(legion_logical_region_t handle, legion_logical_region_t parent)
void legion_attach_launcher_set_restricted(legion_attach_launcher_t handle, bool restricted)
int legion_task_get_depth(legion_task_t task)
void legion_logger_destroy(legion_logger_t handle)
legion_projection_id_t legion_runtime_generate_library_projection_ids(legion_runtime_t runtime, const char *library_name, size_t count)
unsigned legion_index_launcher_add_region_requirement_logical_region_reduction(legion_index_launcher_t launcher, legion_logical_region_t handle, legion_projection_id_t proj, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_memory_query_has_affinity_to_processor(legion_memory_query_t query, legion_processor_t proc, unsigned min_bandwidth, unsigned max_latency)
bool legion_index_space_has_multiple_domains(legion_runtime_t runtime, legion_index_space_t handle)
legion_index_partition_t legion_index_partition_create_domain_coloring(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_domain_t color_space, legion_domain_coloring_t coloring, bool disjoint, legion_color_t part_color)
legion_acquire_launcher_t legion_acquire_launcher_create(legion_logical_region_t logical_region, legion_logical_region_t parent_region, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t tag)
legion_domain_t legion_task_get_index_domain(legion_task_t task)
bool legion_index_partition_is_disjoint(legion_runtime_t runtime, legion_index_partition_t handle)
void legion_memory_query_same_address_space_as_memory(legion_memory_query_t query, legion_memory_t mem)
void legion_task_launcher_set_enable_inlining(legion_task_launcher_t launcher, bool enable_inlining)
void legion_field_allocator_free_field(legion_field_allocator_t allocator, legion_field_id_t fid)
legion_fill_launcher_t legion_fill_launcher_create(legion_logical_region_t handle, legion_logical_region_t parent, legion_field_id_t fid, const void *value, size_t value_size, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t tag)
legion_argument_map_t legion_argument_map_from_future_map(legion_future_map_t map)
void legion_index_launcher_set_mapper_arg(legion_index_launcher_t launcher, legion_untyped_buffer_t map_arg)
legion_logical_region_t legion_physical_region_get_logical_region(legion_physical_region_t handle)
legion_region_requirement_t legion_region_requirement_create_logical_region(legion_logical_region_t handle, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_color_t legion_logical_region_get_color(legion_runtime_t runtime, legion_logical_region_t handle)
void legion_execution_constraint_set_add_launch_constraint_multi_dim(legion_execution_constraint_set_t handle, legion_launch_constraint_t kind, const size_t *values, int dims)
legion_output_requirement_t legion_output_requirement_create(legion_field_space_t field_space, legion_field_id_t *fields, size_t fields_size, int dim, bool global_indexing)
legion_domain_point_t legion_domain_point_nil(void)
void legion_domain_point_coloring_destroy(legion_domain_point_coloring_t handle)
bool legion_future_is_ready_subscribe(legion_future_t handle, bool subscribe)
legion_logical_region_t(* legion_projection_functor_logical_region_t)(legion_runtime_t, legion_logical_region_t, legion_domain_point_t, legion_domain_t)
Definition c_bindings.h:421
const void * legion_task_get_local_args(legion_task_t task)
void legion_runtime_print_once(legion_runtime_t runtime, legion_context_t ctx, FILE *f, const char *message)
bool legion_mapper_runtime_find_or_create_physical_instance_layout_constraint(legion_mapper_runtime_t runtime, legion_mapper_context_t ctx, legion_memory_t target_memory, legion_layout_constraint_set_t constraints, const legion_logical_region_t *regions, size_t regions_size, legion_physical_instance_t *result, bool *created, bool acquire, legion_garbage_collection_priority_t priority, bool tight_region_bounds)
legion_domain_point_t legion_domain_point_iterator_next(legion_domain_point_iterator_t handle)
void legion_field_id_attach_semantic_information(legion_runtime_t runtime, legion_field_space_t handle, legion_field_id_t id, legion_semantic_tag_t tag, const void *buffer, size_t size, bool is_mutable)
legion_index_partition_t legion_index_partition_create_by_union(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_index_partition_t handle1, legion_index_partition_t handle2, legion_index_space_t color_space, legion_partition_kind_t part_kind, legion_color_t color)
legion_index_partition_t legion_index_partition_create_by_weights(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_domain_point_t *colors, int *weights, size_t num_colors, legion_index_space_t color_space, size_t granularity, legion_color_t color)
unsigned legion_index_launcher_add_index_requirement(legion_index_launcher_t launcher, legion_index_space_t handle, legion_allocate_mode_t priv, legion_index_space_t parent, bool verified)
legion_logical_region_t legion_logical_region_create(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t index, legion_field_space_t fields, bool task_local)
unsigned legion_copy_launcher_add_dst_region_requirement_logical_region(legion_copy_launcher_t launcher, legion_logical_region_t handle, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_task_id_t legion_runtime_generate_library_task_ids(legion_runtime_t runtime, const char *library_name, size_t count)
legion_dynamic_collective_t legion_dynamic_collective_create(legion_runtime_t runtime, legion_context_t ctx, unsigned arrivals, legion_reduction_op_id_t redop, const void *init_value, size_t init_size)
void legion_index_launcher_set_initial_value(legion_index_launcher_t launcher, legion_future_t initial_value)
legion_physical_region_t legion_attach_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_attach_launcher_t launcher)
legion_index_partition_t legion_index_partition_create_multi_domain_point_coloring(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_domain_t color_space, legion_multi_domain_point_coloring_t coloring, legion_partition_kind_t part_kind, legion_color_t color)
#define ITERATOR_DESTROY(DIM)
Definition c_bindings.h:666
bool legion_logical_region_has_parent_logical_partition(legion_runtime_t runtime, legion_logical_region_t handle)
legion_index_partition_t legion_index_partition_create_by_intersection_mirror(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_index_partition_t handle, legion_partition_kind_t part_kind, legion_color_t color, bool dominates)
void legion_memory_query_best_affinity_to_memory(legion_memory_query_t query, legion_memory_t mem, int bandwidth_weight, int latency_weight)
void legion_machine_get_all_memories(legion_machine_t machine, legion_memory_t *memories, size_t memories_size)
legion_future_t legion_future_map_reduce_with_initial_value(legion_runtime_t runtime, legion_context_t ctx, legion_future_map_t handle, legion_reduction_op_id_t redop, bool deterministic, legion_mapper_id_t map_id, legion_mapping_tag_id_t tag, const char *provenance, legion_future_t initial_value)
void legion_discard_launcher_add_field(legion_discard_launcher_t handle, legion_field_id_t fid)
void legion_release_launcher_add_wait_barrier(legion_release_launcher_t launcher, legion_phase_barrier_t bar)
void legion_dynamic_collective_defer_arrival(legion_runtime_t runtime, legion_context_t ctx, legion_dynamic_collective_t handle, legion_future_t f, unsigned count)
legion_logical_region_t legion_logical_partition_get_logical_subregion_by_color(legion_runtime_t runtime, legion_logical_partition_t parent, legion_color_t c)
void legion_task_variant_registrar_set_leaf_memory_pool_bounds(legion_task_variant_registrar_t registrar, legion_memory_kind_t kind, size_t size, unsigned alignment)
void legion_runtime_preregister_projection_functor_args(legion_projection_id_t id, bool exclusive, unsigned depth, legion_projection_functor_logical_region_args_t region_functor, legion_projection_functor_logical_partition_args_t partition_functor)
void legion_runtime_remap_region(legion_runtime_t runtime, legion_context_t ctx, legion_physical_region_t region)
bool legion_physical_region_is_mapped(legion_physical_region_t handle)
size_t legion_domain_get_volume(legion_domain_t d)
void legion_index_space_create_shared_ownership(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t handle)
legion_sharding_id_t legion_runtime_generate_library_sharding_ids(legion_runtime_t runtime, const char *library_name, size_t count)
void legion_field_space_attach_semantic_information(legion_runtime_t runtime, legion_field_space_t handle, legion_semantic_tag_t tag, const void *buffer, size_t size, bool is_mutable)
void legion_must_epoch_launcher_set_provenance(legion_must_epoch_launcher_t launcher, const char *provenance)
void legion_layout_constraint_set_add_memory_constraint(legion_layout_constraint_set_t handle, legion_memory_kind_t kind)
void legion_domain_coloring_color_domain(legion_domain_coloring_t handle, legion_color_t color, legion_domain_t domain)
legion_task_id_t legion_runtime_preregister_task_variant_fnptr(legion_task_id_t id, legion_variant_id_t variant_id, const char *task_name, const char *variant_name, legion_execution_constraint_set_t execution_constraints, legion_task_layout_constraint_set_t layout_constraints, legion_task_config_options_t options, legion_task_pointer_wrapped_t wrapped_task_pointer, const void *userdata, size_t userlen)
#define GET_POINT(DIM)
Definition c_bindings.h:588
void legion_fill_launcher_set_point(legion_fill_launcher_t launcher, legion_domain_point_t point)
void legion_fill_launcher_set_provenance(legion_fill_launcher_t launcher, const char *provenance)
void legion_index_launcher_set_concurrent(legion_index_launcher_t launcher, bool concurrent)
bool legion_logger_want_spew(legion_logger_t handle)
legion_future_t legion_dynamic_collective_get_result(legion_runtime_t runtime, legion_context_t ctx, legion_dynamic_collective_t handle)
void legion_index_launcher_set_mapping_tag(legion_index_launcher_t launcher, legion_mapping_tag_id_t tag)
bool legion_index_partition_has_index_subspace_domain_point(legion_runtime_t runtime, legion_index_partition_t handle, legion_domain_point_t color)
void legion_runtime_register_projection_functor(legion_runtime_t runtime, legion_projection_id_t id, bool exclusive, unsigned depth, legion_projection_functor_logical_region_args_t region_functor, legion_projection_functor_logical_partition_args_t partition_functor)
void legion_index_fill_launcher_set_sharding_space(legion_index_fill_launcher_t launcher, legion_index_space_t space)
legion_task_launcher_t legion_task_launcher_create_from_buffer(legion_task_id_t tid, const void *buffer, size_t buffer_size, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t tag)
void legion_task_launcher_set_region_requirement_logical_region(legion_task_launcher_t launcher, unsigned idx, legion_logical_region_t handle, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_dynamic_collective_t legion_dynamic_collective_alter_arrival_count(legion_runtime_t runtime, legion_context_t ctx, legion_dynamic_collective_t handle, int delta)
void legion_point_coloring_add_range(legion_point_coloring_t handle, legion_domain_point_t color, legion_ptr_t start, legion_ptr_t end)
legion_copy_launcher_t legion_copy_launcher_create(legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
void legion_machine_destroy(legion_machine_t handle)
void legion_runtime_index_fill_field_future_with_space(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t space, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_future_t f, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
legion_future_t legion_runtime_issue_execution_fence(legion_runtime_t runtime, legion_context_t ctx)
legion_index_partition_t legion_index_partition_create_equal(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_index_space_t color_space, size_t granularity, legion_color_t color)
legion_index_space_t legion_index_space_subtraction(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t left, legion_index_space_t right)
legion_index_space_t legion_index_partition_create_index_space_intersection_spaces(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t parent, legion_domain_point_t color, const legion_index_space_t *spaces, size_t num_spaces)
legion_domain_t legion_domain_from_index_space(legion_runtime_t runtime, legion_index_space_t is)
void legion_index_copy_launcher_add_src_field(legion_index_copy_launcher_t launcher, unsigned idx, legion_field_id_t fid, bool inst)
void legion_runtime_preregister_projection_functor_mappable(legion_projection_id_t id, bool exclusive, unsigned depth, legion_projection_functor_logical_region_mappable_t region_functor, legion_projection_functor_logical_partition_mappable_t partition_functor)
bool legion_task_get_is_index_space(legion_task_t task)
legion_domain_t legion_domain_coloring_get_color_space(legion_domain_coloring_t handle)
enum legion_mappable_type_id_t legion_mappable_get_type(legion_mappable_t mappable)
void legion_index_launcher_set_region_requirement_logical_partition(legion_index_launcher_t launcher, unsigned idx, legion_logical_partition_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
unsigned long long legion_get_current_time_in_micros(void)
legion_index_partition_t legion_index_partition_create_by_image(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t handle, legion_logical_partition_t projection, legion_logical_region_t parent, legion_field_id_t fid, legion_index_space_t color_space, legion_partition_kind_t part_kind, legion_color_t color, legion_mapper_id_t id, legion_mapping_tag_id_t tag, legion_untyped_buffer_t map_arg)
legion_task_variant_registrar_t legion_task_variant_registrar_create(legion_task_id_t tid, bool global, const char *variant_name)
void legion_logger_fatal(legion_logger_t handle, const char *msg)
void legion_copy_launcher_set_provenance(legion_copy_launcher_t launcher, const char *provenance)
void legion_index_attach_launcher_set_restricted(legion_index_attach_launcher_t handle, bool restricted)
void legion_region_requirement_add_flags(legion_region_requirement_t handle, legion_region_flags_t flags)
void legion_task_add_future(legion_task_mut_t task, legion_future_t future)
legion_mapping_tag_id_t legion_region_requirement_get_tag(legion_region_requirement_t handle)
void legion_slice_task_output_verify_correctness_set(legion_slice_task_output_t output, bool verify_correctness)
legion_future_map_t legion_future_map_copy(legion_future_map_t handle)
int legion_runtime_wait_for_shutdown(void)
void legion_layout_constraint_set_destroy(legion_layout_constraint_set_t handle)
void legion_index_attach_launcher_set_provenance(legion_index_attach_launcher_t handle, const char *provenance)
legion_future_map_t legion_future_map_transform(legion_runtime_t runtime, legion_context_t ctx, legion_future_map_t fm, legion_index_space_t new_domain, legion_point_transform_functor_t functor, bool take_ownership)
legion_external_resources_t legion_attach_external_resources(legion_runtime_t runtime, legion_context_t ctx, legion_index_attach_launcher_t launcher)
void legion_task_preamble(const void *data, size_t datalen, realm_id_t proc_id, legion_task_t *taskptr, const legion_physical_region_t **regionptr, unsigned *num_regions_ptr, legion_context_t *ctxptr, legion_runtime_t *runtimeptr)
void legion_index_launcher_add_point_future(legion_index_launcher_t launcher, legion_argument_map_t map)
#define ITERATOR_STEP(DIM)
Definition c_bindings.h:684
void legion_map_task_output_chosen_instances_clear_all(legion_map_task_output_t output)
legion_region_requirement_t legion_task_get_requirement(legion_task_t task, unsigned idx)
unsigned legion_index_launcher_add_region_requirement_logical_partition(legion_index_launcher_t launcher, legion_logical_partition_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_map_task_output_chosen_instances_add(legion_map_task_output_t output, legion_physical_instance_t *instances, size_t instances_size)
legion_predicate_t legion_predicate_create(legion_runtime_t runtime, legion_context_t ctx, legion_future_t f)
void legion_task_id_attach_semantic_information(legion_runtime_t runtime, legion_task_id_t task_id, legion_semantic_tag_t tag, const void *buffer, size_t size, bool is_mutable)
void legion_context_destroy(legion_context_t)
void legion_memory_query_has_affinity_to_memory(legion_memory_query_t query, legion_memory_t mem, unsigned min_bandwidth, unsigned max_latency)
void legion_map_task_output_target_procs_add(legion_map_task_output_t output, legion_processor_t proc)
void legion_task_id_retrieve_name(legion_runtime_t runtime, legion_task_id_t task_id, const char **result)
void legion_copy_launcher_add_dst_field(legion_copy_launcher_t launcher, unsigned idx, legion_field_id_t fid, bool inst)
void legion_runtime_index_fill_field_with_domain(legion_runtime_t runtime, legion_context_t ctx, legion_domain_t domain, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, const void *value, size_t value_size, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
legion_phase_barrier_t legion_phase_barrier_advance(legion_runtime_t runtime, legion_context_t ctx, legion_phase_barrier_t handle)
void legion_logger_debug(legion_logger_t handle, const char *msg)
legion_address_space_t legion_processor_address_space(legion_processor_t proc)
legion_task_t legion_task_mut_as_task(legion_task_mut_t task)
legion_future_t legion_runtime_issue_mapping_fence(legion_runtime_t runtime, legion_context_t ctx)
legion_output_requirement_t legion_output_requirement_create_region_requirement(legion_region_requirement_t handle)
void legion_fill_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_fill_launcher_t launcher)
legion_logical_region_t(* legion_projection_functor_logical_partition_args_t)(legion_runtime_t, legion_logical_partition_t, legion_domain_point_t, legion_domain_t, const void *, size_t)
Definition c_bindings.h:450
legion_logical_region_t legion_logical_partition_get_logical_subregion_by_color_domain_point(legion_runtime_t runtime, legion_logical_partition_t parent, legion_domain_point_t c)
void legion_index_partition_retrieve_name(legion_runtime_t runtime, legion_index_partition_t handle, const char **result)
legion_processor_t legion_map_task_output_target_procs_get(legion_map_task_output_t output, size_t idx)
void legion_region_requirement_get_privilege_fields(legion_region_requirement_t handle, legion_field_id_t *fields, unsigned fields_size)
bool legion_coloring_has_point(legion_coloring_t handle, legion_color_t color, legion_ptr_t point)
void legion_attach_launcher_add_cpu_soa_field(legion_attach_launcher_t launcher, legion_field_id_t fid, void *base_ptr, bool column_major)
void legion_index_copy_launcher_add_wait_barrier(legion_index_copy_launcher_t launcher, legion_phase_barrier_t bar)
legion_fill_t legion_mappable_as_fill(legion_mappable_t mappable)
void legion_index_copy_launcher_set_sharding_space(legion_index_copy_launcher_t launcher, legion_index_space_t is)
void legion_task_variant_registrar_set_layout_constraints(legion_task_variant_registrar_t registrar, legion_task_layout_constraint_set_t constraints)
realm_task_pointer_t legion_task_pointer_wrapped_t
Definition c_bindings.h:415
legion_field_space_t legion_field_space_create_with_futures(legion_runtime_t runtime, legion_context_t ctx, legion_future_t *field_sizes, legion_field_id_t *field_ids, size_t num_fields, legion_custom_serdez_id_t serdez)
void legion_attach_launcher_set_provenance(legion_attach_launcher_t handle, const char *provenance)
unsigned legion_task_launcher_add_index_requirement(legion_task_launcher_t launcher, legion_index_space_t handle, legion_allocate_mode_t priv, legion_index_space_t parent, bool verified)
void legion_fill_launcher_destroy(legion_fill_launcher_t handle)
void legion_logical_region_destroy_unordered(legion_runtime_t runtime, legion_context_t ctx, legion_logical_region_t handle, bool unordered)
bool legion_future_is_empty(legion_future_t handle, bool block)
void legion_sharding_functor_invert(legion_sharding_id_t sid, legion_shard_id_t shard, legion_domain_t shard_domain, legion_domain_t full_domain, size_t total_shards, legion_domain_point_t *points, size_t *points_size)
void legion_runtime_add_registration_callback(legion_registration_callback_pointer_t callback)
void legion_argument_map_destroy(legion_argument_map_t handle)
unsigned legion_index_copy_launcher_add_dst_indirect_region_requirement_logical_region(legion_index_copy_launcher_t launcher, legion_logical_region_t handle, legion_projection_id_t proj, legion_field_id_t fid, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool is_range_indirection, bool verified)
void legion_index_attach_launcher_destroy(legion_index_attach_launcher_t handle)
void legion_runtime_index_fill_field_future_with_domain(legion_runtime_t runtime, legion_context_t ctx, legion_domain_t domain, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_future_t f, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
legion_ptr_t legion_ptr_nil(void)
void legion_index_copy_launcher_add_dst_field(legion_index_copy_launcher_t launcher, unsigned idx, legion_field_id_t fid, bool inst)
size_t legion_task_get_arglen(legion_task_t task)
legion_processor_query_t legion_processor_query_create(legion_machine_t machine)
legion_future_map_t legion_must_epoch_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_must_epoch_launcher_t launcher)
legion_layout_constraint_id_t legion_layout_constraint_set_preregister(legion_layout_constraint_set_t handle, const char *layout_name)
legion_variant_id_t legion_runtime_register_task_variant_fnptr_with_registrar(legion_runtime_t runtime, legion_task_variant_registrar_t registrar, legion_task_pointer_wrapped_t wrapped_task_pointer, legion_variant_id_t variant_id, const void *userdata, size_t userlen, size_t return_type_size, bool has_return_type_size)
size_t legion_future_get_untyped_size(legion_future_t handle)
void legion_must_epoch_launcher_add_index_task(legion_must_epoch_launcher_t launcher, legion_index_launcher_t handle)
void legion_index_launcher_intersect_flags(legion_index_launcher_t launcher, unsigned idx, enum legion_region_flags_t flags)
void legion_task_launcher_set_mapper(legion_task_launcher_t launcher, legion_mapper_id_t mapper_id)
legion_memory_query_t legion_memory_query_create(legion_machine_t machine)
bool legion_logger_want_info(legion_logger_t handle)
void legion_logical_region_destroy(legion_runtime_t runtime, legion_context_t ctx, legion_logical_region_t handle)
void legion_logical_partition_attach_semantic_information(legion_runtime_t runtime, legion_logical_partition_t handle, legion_semantic_tag_t tag, const void *buffer, size_t size, bool is_mutable)
unsigned legion_task_get_futures_size(legion_task_t task)
bool legion_field_space_has_fields(legion_runtime_t runtime, legion_context_t ctx, legion_field_space_t handle, const legion_field_id_t *fields, size_t fields_size)
void legion_slice_task_output_slices_add(legion_slice_task_output_t output, legion_task_slice_t slice)
unsigned legion_copy_launcher_add_dst_region_requirement_logical_region_reduction(legion_copy_launcher_t launcher, legion_logical_region_t handle, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_index_launcher_set_region_requirement_logical_region(legion_index_launcher_t launcher, unsigned idx, legion_logical_region_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_execution_constraint_set_add_resource_constraint(legion_execution_constraint_set_t handle, legion_resource_constraint_t resource, legion_equality_kind_t eq, size_t value)
void legion_machine_get_all_processors(legion_machine_t machine, legion_processor_t *processors, size_t processors_size)
legion_future_map_t legion_index_launcher_execute_outputs(legion_runtime_t runtime, legion_context_t ctx, legion_index_launcher_t launcher, legion_output_requirement_t *reqs, size_t reqs_size)
void legion_phase_barrier_wait(legion_runtime_t runtime, legion_context_t ctx, legion_phase_barrier_t handle)
#define BUFFER_CREATE(DIM)
Definition c_bindings.h:2475
void legion_runtime_end_trace(legion_runtime_t runtime, legion_context_t ctx, legion_trace_id_t tid)
legion_ptr_t legion_ptr_safe_cast(legion_runtime_t runtime, legion_context_t ctx, legion_ptr_t pointer, legion_logical_region_t region)
void legion_runtime_unmap_all_regions(legion_runtime_t runtime, legion_context_t ctx)
legion_phase_barrier_t legion_phase_barrier_create(legion_runtime_t runtime, legion_context_t ctx, unsigned arrivals)
legion_future_map_t legion_future_map_construct_from_buffers(legion_runtime_t runtime, legion_context_t ctx, legion_domain_t domain, legion_domain_point_t *points, legion_untyped_buffer_t *buffers, size_t num_points, bool collective, legion_sharding_id_t sid, bool implicit_sharding)
legion_future_t legion_task_launcher_execute_outputs(legion_runtime_t runtime, legion_context_t ctx, legion_task_launcher_t launcher, legion_output_requirement_t *reqs, size_t reqs_size)
bool legion_mapper_runtime_create_physical_instance_layout_constraint(legion_mapper_runtime_t runtime, legion_mapper_context_t ctx, legion_memory_t target_memory, legion_layout_constraint_set_t constraints, const legion_logical_region_t *regions, size_t regions_size, legion_physical_instance_t *result, bool acquire, legion_garbage_collection_priority_t priority)
legion_future_t legion_flush_detach_external_resource(legion_runtime_t runtime, legion_context_t ctx, legion_physical_region_t handle, bool flush)
legion_index_launcher_t legion_index_launcher_create_from_buffer(legion_task_id_t tid, legion_domain_t domain, const void *buffer, size_t buffer_size, legion_argument_map_t map, legion_predicate_t pred, bool must, legion_mapper_id_t id, legion_mapping_tag_id_t tag)
void legion_memory_query_destroy(legion_memory_query_t handle)
void legion_release_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_release_launcher_t launcher)
legion_logical_region_t(* legion_projection_functor_logical_region_args_t)(legion_runtime_t, legion_logical_region_t, legion_domain_point_t, legion_domain_t, const void *, size_t)
Definition c_bindings.h:440
void legion_logger_spew(legion_logger_t handle, const char *msg)
void legion_runtime_detach_hdf5(legion_runtime_t runtime, legion_context_t ctx, legion_physical_region_t region)
legion_field_allocator_t legion_field_allocator_create(legion_runtime_t runtime, legion_context_t ctx, legion_field_space_t handle)
legion_future_t legion_detach_external_resource(legion_runtime_t runtime, legion_context_t ctx, legion_physical_region_t handle)
void legion_dynamic_collective_arrive(legion_runtime_t runtime, legion_context_t ctx, legion_dynamic_collective_t handle, const void *buffer, size_t size, unsigned count)
legion_task_mut_t legion_task_create_empty()
void legion_index_attach_launcher_attach_hdf5(legion_index_attach_launcher_t handle, legion_logical_region_t region, const char *filename, legion_field_map_t field_map, legion_file_mode_t mode)
void legion_fill_launcher_add_field(legion_fill_launcher_t handle, legion_field_id_t fid)
legion_index_space_t legion_index_partition_create_index_space_union_spaces(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t parent, legion_domain_point_t color, const legion_index_space_t *spaces, size_t num_spaces)
void legion_release_launcher_add_field(legion_release_launcher_t launcher, legion_field_id_t fid)
void legion_index_fill_launcher_add_field(legion_fill_launcher_t handle, legion_field_id_t fid)
const legion_input_args_t legion_runtime_get_input_args(void)
legion_domain_t legion_future_map_get_domain(legion_future_map_t handle)
void legion_index_copy_launcher_destroy(legion_index_copy_launcher_t handle)
legion_task_id_t legion_runtime_register_task_variant_fnptr(legion_runtime_t runtime, legion_task_id_t id, const char *task_name, const char *variant_name, bool global, legion_execution_constraint_set_t execution_constraints, legion_task_layout_constraint_set_t layout_constraints, legion_task_config_options_t options, legion_task_pointer_wrapped_t wrapped_task_pointer, const void *userdata, size_t userlen)
legion_must_epoch_launcher_t legion_must_epoch_launcher_create(legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
void legion_index_launcher_set_global_arg(legion_index_launcher_t launcher, legion_untyped_buffer_t global_arg)
void legion_index_launcher_destroy(legion_index_launcher_t handle)
void legion_index_copy_launcher_set_possible_dst_indirect_out_of_range(legion_index_copy_launcher_t launcher, bool flag)
size_t legion_external_resources_size(legion_external_resources_t handle)
bool legion_ptr_is_null(legion_ptr_t ptr)
void legion_runtime_begin_trace(legion_runtime_t runtime, legion_context_t ctx, legion_trace_id_t tid, bool logical_only)
void legion_release_launcher_destroy(legion_release_launcher_t handle)
void legion_layout_constraint_set_add_field_constraint(legion_layout_constraint_set_t handle, const legion_field_id_t *fields, size_t num_fields, bool contiguous, bool inorder)
int legion_index_space_get_dim(legion_index_space_t handle)
void legion_future_get_void_result(legion_future_t handle)
void legion_logical_partition_destroy(legion_runtime_t runtime, legion_context_t ctx, legion_logical_partition_t handle)
void legion_index_copy_launcher_set_provenance(legion_index_copy_launcher_t launcher, const char *provenance)
void legion_memory_query_same_address_space_as_processor(legion_memory_query_t query, legion_processor_t proc)
unsigned legion_copy_launcher_add_src_indirect_region_requirement_logical_region(legion_copy_launcher_t launcher, legion_logical_region_t handle, legion_field_id_t fid, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool is_range_indirection, bool verified)
void legion_coloring_delete_point(legion_coloring_t handle, legion_color_t color, legion_ptr_t point)
void legion_field_space_create_shared_ownership(legion_runtime_t runtime, legion_context_t ctx, legion_field_space_t handle)
void legion_execution_constraint_set_add_processor_constraint(legion_execution_constraint_set_t handle, legion_processor_kind_t proc_kind)
void legion_acquire_launcher_set_mapper_arg(legion_acquire_launcher_t launcher, legion_untyped_buffer_t arg)
void legion_inline_launcher_set_mapper_arg(legion_inline_launcher_t launcher, legion_untyped_buffer_t arg)
legion_memory_t legion_memory_query_next(legion_memory_query_t query, legion_memory_t after)
#define ITERATOR_CREATE(DIM)
Definition c_bindings.h:655
void legion_task_postamble(legion_runtime_t runtime, legion_context_t ctx, const void *retval, size_t retsize)
legion_future_t legion_future_copy(legion_future_t handle)
void legion_processor_query_local_address_space(legion_processor_query_t query)
bool legion_field_space_retrieve_semantic_information(legion_runtime_t runtime, legion_field_space_t handle, legion_semantic_tag_t tag, const void **result, size_t *size, bool can_fail, bool wait_until_ready)
legion_field_id_t legion_field_allocator_allocate_field(legion_field_allocator_t allocator, size_t field_size, legion_field_id_t desired_fieldid)
#define GET_RECT(DIM)
Definition c_bindings.h:524
const void * legion_task_get_args(legion_task_t task)
size_t legion_memory_query_count(legion_memory_query_t query)
legion_layout_constraint_set_t legion_layout_constraint_set_create(void)
legion_domain_coloring_t legion_domain_coloring_create(void)
legion_index_space_t legion_index_space_intersection(legion_runtime_t runtime, legion_context_t ctx, const legion_index_space_t *spaces, size_t num_spaces)
legion_index_fill_launcher_t legion_index_fill_launcher_create_with_space(legion_index_space_t space, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, const void *value, size_t value_size, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
void legion_attach_launcher_set_mapped(legion_attach_launcher_t handle, bool mapped)
void legion_layout_constraint_set_add_dimension_constraint(legion_layout_constraint_set_t handle, legion_dimension_kind_t dim, legion_equality_kind_t eq, size_t value)
void legion_acquire_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_acquire_launcher_t launcher)
void legion_logical_partition_destroy_unordered(legion_runtime_t runtime, legion_context_t ctx, legion_logical_partition_t handle, bool unordered)
void legion_region_requirement_add_field(legion_region_requirement_t handle, legion_field_id_t field, bool instance_field)
legion_field_id_t legion_auto_generate_id(void)
legion_region_requirement_t legion_inline_get_requirement(legion_inline_t inline_operation)
void legion_index_launcher_set_provenance(legion_index_launcher_t launcher, const char *provenance)
legion_field_id_t * legion_field_space_get_fields(legion_runtime_t runtime, legion_context_t ctx, legion_field_space_t handle, size_t *size)
void legion_index_copy_launcher_add_arrival_barrier(legion_index_copy_launcher_t launcher, legion_phase_barrier_t bar)
legion_mapper_id_t legion_task_get_mapper(legion_task_t task)
void legion_index_partition_attach_name(legion_runtime_t runtime, legion_index_partition_t handle, const char *name, bool is_mutable)
void legion_domain_coloring_destroy(legion_domain_coloring_t handle)
#define ITERATOR_OP(DIM)
Definition c_bindings.h:693
unsigned legion_task_launcher_add_region_requirement_logical_region_reduction(legion_task_launcher_t launcher, legion_logical_region_t handle, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_fill_launcher_set_sharding_space(legion_fill_launcher_t launcher, legion_index_space_t space)
void legion_task_launcher_set_provenance(legion_task_launcher_t launcher, const char *provenance)
unsigned legion_region_requirement_get_instance_fields_size(legion_region_requirement_t handle)
legion_mapper_id_t legion_runtime_generate_library_mapper_ids(legion_runtime_t runtime, const char *library_name, size_t count)
void legion_field_space_destroy(legion_runtime_t runtime, legion_context_t ctx, legion_field_space_t handle)
void legion_layout_constraint_set_add_pointer_constraint(legion_layout_constraint_set_t handle, legion_memory_t memory, uintptr_t ptr)
size_t legion_field_id_get_size(legion_runtime_t runtime, legion_context_t ctx, legion_field_space_t handle, legion_field_id_t id)
void legion_index_launcher_add_future(legion_index_launcher_t launcher, legion_future_t future)
legion_region_requirement_t legion_copy_get_requirement(legion_copy_t copy, unsigned idx)
void legion_future_wait(legion_future_t handle, bool silence_warnings, const char *warning_string)
legion_future_t legion_detach_external_resources(legion_runtime_t runtime, legion_context_t ctx, legion_external_resources_t, bool flush, bool unordered)
void legion_logical_region_attach_semantic_information(legion_runtime_t runtime, legion_logical_region_t handle, legion_semantic_tag_t tag, const void *buffer, size_t size, bool is_mutable)
legion_index_space_t legion_logical_region_get_index_space(legion_logical_region_t handle)
legion_copy_t legion_mappable_as_copy(legion_mappable_t mappable)
void legion_field_space_destroy_unordered(legion_runtime_t runtime, legion_context_t ctx, legion_field_space_t handle, bool unordered)
legion_fill_launcher_t legion_fill_launcher_create_from_future(legion_logical_region_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_future_t f, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t tag)
legion_logical_partition_t legion_region_requirement_get_partition(legion_region_requirement_t handle)
unsigned legion_task_launcher_add_region_requirement_logical_region(legion_task_launcher_t launcher, legion_logical_region_t handle, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_runtime_index_fill_field_with_space(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t space, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, const void *value, size_t value_size, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
size_t legion_runtime_total_shards(legion_runtime_t runtime, legion_context_t ctx)
legion_projection_id_t legion_region_requirement_get_projection(legion_region_requirement_t handle)
bool legion_mapper_runtime_create_physical_instance_layout_constraint_id(legion_mapper_runtime_t runtime, legion_mapper_context_t ctx, legion_memory_t target_memory, legion_layout_constraint_id_t layout_id, const legion_logical_region_t *regions, size_t regions_size, legion_physical_instance_t *result, bool acquire, legion_garbage_collection_priority_t priority)
legion_index_space_t legion_index_space_create_domain(legion_runtime_t runtime, legion_context_t ctx, legion_domain_t domain)
void legion_task_layout_constraint_set_add_layout_constraint(legion_task_layout_constraint_set_t handle, unsigned idx, legion_layout_constraint_id_t layout)
legion_field_id_t legion_region_requirement_get_instance_field(legion_region_requirement_t handle, unsigned idx)
bool legion_logical_partition_has_logical_subregion_by_color_domain_point(legion_runtime_t runtime, legion_logical_partition_t parent, legion_domain_point_t c)
void legion_logger_warning(legion_logger_t handle, const char *msg)
void legion_copy_launcher_set_possible_src_indirect_out_of_range(legion_copy_launcher_t launcher, bool flag)
legion_index_partition_t legion_index_partition_create_domain_point_coloring(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_domain_t color_space, legion_domain_point_coloring_t coloring, legion_partition_kind_t part_kind, legion_color_t color)
legion_processor_t legion_processor_query_random(legion_processor_query_t query)
void legion_task_launcher_set_predicate_false_future(legion_task_launcher_t launcher, legion_future_t f)
legion_future_t legion_future_map_get_future(legion_future_map_t handle, legion_domain_point_t point)
#define ITERATOR_VALID(DIM)
Definition c_bindings.h:675
legion_domain_point_t legion_task_get_index_point(legion_task_t task)
void legion_task_launcher_add_wait_barrier(legion_task_launcher_t launcher, legion_phase_barrier_t bar)
void legion_task_launcher_set_argument(legion_task_launcher_t launcher, legion_untyped_buffer_t arg)
void legion_layout_constraint_set_add_offset_constraint(legion_layout_constraint_set_t handle, legion_field_id_t field, size_t offset)
legion_logical_region_t legion_region_requirement_get_parent(legion_region_requirement_t handle)
legion_field_id_t legion_field_allocator_allocate_field_future(legion_field_allocator_t allocator, legion_future_t field_size, legion_field_id_t desired_fieldid)
unsigned legion_index_copy_launcher_add_dst_region_requirement_logical_partition_reduction(legion_index_copy_launcher_t launcher, legion_logical_partition_t handle, legion_projection_id_t proj, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_copy_launcher_add_src_field(legion_copy_launcher_t launcher, unsigned idx, legion_field_id_t fid, bool inst)
legion_logger_t legion_logger_create(const char *name)
unsigned legion_index_copy_launcher_add_src_region_requirement_logical_partition(legion_index_copy_launcher_t launcher, legion_logical_partition_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_index_space_t legion_index_partition_get_color_space(legion_runtime_t runtime, legion_index_partition_t handle)
legion_machine_t legion_machine_create(void)
void legion_task_launcher_set_mapping_tag(legion_task_launcher_t launcher, legion_mapping_tag_id_t tag)
legion_task_id_t legion_task_get_task_id(legion_task_t task)
legion_task_t legion_mappable_as_task(legion_mappable_t mappable)
void legion_index_launcher_set_mapper(legion_index_launcher_t launcher, legion_mapper_id_t mapper_id)
legion_logical_region_t(* legion_projection_functor_logical_partition_t)(legion_runtime_t, legion_logical_partition_t, legion_domain_point_t, legion_domain_t)
Definition c_bindings.h:430
legion_memory_kind_t legion_memory_kind(legion_memory_t mem)
legion_field_map_t legion_field_map_create(void)
size_t legion_machine_get_all_memories_size(legion_machine_t machine)
void legion_acquire_launcher_add_field(legion_acquire_launcher_t launcher, legion_field_id_t fid)
void legion_map_task_output_chosen_instances_set(legion_map_task_output_t output, size_t idx, legion_physical_instance_t *instances, size_t instances_size)
legion_region_requirement_t legion_region_requirement_create_logical_partition(legion_logical_partition_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_index_space_t legion_index_partition_create_index_space_union_partition(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t parent, legion_domain_point_t color, legion_index_partition_t handle)
void legion_index_launcher_set_region_requirement_logical_partition_reduction(legion_index_launcher_t launcher, unsigned idx, legion_logical_partition_t handle, legion_projection_id_t proj, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_region_requirement_t legion_fill_get_requirement(legion_fill_t fill)
void legion_must_epoch_launcher_set_launch_domain(legion_must_epoch_launcher_t launcher, legion_domain_t domain)
legion_index_partition_t legion_index_partition_create_by_restriction(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_index_space_t color_space, legion_domain_transform_t transform, legion_domain_t extent, legion_partition_kind_t part_kind, legion_color_t color)
#define FROM_RECT(DIM)
Definition c_bindings.h:510
void legion_task_launcher_add_future(legion_task_launcher_t launcher, legion_future_t future)
bool legion_logger_want_error(legion_logger_t handle)
void legion_field_id_retrieve_name(legion_runtime_t runtime, legion_field_space_t handle, legion_field_id_t id, const char **result)
void legion_copy_launcher_set_point(legion_copy_launcher_t launcher, legion_domain_point_t point)
void legion_copy_launcher_add_arrival_barrier(legion_copy_launcher_t launcher, legion_phase_barrier_t bar)
legion_address_space_t legion_memory_address_space(legion_memory_t mem)
void legion_inline_launcher_set_provenance(legion_inline_launcher_t launcher, const char *provenance)
void legion_index_space_attach_name(legion_runtime_t runtime, legion_index_space_t handle, const char *name, bool is_mutable)
void legion_task_variant_registrar_set_execution_constraints(legion_task_variant_registrar_t registrar, legion_execution_constraint_set_t constraints)
legion_privilege_mode_t legion_region_requirement_get_privilege(legion_region_requirement_t handle)
void legion_logger_info(legion_logger_t handle, const char *msg)
void legion_task_set_args(legion_task_mut_t task, void *args)
void legion_memory_query_only_kind(legion_memory_query_t query, legion_memory_kind_t kind)
void legion_processor_query_same_address_space_as_memory(legion_processor_query_t query, legion_memory_t mem)
void legion_runtime_initialize(int *argc, char ***argv, bool filter)
legion_index_partition_t legion_index_partition_create_by_weights_future_map(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_future_map_t future_map, legion_index_space_t color_space, size_t granularity, legion_color_t color)
legion_logical_region_t legion_region_requirement_get_region(legion_region_requirement_t handle)
legion_mapping_tag_id_t legion_task_get_tag(legion_task_t task)
unsigned legion_copy_launcher_add_src_region_requirement_logical_region(legion_copy_launcher_t launcher, legion_logical_region_t handle, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_map_task_output_task_priority_set(legion_map_task_output_t output, legion_task_priority_t priority)
legion_release_launcher_t legion_release_launcher_create(legion_logical_region_t logical_region, legion_logical_region_t parent_region, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t tag)
void legion_argument_map_set_future(legion_argument_map_t map, legion_domain_point_t dp, legion_future_t future, bool replace)
bool legion_index_space_retrieve_semantic_information(legion_runtime_t runtime, legion_index_space_t handle, legion_semantic_tag_t tag, const void **result, size_t *size, bool can_fail, bool wait_until_ready)
legion_index_partition_t legion_index_space_get_parent_index_partition(legion_runtime_t runtime, legion_index_space_t handle)
legion_index_partition_t legion_index_partition_create_by_difference(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_index_partition_t handle1, legion_index_partition_t handle2, legion_index_space_t color_space, legion_partition_kind_t part_kind, legion_color_t color)
void legion_index_copy_launcher_set_possible_src_indirect_out_of_range(legion_index_copy_launcher_t launcher, bool flag)
void legion_task_launcher_set_sharding_space(legion_task_launcher_t launcher, legion_index_space_t is)
void legion_runtime_print_once_fd(legion_runtime_t runtime, legion_context_t ctx, int fd, const char *mode, const char *message)
void legion_acquire_launcher_set_sharding_space(legion_acquire_launcher_t launcher, legion_index_space_t space)
void legion_dynamic_collective_destroy(legion_runtime_t runtime, legion_context_t ctx, legion_dynamic_collective_t handle)
legion_physical_region_t legion_get_physical_region_by_id(legion_physical_region_t *regionptr, int id, int num_regions)
void legion_index_space_destroy(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t handle)
legion_field_space_t legion_field_space_create(legion_runtime_t runtime, legion_context_t ctx)
void legion_execution_constraint_set_destroy(legion_execution_constraint_set_t handle)
void legion_processor_query_best_affinity_to_memory(legion_processor_query_t query, legion_memory_t mem, int bandwidth_weight, int latency_weight)
bool legion_mapper_runtime_acquire_instance(legion_mapper_runtime_t runtime, legion_mapper_context_t ctx, legion_physical_instance_t instance)
legion_index_space_t legion_index_partition_get_index_subspace_domain_point(legion_runtime_t runtime, legion_index_partition_t handle, legion_domain_point_t color)
size_t legion_machine_get_all_processors_size(legion_machine_t machine)
bool legion_index_partition_is_complete(legion_runtime_t runtime, legion_index_partition_t handle)
void legion_task_launcher_set_elide_future_return(legion_task_launcher_t launcher, bool elide_future_return)
legion_index_partition_t legion_index_partition_create_by_preimage(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t projection, legion_logical_region_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_index_space_t color_space, legion_partition_kind_t part_kind, legion_color_t color, legion_mapper_id_t id, legion_mapping_tag_id_t tag, legion_untyped_buffer_t map_arg)
void legion_runtime_fill_field_future(legion_runtime_t runtime, legion_context_t ctx, legion_logical_region_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_future_t f, legion_predicate_t pred)
unsigned legion_index_copy_launcher_add_src_region_requirement_logical_region(legion_index_copy_launcher_t launcher, legion_logical_region_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_logger_error(legion_logger_t handle, const char *msg)
void legion_field_space_attach_name(legion_runtime_t runtime, legion_field_space_t handle, const char *name, bool is_mutable)
void legion_map_task_output_target_procs_clear(legion_map_task_output_t output)
void legion_must_epoch_launcher_set_launch_space(legion_must_epoch_launcher_t launcher, legion_index_space_t is)
void legion_processor_query_destroy(legion_processor_query_t handle)
void legion_index_fill_launcher_set_provenance(legion_index_fill_launcher_t launcher, const char *provenance)
legion_future_t legion_future_map_reduce(legion_runtime_t runtime, legion_context_t ctx, legion_future_map_t handle, legion_reduction_op_id_t redop, bool deterministic, legion_mapper_id_t map_id, legion_mapping_tag_id_t tag)
bool legion_logger_want_fatal(legion_logger_t handle)
bool legion_physical_region_is_valid(legion_physical_region_t handle)
bool legion_mapper_runtime_find_or_create_physical_instance_layout_constraint_id(legion_mapper_runtime_t runtime, legion_mapper_context_t ctx, legion_memory_t target_memory, legion_layout_constraint_id_t layout_id, const legion_logical_region_t *regions, size_t regions_size, legion_physical_instance_t *result, bool *created, bool acquire, legion_garbage_collection_priority_t priority, bool tight_region_bounds)
void legion_task_launcher_add_flags(legion_task_launcher_t launcher, unsigned idx, enum legion_region_flags_t flags)
legion_logical_partition_t legion_output_requirement_get_partition(legion_output_requirement_t handle)
void legion_multi_domain_point_coloring_destroy(legion_multi_domain_point_coloring_t handle)
bool legion_logical_region_retrieve_semantic_information(legion_runtime_t runtime, legion_logical_region_t handle, legion_semantic_tag_t tag, const void **result, size_t *size, bool can_fail, bool wait_until_ready)
legion_future_t legion_runtime_select_tunable_value(legion_runtime_t runtime, legion_context_t ctx, legion_tunable_id_t tid, legion_mapper_id_t mapper, legion_mapping_tag_id_t tag)
unsigned legion_task_get_regions_size(legion_task_t task)
bool legion_task_id_retrieve_semantic_information(legion_runtime_t runtime, legion_task_id_t task_id, legion_semantic_tag_t tag, const void **result, size_t *size, bool can_fail, bool wait_until_ready)
void legion_must_epoch_launcher_destroy(legion_must_epoch_launcher_t handle)
void legion_physical_region_wait_until_valid(legion_physical_region_t handle)
void legion_attach_launcher_destroy(legion_attach_launcher_t handle)
legion_index_launcher_t legion_index_launcher_create(legion_task_id_t tid, legion_domain_t domain, legion_untyped_buffer_t global_arg, legion_argument_map_t map, legion_predicate_t pred, bool must, legion_mapper_id_t id, legion_mapping_tag_id_t tag)
legion_argument_map_t legion_argument_map_create(void)
legion_shard_id_t legion_runtime_local_shard(legion_runtime_t runtime, legion_context_t ctx)
#define FROM_POINT(DIM)
Definition c_bindings.h:579
void legion_task_launcher_destroy(legion_task_launcher_t handle)
void legion_execution_constraint_set_add_launch_constraint(legion_execution_constraint_set_t handle, legion_launch_constraint_t kind, size_t value)
legion_dynamic_collective_t legion_dynamic_collective_advance(legion_runtime_t runtime, legion_context_t ctx, legion_dynamic_collective_t handle)
legion_domain_point_t legion_domain_point_safe_cast(legion_runtime_t runtime, legion_context_t ctx, legion_domain_point_t point, legion_logical_region_t region)
size_t legion_processor_query_count(legion_processor_query_t query)
#define ACCESSOR_ARRAY(DIM)
Definition c_bindings.h:4353
bool legion_mapper_runtime_find_physical_instance_layout_constraint(legion_mapper_runtime_t runtime, legion_mapper_context_t ctx, legion_memory_t target_memory, legion_layout_constraint_set_t constraints, const legion_logical_region_t *regions, size_t regions_size, legion_physical_instance_t *result, bool acquire, bool tight_region_bounds)
bool legion_mapper_runtime_find_physical_instance_layout_constraint_id(legion_mapper_runtime_t runtime, legion_mapper_context_t ctx, legion_memory_t target_memory, legion_layout_constraint_id_t layout_id, const legion_logical_region_t *regions, size_t regions_size, legion_physical_instance_t *result, bool acquire, bool tight_region_bounds)
legion_runtime_t legion_runtime_get_runtime(void)
void legion_physical_region_destroy(legion_physical_region_t handle)
void legion_runtime_index_fill_field(legion_runtime_t runtime, legion_context_t ctx, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, const void *value, size_t value_size, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
void legion_layout_constraint_set_add_alignment_constraint(legion_layout_constraint_set_t handle, legion_field_id_t field, legion_equality_kind_t eq, size_t byte_boundary)
legion_index_partition_t legion_index_partition_create_by_field(legion_runtime_t runtime, legion_context_t ctx, legion_logical_region_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_index_space_t color_space, legion_color_t color, legion_mapper_id_t id, legion_mapping_tag_id_t tag, legion_partition_kind_t part_kind, legion_untyped_buffer_t map_arg)
void legion_future_map_wait_all_results(legion_future_map_t handle)
legion_domain_t legion_domain_empty(unsigned dim)
void legion_index_launcher_set_elide_future_return(legion_index_launcher_t launcher, bool elide_future_return)
void legion_memory_query_best_affinity_to_processor(legion_memory_query_t query, legion_processor_t proc, int bandwidth_weight, int latency_weight)
void legion_index_launcher_set_region_requirement_logical_region_reduction(legion_index_launcher_t launcher, unsigned idx, legion_logical_region_t handle, legion_projection_id_t proj, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_execution_constraint_set_add_colocation_constraint(legion_execution_constraint_set_t handle, const unsigned *indexes, size_t num_indexes, const legion_field_id_t *fields, size_t num_fields)
void legion_multi_domain_point_coloring_color_domain(legion_multi_domain_point_coloring_t handle, legion_domain_point_t color, legion_domain_t domain)
unsigned legion_index_copy_launcher_add_dst_indirect_region_requirement_logical_partition(legion_index_copy_launcher_t launcher, legion_logical_partition_t handle, legion_projection_id_t proj, legion_field_id_t fid, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool is_range_indirection, bool verified)
void legion_logical_region_retrieve_name(legion_runtime_t runtime, legion_logical_region_t handle, const char **result)
legion_future_t legion_issue_timing_op_seconds(legion_runtime_t runtime, legion_context_t ctx)
void legion_index_copy_launcher_set_mapper_arg(legion_index_copy_launcher_t launcher, legion_untyped_buffer_t arg)
void legion_release_launcher_add_arrival_barrier(legion_release_launcher_t launcher, legion_phase_barrier_t bar)
void legion_copy_launcher_add_wait_barrier(legion_copy_launcher_t launcher, legion_phase_barrier_t bar)
void legion_task_launcher_set_mapper_arg(legion_task_launcher_t launcher, legion_untyped_buffer_t arg)
legion_logical_region_t legion_output_requirement_get_parent(legion_output_requirement_t handle)
void legion_future_destroy(legion_future_t handle)
void legion_task_launcher_add_arrival_barrier(legion_task_launcher_t launcher, legion_phase_barrier_t bar)
void legion_runtime_register_projection_functor_mappable(legion_runtime_t runtime, legion_projection_id_t id, bool exclusive, unsigned depth, legion_projection_functor_logical_region_mappable_t region_functor, legion_projection_functor_logical_partition_mappable_t partition_functor)
legion_logical_region_t legion_output_requirement_get_region(legion_output_requirement_t handle)
void legion_runtime_register_projection_functor_args(legion_runtime_t runtime, legion_projection_id_t id, bool exclusive, unsigned depth, legion_projection_functor_logical_region_t region_functor, legion_projection_functor_logical_partition_t partition_functor)
legion_future_t legion_index_launcher_execute_reduction_and_outputs(legion_runtime_t runtime, legion_context_t ctx, legion_index_launcher_t launcher, legion_reduction_op_id_t redop, bool deterministic, legion_output_requirement_t *reqs, size_t reqs_size)
void legion_task_launcher_set_region_requirement_logical_region_reduction(legion_task_launcher_t launcher, unsigned idx, legion_logical_region_t handle, legion_reduction_op_id_t redop, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_processor_t legion_runtime_get_executing_processor(legion_runtime_t runtime, legion_context_t ctx)
void legion_index_launcher_add_flags(legion_index_launcher_t launcher, unsigned idx, enum legion_region_flags_t flags)
legion_task_layout_constraint_set_t legion_task_layout_constraint_set_create(void)
legion_logical_partition_t legion_logical_partition_create(legion_runtime_t runtime, legion_logical_region_t parent, legion_index_partition_t handle)
void legion_reset_equivalence_sets(legion_runtime_t runtime, legion_context_t ctx, legion_logical_region_t parent, legion_logical_region_t region, int num_fields, legion_field_id_t *fields)
legion_processor_query_t legion_processor_query_create_copy(legion_processor_query_t query)
bool legion_mapper_runtime_acquire_instances(legion_mapper_runtime_t runtime, legion_mapper_context_t ctx, legion_physical_instance_t *instances, size_t instances_size)
void legion_index_space_retrieve_name(legion_runtime_t runtime, legion_index_space_t handle, const char **result)
void legion_layout_constraint_set_release(legion_runtime_t runtime, legion_layout_constraint_id_t handle)
legion_physical_region_t legion_runtime_attach_hdf5(legion_runtime_t runtime, legion_context_t ctx, const char *filename, legion_logical_region_t handle, legion_logical_region_t parent, legion_field_map_t field_map, legion_file_mode_t mode)
void legion_acquire_launcher_add_wait_barrier(legion_acquire_launcher_t launcher, legion_phase_barrier_t bar)
legion_unique_id_t legion_context_get_unique_id(legion_context_t ctx)
legion_index_attach_launcher_t legion_index_attach_launcher_create(legion_logical_region_t parent_region, legion_external_resource_t resource, bool restricted)
bool legion_domain_point_is_null(legion_domain_point_t point)
const legion_predicate_t legion_predicate_true(void)
legion_context_t legion_runtime_get_context(void)
void legion_index_launcher_set_projection_args(legion_index_launcher_t launcher_, unsigned idx, const void *args, size_t size, bool own)
bool legion_field_id_retrieve_semantic_information(legion_runtime_t runtime, legion_field_space_t handle, legion_field_id_t id, legion_semantic_tag_t tag, const void **result, size_t *size, bool can_fail, bool wait_until_ready)
legion_index_fill_launcher_t legion_index_fill_launcher_create_from_future_with_space(legion_index_space_t space, legion_logical_partition_t handle, legion_logical_region_t parent, legion_field_id_t fid, legion_future_t future, legion_projection_id_t proj, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
legion_index_space_t legion_index_partition_get_parent_index_space(legion_runtime_t runtime, legion_index_partition_t handle)
legion_multi_domain_point_coloring_t legion_multi_domain_point_coloring_create(void)
legion_memory_query_t legion_memory_query_create_copy(legion_memory_query_t query)
legion_color_t legion_index_partition_get_color(legion_runtime_t runtime, legion_index_partition_t handle)
void legion_field_allocator_free_field_unordered(legion_field_allocator_t allocator, legion_field_id_t fid, bool unordered)
legion_domain_point_iterator_t legion_domain_point_iterator_create(legion_domain_t handle)
void legion_release_launcher_set_mapper_arg(legion_release_launcher_t launcher, legion_untyped_buffer_t arg)
legion_memory_t legion_memory_query_first(legion_memory_query_t query)
void legion_coloring_destroy(legion_coloring_t handle)
void legion_logical_partition_attach_name(legion_runtime_t runtime, legion_logical_partition_t handle, const char *name, bool is_mutable)
void legion_index_space_attach_semantic_information(legion_runtime_t runtime, legion_index_space_t handle, legion_semantic_tag_t tag, const void *buffer, size_t size, bool is_mutable)
void legion_logical_partition_retrieve_name(legion_runtime_t runtime, legion_logical_partition_t handle, const char **result)
void legion_point_coloring_add_point(legion_point_coloring_t handle, legion_domain_point_t color, legion_ptr_t point)
void legion_index_attach_launcher_attach_array_aos(legion_index_attach_launcher_t handle, legion_logical_region_t region, void *base_ptr, bool column_major, const legion_field_id_t *fields, size_t num_fields, legion_memory_t memory)
void legion_runtime_preregister_projection_functor(legion_projection_id_t id, bool exclusive, unsigned depth, legion_projection_functor_logical_region_t region_functor, legion_projection_functor_logical_partition_t partition_functor)
bool legion_future_is_ready(legion_future_t handle)
unsigned long long legion_get_current_time_in_nanos(void)
void legion_release_launcher_set_sharding_space(legion_release_launcher_t launcher, legion_index_space_t space)
legion_index_partition_t legion_index_partition_create_by_domain_future_map(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_future_map_t future_map, legion_index_space_t color_space, bool perform_intersections, legion_partition_kind_t part_kind, legion_color_t color)
size_t legion_physical_region_get_memory_count(legion_physical_region_t handle)
void legion_task_destroy(legion_task_mut_t handle)
legion_inline_t legion_mappable_as_inline_mapping(legion_mappable_t mappable)
void legion_task_launcher_set_local_function_task(legion_task_launcher_t launcher, bool local_function_task)
void legion_predicate_destroy(legion_predicate_t handle)
void legion_index_launcher_add_wait_barrier(legion_index_launcher_t launcher, legion_phase_barrier_t bar)
legion_future_t legion_issue_timing_op_nanoseconds(legion_runtime_t runtime, legion_context_t ctx)
void legion_coloring_ensure_color(legion_coloring_t handle, legion_color_t color)
legion_reduction_op_id_t legion_region_requirement_get_redop(legion_region_requirement_t handle)
bool legion_runtime_has_runtime(void)
legion_processor_kind_t legion_processor_kind(legion_processor_t proc)
void legion_task_variant_registrar_set_options(legion_task_variant_registrar_t registrar, legion_task_config_options_t options)
void legion_attach_launcher_attach_hdf5(legion_attach_launcher_t handle, const char *filename, legion_field_map_t field_map, legion_file_mode_t mode)
void legion_map_task_output_chosen_instances_clear_each(legion_map_task_output_t output, size_t idx)
void legion_fill_launcher_set_mapper_arg(legion_fill_launcher_t launcher, legion_untyped_buffer_t arg)
void legion_copy_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_copy_launcher_t launcher)
void legion_discard_launcher_set_provenance(legion_discard_launcher_t launcher, const char *provenance)
void legion_execution_constraint_set_add_isa_constraint(legion_execution_constraint_set_t handle, uint64_t prop)
unsigned legion_index_copy_launcher_add_dst_region_requirement_logical_region(legion_index_copy_launcher_t launcher, legion_logical_region_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_future_t legion_unordered_detach_external_resource(legion_runtime_t runtime, legion_context_t ctx, legion_physical_region_t handle, bool flush, bool unordered)
bool legion_logical_partition_retrieve_semantic_information(legion_runtime_t runtime, legion_logical_partition_t handle, legion_semantic_tag_t tag, const void **result, size_t *size, bool can_fail, bool wait_until_ready)
legion_index_partition_t legion_index_partition_create_pending_partition(legion_runtime_t runtime, legion_context_t ctx, legion_index_space_t parent, legion_index_space_t color_space, legion_partition_kind_t part_kind, legion_color_t color)
bool legion_runtime_has_context(void)
void legion_region_requirement_destroy(legion_region_requirement_t handle)
bool legion_domain_point_iterator_has_next(legion_domain_point_iterator_t handle)
legion_index_space_t legion_index_space_union(legion_runtime_t runtime, legion_context_t ctx, const legion_index_space_t *spaces, size_t num_spaces)
void legion_attach_launcher_set_footprint(legion_attach_launcher_t launcher, size_t footprint)
legion_logical_region_t legion_logical_partition_get_logical_subregion(legion_runtime_t runtime, legion_logical_partition_t parent, legion_index_space_t handle)
legion_future_t legion_index_launcher_execute_reduction(legion_runtime_t runtime, legion_context_t ctx, legion_index_launcher_t launcher, legion_reduction_op_id_t redop)
bool legion_logger_want_warning(legion_logger_t handle)
void legion_task_id_attach_name(legion_runtime_t runtime, legion_task_id_t task_id, const char *name, bool is_mutable)
legion_logical_region_t legion_logical_partition_get_parent_logical_region(legion_runtime_t runtime, legion_logical_partition_t handle)
void legion_inline_launcher_add_field(legion_inline_launcher_t launcher, legion_field_id_t fid, bool inst)
legion_physical_region_t legion_inline_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_inline_launcher_t launcher)
void legion_copy_launcher_set_possible_dst_indirect_out_of_range(legion_copy_launcher_t launcher, bool flag)
legion_physical_region_t legion_physical_region_copy(legion_physical_region_t handle)
legion_reduction_op_id_t legion_runtime_generate_library_reduction_ids(legion_runtime_t runtime, const char *library_name, size_t count)
void(* legion_registration_callback_pointer_t)(legion_machine_t, legion_runtime_t, const legion_processor_t *, unsigned)
Definition c_bindings.h:406
void legion_runtime_unmap_region(legion_runtime_t runtime, legion_context_t ctx, legion_physical_region_t region)
void legion_task_launcher_set_predicate_false_result(legion_task_launcher_t launcher, legion_untyped_buffer_t arg)
void legion_layout_constraint_set_add_ordering_constraint(legion_layout_constraint_set_t handle, const legion_dimension_kind_t *dims, size_t num_dims, bool contiguous)
void legion_discard_launcher_destroy(legion_discard_launcher_t handle)
legion_processor_t legion_processor_query_next(legion_processor_query_t query, legion_processor_t after)
void legion_logical_region_create_shared_ownership(legion_runtime_t runtime, legion_context_t ctx, legion_logical_region_t handle)
size_t legion_task_get_local_arglen(legion_task_t task)
legion_index_copy_launcher_t legion_index_copy_launcher_create(legion_domain_t domain, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t launcher_tag)
bool legion_logger_want_debug(legion_logger_t handle)
const void * legion_future_get_untyped_pointer(legion_future_t handle)
legion_region_requirement_t legion_region_requirement_create_logical_region_projection(legion_logical_region_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
void legion_index_launcher_set_sharding_space(legion_index_launcher_t launcher, legion_index_space_t is)
legion_task_launcher_t legion_task_launcher_create(legion_task_id_t tid, legion_untyped_buffer_t arg, legion_predicate_t pred, legion_mapper_id_t id, legion_mapping_tag_id_t tag)
void legion_phase_barrier_arrive(legion_runtime_t runtime, legion_context_t ctx, legion_phase_barrier_t handle, unsigned count)
#define CREATE_BLOCKIFY(DIM)
Definition c_bindings.h:1088
legion_projection_id_t legion_runtime_generate_static_projection_id()
const void * legion_index_launcher_get_projection_args(legion_region_requirement_t requirement, size_t *size)
void legion_copy_launcher_set_sharding_space(legion_copy_launcher_t launcher, legion_index_space_t space)
void legion_phase_barrier_destroy(legion_runtime_t runtime, legion_context_t ctx, legion_phase_barrier_t handle)
void legion_coloring_add_point(legion_coloring_t handle, legion_color_t color, legion_ptr_t point)
void legion_field_map_destroy(legion_field_map_t handle)
void legion_acquire_launcher_set_provenance(legion_acquire_launcher_t launcher, const char *provenance)
legion_future_t legion_task_get_future(legion_task_t task, unsigned idx)
void legion_point_coloring_destroy(legion_point_coloring_t handle)
void legion_logger_print(legion_logger_t handle, const char *msg)
unsigned legion_index_launcher_add_region_requirement_logical_region(legion_index_launcher_t launcher, legion_logical_region_t handle, legion_projection_id_t proj, legion_privilege_mode_t priv, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool verified)
legion_field_space_t legion_field_space_create_with_fields(legion_runtime_t runtime, legion_context_t ctx, size_t *field_sizes, legion_field_id_t *field_ids, size_t num_fields, legion_custom_serdez_id_t serdez)
legion_future_t legion_issue_timing_op_microseconds(legion_runtime_t runtime, legion_context_t ctx)
unsigned legion_copy_launcher_add_dst_indirect_region_requirement_logical_region(legion_copy_launcher_t launcher, legion_logical_region_t handle, legion_field_id_t fid, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool is_range_indirection, bool verified)
unsigned legion_index_copy_launcher_add_src_indirect_region_requirement_logical_region(legion_index_copy_launcher_t launcher, legion_logical_region_t handle, legion_projection_id_t proj, legion_field_id_t fid, legion_coherence_property_t prop, legion_logical_region_t parent, legion_mapping_tag_id_t tag, bool is_range_indirection, bool verified)
legion_future_map_t legion_future_map_construct_from_futures(legion_runtime_t runtime, legion_context_t ctx, legion_domain_t domain, legion_domain_point_t *points, legion_future_t *futures, size_t num_futures, bool collective, legion_sharding_id_t sid, bool implicit_sharding)
void legion_index_fill_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_index_fill_launcher_t launcher)
legion_future_t legion_task_launcher_execute(legion_runtime_t runtime, legion_context_t ctx, legion_task_launcher_t launcher)
void legion_coloring_add_range(legion_coloring_t handle, legion_color_t color, legion_ptr_t start, legion_ptr_t end)
void legion_index_partition_create_shared_ownership(legion_runtime_t runtime, legion_context_t ctx, legion_index_partition_t handle)
legion_logical_region_t(* legion_projection_functor_logical_partition_mappable_t)(legion_runtime_t, legion_mappable_t, unsigned, legion_logical_partition_t, legion_domain_point_t)
Definition c_bindings.h:471
void legion_field_allocator_destroy(legion_field_allocator_t handle)
void legion_runtime_set_return_code(int return_code)
legion_logical_region_t(* legion_projection_functor_logical_region_mappable_t)(legion_runtime_t, legion_mappable_t, unsigned, legion_logical_region_t, legion_domain_point_t)
Definition c_bindings.h:461
legion_future_t legion_index_launcher_execute_deterministic_reduction(legion_runtime_t runtime, legion_context_t ctx, legion_index_launcher_t launcher, legion_reduction_op_id_t redop, bool deterministic)
void legion_memory_query_local_address_space(legion_memory_query_t query)
void legion_argument_map_set_point(legion_argument_map_t map, legion_domain_point_t dp, legion_untyped_buffer_t arg, bool replace)
void legion_task_launcher_add_field(legion_task_launcher_t launcher, unsigned idx, legion_field_id_t fid, bool inst)
Definition c_bindings.h:316
Definition c_bindings.h:257
Definition c_bindings.h:211
Definition c_bindings.h:172
Definition c_bindings.h:219
Definition c_bindings.h:375
Definition c_bindings.h:283
Definition c_bindings.h:274
Definition c_bindings.h:265
Definition c_bindings.h:299
Definition c_bindings.h:290
Definition c_bindings.h:348
Definition c_bindings.h:365
Definition c_bindings.h:341
Definition c_bindings.h:126
Definition c_bindings.h:331
Definition c_bindings.h:388
Definition c_bindings.h:355
Definition c_bindings.h:308