mirror of
https://github.com/capstone-engine/llvm-capstone.git
synced 2024-12-25 09:23:07 +00:00
Update to isl-0.18-402-ga30c537
This is a regular maintenance update. llvm-svn: 298595
This commit is contained in:
parent
8a18299f20
commit
1f7e7d3d93
2
polly/lib/External/isl/GIT_HEAD_ID
vendored
2
polly/lib/External/isl/GIT_HEAD_ID
vendored
@ -1 +1 @@
|
||||
isl-0.18-395-g77701b3
|
||||
isl-0.18-402-ga30c537
|
||||
|
10
polly/lib/External/isl/doc/user.pod
vendored
10
polly/lib/External/isl/doc/user.pod
vendored
@ -7705,7 +7705,8 @@ the following.
|
||||
|
||||
int isl_vertices_get_n_vertices(
|
||||
__isl_keep isl_vertices *vertices);
|
||||
void isl_vertices_free(__isl_take isl_vertices *vertices);
|
||||
__isl_null isl_vertices *isl_vertices_free(
|
||||
__isl_take isl_vertices *vertices);
|
||||
|
||||
Vertices can be inspected and destroyed using the following functions.
|
||||
|
||||
@ -8725,9 +8726,12 @@ pairs of corresponding sink iterations and accessed data elements.
|
||||
To compute standard flow dependences, the sink should be
|
||||
a read, while the sources should be writes.
|
||||
If any of the source accesses are marked as being I<may>
|
||||
accesses, then there will be a dependence from the last
|
||||
accesses, then there will be a (may) dependence from the last
|
||||
I<must> access B<and> from any I<may> access that follows
|
||||
this last I<must> access.
|
||||
this last I<must> access, but still precedes the sink access.
|
||||
Only dependences originating in a must access and without
|
||||
any may accesses between the must access and the sink access
|
||||
are considered to be must dependences.
|
||||
In particular, if I<all> sources are I<may> accesses,
|
||||
then memory based dependence analysis is performed.
|
||||
If, on the other hand, all sources are I<must> accesses,
|
||||
|
@ -29,7 +29,7 @@ isl_ctx *isl_vertices_get_ctx(__isl_keep isl_vertices *vertices);
|
||||
int isl_vertices_get_n_vertices(__isl_keep isl_vertices *vertices);
|
||||
isl_stat isl_vertices_foreach_vertex(__isl_keep isl_vertices *vertices,
|
||||
isl_stat (*fn)(__isl_take isl_vertex *vertex, void *user), void *user);
|
||||
void isl_vertices_free(__isl_take isl_vertices *vertices);
|
||||
__isl_null isl_vertices *isl_vertices_free(__isl_take isl_vertices *vertices);
|
||||
|
||||
isl_ctx *isl_cell_get_ctx(__isl_keep isl_cell *cell);
|
||||
__isl_give isl_basic_set *isl_cell_get_domain(__isl_keep isl_cell *cell);
|
||||
|
8
polly/lib/External/isl/isl_map.c
vendored
8
polly/lib/External/isl/isl_map.c
vendored
@ -3938,6 +3938,8 @@ __isl_give isl_basic_map *isl_basic_map_project_out(
|
||||
__isl_take isl_basic_map *bmap,
|
||||
enum isl_dim_type type, unsigned first, unsigned n)
|
||||
{
|
||||
isl_bool empty;
|
||||
|
||||
if (n == 0)
|
||||
return basic_map_space_reset(bmap, type);
|
||||
if (type == isl_dim_div)
|
||||
@ -3945,6 +3947,12 @@ __isl_give isl_basic_map *isl_basic_map_project_out(
|
||||
"cannot project out existentially quantified variables",
|
||||
return isl_basic_map_free(bmap));
|
||||
|
||||
empty = isl_basic_map_plain_is_empty(bmap);
|
||||
if (empty < 0)
|
||||
return isl_basic_map_free(bmap);
|
||||
if (empty)
|
||||
bmap = isl_basic_map_set_to_empty(bmap);
|
||||
|
||||
bmap = drop_irrelevant_constraints(bmap, type, first, n);
|
||||
if (!bmap)
|
||||
return NULL;
|
||||
|
8
polly/lib/External/isl/isl_morph.c
vendored
8
polly/lib/External/isl/isl_morph.c
vendored
@ -83,19 +83,21 @@ __isl_give isl_morph *isl_morph_cow(__isl_take isl_morph *morph)
|
||||
return isl_morph_dup(morph);
|
||||
}
|
||||
|
||||
void isl_morph_free(__isl_take isl_morph *morph)
|
||||
__isl_null isl_morph *isl_morph_free(__isl_take isl_morph *morph)
|
||||
{
|
||||
if (!morph)
|
||||
return;
|
||||
return NULL;
|
||||
|
||||
if (--morph->ref > 0)
|
||||
return;
|
||||
return NULL;
|
||||
|
||||
isl_basic_set_free(morph->dom);
|
||||
isl_basic_set_free(morph->ran);
|
||||
isl_mat_free(morph->map);
|
||||
isl_mat_free(morph->inv);
|
||||
free(morph);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Is "morph" an identity on the parameters?
|
||||
|
2
polly/lib/External/isl/isl_morph.h
vendored
2
polly/lib/External/isl/isl_morph.h
vendored
@ -42,7 +42,7 @@ __isl_give isl_morph *isl_morph_alloc(
|
||||
__isl_take isl_mat *map, __isl_take isl_mat *inv);
|
||||
__isl_give isl_morph *isl_morph_copy(__isl_keep isl_morph *morph);
|
||||
__isl_give isl_morph *isl_morph_identity(__isl_keep isl_basic_set *bset);
|
||||
void isl_morph_free(__isl_take isl_morph *morph);
|
||||
__isl_null isl_morph *isl_morph_free(__isl_take isl_morph *morph);
|
||||
|
||||
__isl_give isl_space *isl_morph_get_dom_space(__isl_keep isl_morph *morph);
|
||||
__isl_give isl_space *isl_morph_get_ran_space(__isl_keep isl_morph *morph);
|
||||
|
12
polly/lib/External/isl/isl_polynomial.c
vendored
12
polly/lib/External/isl/isl_polynomial.c
vendored
@ -620,13 +620,13 @@ __isl_give struct isl_upoly *isl_upoly_cow(__isl_take struct isl_upoly *up)
|
||||
return isl_upoly_dup(up);
|
||||
}
|
||||
|
||||
void isl_upoly_free(__isl_take struct isl_upoly *up)
|
||||
__isl_null struct isl_upoly *isl_upoly_free(__isl_take struct isl_upoly *up)
|
||||
{
|
||||
if (!up)
|
||||
return;
|
||||
return NULL;
|
||||
|
||||
if (--up->ref > 0)
|
||||
return;
|
||||
return NULL;
|
||||
|
||||
if (up->var < 0)
|
||||
upoly_free_cst((struct isl_upoly_cst *)up);
|
||||
@ -635,6 +635,7 @@ void isl_upoly_free(__isl_take struct isl_upoly *up)
|
||||
|
||||
isl_ctx_deref(up->ctx);
|
||||
free(up);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static void isl_upoly_cst_reduce(__isl_keep struct isl_upoly_cst *cst)
|
||||
@ -4566,6 +4567,9 @@ error:
|
||||
* 0 if cst == 0
|
||||
* 1 if cst == 1
|
||||
* infinity if cst == -1
|
||||
*
|
||||
* If cst == -1, then explicitly check whether the domain is empty and,
|
||||
* if so, return 0 instead.
|
||||
*/
|
||||
static __isl_give isl_pw_qpolynomial *constant_on_domain(
|
||||
__isl_take isl_basic_set *bset, int cst)
|
||||
@ -4573,6 +4577,8 @@ static __isl_give isl_pw_qpolynomial *constant_on_domain(
|
||||
isl_space *dim;
|
||||
isl_qpolynomial *qp;
|
||||
|
||||
if (cst < 0 && isl_basic_set_is_empty(bset) == isl_bool_true)
|
||||
cst = 0;
|
||||
if (!bset)
|
||||
return NULL;
|
||||
|
||||
|
@ -102,7 +102,7 @@ __isl_give struct isl_upoly *isl_upoly_zero(struct isl_ctx *ctx);
|
||||
__isl_give struct isl_upoly *isl_upoly_copy(__isl_keep struct isl_upoly *up);
|
||||
__isl_give struct isl_upoly *isl_upoly_cow(__isl_take struct isl_upoly *up);
|
||||
__isl_give struct isl_upoly *isl_upoly_dup(__isl_keep struct isl_upoly *up);
|
||||
void isl_upoly_free(__isl_take struct isl_upoly *up);
|
||||
__isl_null struct isl_upoly *isl_upoly_free(__isl_take struct isl_upoly *up);
|
||||
__isl_give struct isl_upoly *isl_upoly_mul(__isl_take struct isl_upoly *up1,
|
||||
__isl_take struct isl_upoly *up2);
|
||||
|
||||
|
12
polly/lib/External/isl/isl_vertices.c
vendored
12
polly/lib/External/isl/isl_vertices.c
vendored
@ -35,15 +35,15 @@ __isl_give isl_vertices *isl_vertices_copy(__isl_keep isl_vertices *vertices)
|
||||
return vertices;
|
||||
}
|
||||
|
||||
void isl_vertices_free(__isl_take isl_vertices *vertices)
|
||||
__isl_null isl_vertices *isl_vertices_free(__isl_take isl_vertices *vertices)
|
||||
{
|
||||
int i;
|
||||
|
||||
if (!vertices)
|
||||
return;
|
||||
return NULL;
|
||||
|
||||
if (--vertices->ref > 0)
|
||||
return;
|
||||
return NULL;
|
||||
|
||||
for (i = 0; i < vertices->n_vertices; ++i) {
|
||||
isl_basic_set_free(vertices->v[i].vertex);
|
||||
@ -59,6 +59,8 @@ void isl_vertices_free(__isl_take isl_vertices *vertices)
|
||||
|
||||
isl_basic_set_free(vertices->bset);
|
||||
free(vertices);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
struct isl_vertex_list {
|
||||
@ -66,7 +68,7 @@ struct isl_vertex_list {
|
||||
struct isl_vertex_list *next;
|
||||
};
|
||||
|
||||
static void free_vertex_list(struct isl_vertex_list *list)
|
||||
static struct isl_vertex_list *free_vertex_list(struct isl_vertex_list *list)
|
||||
{
|
||||
struct isl_vertex_list *next;
|
||||
|
||||
@ -76,6 +78,8 @@ static void free_vertex_list(struct isl_vertex_list *list)
|
||||
isl_basic_set_free(list->v.dom);
|
||||
free(list);
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static __isl_give isl_vertices *vertices_from_list(__isl_keep isl_basic_set *bset,
|
||||
|
Loading…
Reference in New Issue
Block a user