Coverage Report

Created: 2019-07-24 05:18

/Users/buildslave/jenkins/workspace/clang-stage2-coverage-R/llvm/tools/polly/lib/External/isl/isl_list_templ.c
Line
Count
Source (jump to first uncovered line)
1
/*
2
 * Copyright 2008-2009 Katholieke Universiteit Leuven
3
 * Copyright 2011      INRIA Saclay
4
 * Copyright 2012-2013 Ecole Normale Superieure
5
 * Copyright 2017      Sven Verdoolaege
6
 *
7
 * Use of this software is governed by the MIT license
8
 *
9
 * Written by Sven Verdoolaege, K.U.Leuven, Departement
10
 * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
11
 * and INRIA Saclay - Ile-de-France, Parc Club Orsay Universite,
12
 * ZAC des vignes, 4 rue Jacques Monod, 91893 Orsay, France
13
 * and Ecole Normale Superieure, 45 rue d’Ulm, 75230 Paris, France
14
 */
15
16
#include <isl_sort.h>
17
#include <isl_tarjan.h>
18
#include <isl/printer.h>
19
20
5.33k
#define xCAT(A,B) A ## B
21
5.33k
#define CAT(A,B) xCAT(A,B)
22
#undef EL
23
5.33k
#define EL CAT(isl_,BASE)
24
5.30M
#define xFN(TYPE,NAME) TYPE ## _ ## NAME
25
5.26M
#define FN(TYPE,NAME) xFN(TYPE,NAME)
26
644k
#define xLIST(EL) EL ## _list
27
644k
#define LIST(EL) xLIST(EL)
28
3.36k
#define xS(TYPE,NAME) struct TYPE ## _ ## NAME
29
3.36k
#define S(TYPE,NAME) xS(TYPE,NAME)
30
31
isl_ctx *FN(LIST(EL),get_ctx)(__isl_keep LIST(EL) *list)
32
100k
{
33
100k
  return list ? list->ctx : NULL;
34
100k
}
isl_aff_list_get_ctx
Line
Count
Source
32
20
{
33
20
  return list ? list->ctx : NULL;
34
20
}
isl_pw_aff_list_get_ctx
Line
Count
Source
32
11.7k
{
33
11.7k
  return list ? list->ctx : NULL;
34
11.7k
}
Unexecuted instantiation: isl_pw_multi_aff_list_get_ctx
isl_union_pw_aff_list_get_ctx
Line
Count
Source
32
116
{
33
116
  return list ? list->ctx : NULL;
34
116
}
Unexecuted instantiation: isl_union_pw_multi_aff_list_get_ctx
Unexecuted instantiation: isl_ast_expr_list_get_ctx
isl_ast_node_list_get_ctx
Line
Count
Source
32
593
{
33
593
  return list ? list->ctx : NULL;
34
593
}
isl_ast_graft_list_get_ctx
Line
Count
Source
32
12.3k
{
33
12.3k
  return list ? list->ctx : NULL;
34
12.3k
}
isl_constraint_list_get_ctx
Line
Count
Source
32
1.18k
{
33
1.18k
  return list ? list->ctx : NULL;
34
1.18k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_get_ctx
isl_id_list_get_ctx
Line
Count
Source
32
685
{
33
685
  return list ? list->ctx : NULL;
34
685
}
isl_basic_map_list_get_ctx
Line
Count
Source
32
2.64k
{
33
2.64k
  return list ? list->ctx : NULL;
34
2.64k
}
isl_map_list_get_ctx
Line
Count
Source
32
1.24k
{
33
1.24k
  return list ? list->ctx : NULL;
34
1.24k
}
isl_union_map_list_get_ctx
Line
Count
Source
32
1
{
33
1
  return list ? list->ctx : NULL;
34
1
}
Unexecuted instantiation: isl_pw_qpolynomial_list_get_ctx
isl_schedule_tree_list_get_ctx
Line
Count
Source
32
68.6k
{
33
68.6k
  return list ? list->ctx : NULL;
34
68.6k
}
isl_basic_set_list_get_ctx
Line
Count
Source
32
1.31k
{
33
1.31k
  return list ? list->ctx : NULL;
34
1.31k
}
isl_set_list_get_ctx
Line
Count
Source
32
20
{
33
20
  return list ? list->ctx : NULL;
34
20
}
isl_union_set_list_get_ctx
Line
Count
Source
32
271
{
33
271
  return list ? list->ctx : NULL;
34
271
}
isl_val_list_get_ctx
Line
Count
Source
32
8
{
33
8
  return list ? list->ctx : NULL;
34
8
}
35
36
__isl_give LIST(EL) *FN(LIST(EL),alloc)(isl_ctx *ctx, int n)
37
164k
{
38
164k
  LIST(EL) *list;
39
164k
40
164k
  if (n < 0)
41
164k
    
isl_die0
(ctx, isl_error_invalid,
42
164k
      "cannot create list of negative length",
43
164k
      return NULL);
44
164k
  list = isl_alloc(ctx, LIST(EL),
45
164k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
164k
  if (!list)
47
9
    return NULL;
48
164k
49
164k
  list->ctx = ctx;
50
164k
  isl_ctx_ref(ctx);
51
164k
  list->ref = 1;
52
164k
  list->size = n;
53
164k
  list->n = 0;
54
164k
  return list;
55
164k
}
isl_aff_list_alloc
Line
Count
Source
37
8.74k
{
38
8.74k
  LIST(EL) *list;
39
8.74k
40
8.74k
  if (n < 0)
41
8.74k
    
isl_die0
(ctx, isl_error_invalid,
42
8.74k
      "cannot create list of negative length",
43
8.74k
      return NULL);
44
8.74k
  list = isl_alloc(ctx, LIST(EL),
45
8.74k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
8.74k
  if (!list)
47
0
    return NULL;
48
8.74k
49
8.74k
  list->ctx = ctx;
50
8.74k
  isl_ctx_ref(ctx);
51
8.74k
  list->ref = 1;
52
8.74k
  list->size = n;
53
8.74k
  list->n = 0;
54
8.74k
  return list;
55
8.74k
}
isl_pw_aff_list_alloc
Line
Count
Source
37
17.4k
{
38
17.4k
  LIST(EL) *list;
39
17.4k
40
17.4k
  if (n < 0)
41
17.4k
    
isl_die0
(ctx, isl_error_invalid,
42
17.4k
      "cannot create list of negative length",
43
17.4k
      return NULL);
44
17.4k
  list = isl_alloc(ctx, LIST(EL),
45
17.4k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
17.4k
  if (!list)
47
0
    return NULL;
48
17.4k
49
17.4k
  list->ctx = ctx;
50
17.4k
  isl_ctx_ref(ctx);
51
17.4k
  list->ref = 1;
52
17.4k
  list->size = n;
53
17.4k
  list->n = 0;
54
17.4k
  return list;
55
17.4k
}
Unexecuted instantiation: isl_pw_multi_aff_list_alloc
isl_union_pw_aff_list_alloc
Line
Count
Source
37
260
{
38
260
  LIST(EL) *list;
39
260
40
260
  if (n < 0)
41
260
    
isl_die0
(ctx, isl_error_invalid,
42
260
      "cannot create list of negative length",
43
260
      return NULL);
44
260
  list = isl_alloc(ctx, LIST(EL),
45
260
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
260
  if (!list)
47
0
    return NULL;
48
260
49
260
  list->ctx = ctx;
50
260
  isl_ctx_ref(ctx);
51
260
  list->ref = 1;
52
260
  list->size = n;
53
260
  list->n = 0;
54
260
  return list;
55
260
}
isl_union_pw_multi_aff_list_alloc
Line
Count
Source
37
8
{
38
8
  LIST(EL) *list;
39
8
40
8
  if (n < 0)
41
8
    
isl_die0
(ctx, isl_error_invalid,
42
8
      "cannot create list of negative length",
43
8
      return NULL);
44
8
  list = isl_alloc(ctx, LIST(EL),
45
8
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
8
  if (!list)
47
0
    return NULL;
48
8
49
8
  list->ctx = ctx;
50
8
  isl_ctx_ref(ctx);
51
8
  list->ref = 1;
52
8
  list->size = n;
53
8
  list->n = 0;
54
8
  return list;
55
8
}
Unexecuted instantiation: isl_ast_expr_list_alloc
isl_ast_node_list_alloc
Line
Count
Source
37
4.67k
{
38
4.67k
  LIST(EL) *list;
39
4.67k
40
4.67k
  if (n < 0)
41
4.67k
    
isl_die0
(ctx, isl_error_invalid,
42
4.67k
      "cannot create list of negative length",
43
4.67k
      return NULL);
44
4.67k
  list = isl_alloc(ctx, LIST(EL),
45
4.67k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
4.67k
  if (!list)
47
0
    return NULL;
48
4.67k
49
4.67k
  list->ctx = ctx;
50
4.67k
  isl_ctx_ref(ctx);
51
4.67k
  list->ref = 1;
52
4.67k
  list->size = n;
53
4.67k
  list->n = 0;
54
4.67k
  return list;
55
4.67k
}
isl_ast_graft_list_alloc
Line
Count
Source
37
18.6k
{
38
18.6k
  LIST(EL) *list;
39
18.6k
40
18.6k
  if (n < 0)
41
18.6k
    
isl_die0
(ctx, isl_error_invalid,
42
18.6k
      "cannot create list of negative length",
43
18.6k
      return NULL);
44
18.6k
  list = isl_alloc(ctx, LIST(EL),
45
18.6k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
18.6k
  if (!list)
47
0
    return NULL;
48
18.6k
49
18.6k
  list->ctx = ctx;
50
18.6k
  isl_ctx_ref(ctx);
51
18.6k
  list->ref = 1;
52
18.6k
  list->size = n;
53
18.6k
  list->n = 0;
54
18.6k
  return list;
55
18.6k
}
isl_constraint_list_alloc
Line
Count
Source
37
2.46k
{
38
2.46k
  LIST(EL) *list;
39
2.46k
40
2.46k
  if (n < 0)
41
2.46k
    
isl_die0
(ctx, isl_error_invalid,
42
2.46k
      "cannot create list of negative length",
43
2.46k
      return NULL);
44
2.46k
  list = isl_alloc(ctx, LIST(EL),
45
2.46k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
2.46k
  if (!list)
47
0
    return NULL;
48
2.46k
49
2.46k
  list->ctx = ctx;
50
2.46k
  isl_ctx_ref(ctx);
51
2.46k
  list->ref = 1;
52
2.46k
  list->size = n;
53
2.46k
  list->n = 0;
54
2.46k
  return list;
55
2.46k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_alloc
isl_id_list_alloc
Line
Count
Source
37
1.98k
{
38
1.98k
  LIST(EL) *list;
39
1.98k
40
1.98k
  if (n < 0)
41
1.98k
    
isl_die0
(ctx, isl_error_invalid,
42
1.98k
      "cannot create list of negative length",
43
1.98k
      return NULL);
44
1.98k
  list = isl_alloc(ctx, LIST(EL),
45
1.98k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
1.98k
  if (!list)
47
0
    return NULL;
48
1.98k
49
1.98k
  list->ctx = ctx;
50
1.98k
  isl_ctx_ref(ctx);
51
1.98k
  list->ref = 1;
52
1.98k
  list->size = n;
53
1.98k
  list->n = 0;
54
1.98k
  return list;
55
1.98k
}
isl_basic_map_list_alloc
Line
Count
Source
37
6.82k
{
38
6.82k
  LIST(EL) *list;
39
6.82k
40
6.82k
  if (n < 0)
41
6.82k
    
isl_die0
(ctx, isl_error_invalid,
42
6.82k
      "cannot create list of negative length",
43
6.82k
      return NULL);
44
6.82k
  list = isl_alloc(ctx, LIST(EL),
45
6.82k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
6.82k
  if (!list)
47
0
    return NULL;
48
6.82k
49
6.82k
  list->ctx = ctx;
50
6.82k
  isl_ctx_ref(ctx);
51
6.82k
  list->ref = 1;
52
6.82k
  list->size = n;
53
6.82k
  list->n = 0;
54
6.82k
  return list;
55
6.82k
}
isl_map_list_alloc
Line
Count
Source
37
8.31k
{
38
8.31k
  LIST(EL) *list;
39
8.31k
40
8.31k
  if (n < 0)
41
8.31k
    
isl_die0
(ctx, isl_error_invalid,
42
8.31k
      "cannot create list of negative length",
43
8.31k
      return NULL);
44
8.31k
  list = isl_alloc(ctx, LIST(EL),
45
8.31k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
8.31k
  if (!list)
47
9
    return NULL;
48
8.30k
49
8.30k
  list->ctx = ctx;
50
8.30k
  isl_ctx_ref(ctx);
51
8.30k
  list->ref = 1;
52
8.30k
  list->size = n;
53
8.30k
  list->n = 0;
54
8.30k
  return list;
55
8.30k
}
isl_union_map_list_alloc
Line
Count
Source
37
1
{
38
1
  LIST(EL) *list;
39
1
40
1
  if (n < 0)
41
1
    
isl_die0
(ctx, isl_error_invalid,
42
1
      "cannot create list of negative length",
43
1
      return NULL);
44
1
  list = isl_alloc(ctx, LIST(EL),
45
1
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
1
  if (!list)
47
0
    return NULL;
48
1
49
1
  list->ctx = ctx;
50
1
  isl_ctx_ref(ctx);
51
1
  list->ref = 1;
52
1
  list->size = n;
53
1
  list->n = 0;
54
1
  return list;
55
1
}
Unexecuted instantiation: isl_pw_qpolynomial_list_alloc
isl_schedule_tree_list_alloc
Line
Count
Source
37
78.1k
{
38
78.1k
  LIST(EL) *list;
39
78.1k
40
78.1k
  if (n < 0)
41
78.1k
    
isl_die0
(ctx, isl_error_invalid,
42
78.1k
      "cannot create list of negative length",
43
78.1k
      return NULL);
44
78.1k
  list = isl_alloc(ctx, LIST(EL),
45
78.1k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
78.1k
  if (!list)
47
0
    return NULL;
48
78.1k
49
78.1k
  list->ctx = ctx;
50
78.1k
  isl_ctx_ref(ctx);
51
78.1k
  list->ref = 1;
52
78.1k
  list->size = n;
53
78.1k
  list->n = 0;
54
78.1k
  return list;
55
78.1k
}
isl_basic_set_list_alloc
Line
Count
Source
37
4.38k
{
38
4.38k
  LIST(EL) *list;
39
4.38k
40
4.38k
  if (n < 0)
41
4.38k
    
isl_die0
(ctx, isl_error_invalid,
42
4.38k
      "cannot create list of negative length",
43
4.38k
      return NULL);
44
4.38k
  list = isl_alloc(ctx, LIST(EL),
45
4.38k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
4.38k
  if (!list)
47
0
    return NULL;
48
4.38k
49
4.38k
  list->ctx = ctx;
50
4.38k
  isl_ctx_ref(ctx);
51
4.38k
  list->ref = 1;
52
4.38k
  list->size = n;
53
4.38k
  list->n = 0;
54
4.38k
  return list;
55
4.38k
}
isl_set_list_alloc
Line
Count
Source
37
11.9k
{
38
11.9k
  LIST(EL) *list;
39
11.9k
40
11.9k
  if (n < 0)
41
11.9k
    
isl_die0
(ctx, isl_error_invalid,
42
11.9k
      "cannot create list of negative length",
43
11.9k
      return NULL);
44
11.9k
  list = isl_alloc(ctx, LIST(EL),
45
11.9k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
11.9k
  if (!list)
47
0
    return NULL;
48
11.9k
49
11.9k
  list->ctx = ctx;
50
11.9k
  isl_ctx_ref(ctx);
51
11.9k
  list->ref = 1;
52
11.9k
  list->size = n;
53
11.9k
  list->n = 0;
54
11.9k
  return list;
55
11.9k
}
isl_union_set_list_alloc
Line
Count
Source
37
499
{
38
499
  LIST(EL) *list;
39
499
40
499
  if (n < 0)
41
499
    
isl_die0
(ctx, isl_error_invalid,
42
499
      "cannot create list of negative length",
43
499
      return NULL);
44
499
  list = isl_alloc(ctx, LIST(EL),
45
499
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
499
  if (!list)
47
0
    return NULL;
48
499
49
499
  list->ctx = ctx;
50
499
  isl_ctx_ref(ctx);
51
499
  list->ref = 1;
52
499
  list->size = n;
53
499
  list->n = 0;
54
499
  return list;
55
499
}
isl_val_list_alloc
Line
Count
Source
37
7
{
38
7
  LIST(EL) *list;
39
7
40
7
  if (n < 0)
41
7
    
isl_die0
(ctx, isl_error_invalid,
42
7
      "cannot create list of negative length",
43
7
      return NULL);
44
7
  list = isl_alloc(ctx, LIST(EL),
45
7
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
46
7
  if (!list)
47
0
    return NULL;
48
7
49
7
  list->ctx = ctx;
50
7
  isl_ctx_ref(ctx);
51
7
  list->ref = 1;
52
7
  list->size = n;
53
7
  list->n = 0;
54
7
  return list;
55
7
}
56
57
__isl_give LIST(EL) *FN(LIST(EL),copy)(__isl_keep LIST(EL) *list)
58
112k
{
59
112k
  if (!list)
60
0
    return NULL;
61
112k
62
112k
  list->ref++;
63
112k
  return list;
64
112k
}
Unexecuted instantiation: isl_aff_list_copy
isl_pw_aff_list_copy
Line
Count
Source
58
11.9k
{
59
11.9k
  if (!list)
60
0
    return NULL;
61
11.9k
62
11.9k
  list->ref++;
63
11.9k
  return list;
64
11.9k
}
Unexecuted instantiation: isl_pw_multi_aff_list_copy
Unexecuted instantiation: isl_union_pw_aff_list_copy
Unexecuted instantiation: isl_union_pw_multi_aff_list_copy
Unexecuted instantiation: isl_ast_expr_list_copy
isl_ast_node_list_copy
Line
Count
Source
58
237
{
59
237
  if (!list)
60
0
    return NULL;
61
237
62
237
  list->ref++;
63
237
  return list;
64
237
}
Unexecuted instantiation: isl_ast_graft_list_copy
isl_constraint_list_copy
Line
Count
Source
58
749
{
59
749
  if (!list)
60
0
    return NULL;
61
749
62
749
  list->ref++;
63
749
  return list;
64
749
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_copy
isl_id_list_copy
Line
Count
Source
58
36.5k
{
59
36.5k
  if (!list)
60
0
    return NULL;
61
36.5k
62
36.5k
  list->ref++;
63
36.5k
  return list;
64
36.5k
}
Unexecuted instantiation: isl_basic_map_list_copy
Unexecuted instantiation: isl_map_list_copy
Unexecuted instantiation: isl_union_map_list_copy
Unexecuted instantiation: isl_pw_qpolynomial_list_copy
isl_schedule_tree_list_copy
Line
Count
Source
58
62.9k
{
59
62.9k
  if (!list)
60
0
    return NULL;
61
62.9k
62
62.9k
  list->ref++;
63
62.9k
  return list;
64
62.9k
}
isl_basic_set_list_copy
Line
Count
Source
58
21
{
59
21
  if (!list)
60
0
    return NULL;
61
21
62
21
  list->ref++;
63
21
  return list;
64
21
}
Unexecuted instantiation: isl_set_list_copy
Unexecuted instantiation: isl_union_set_list_copy
Unexecuted instantiation: isl_val_list_copy
65
66
__isl_give LIST(EL) *FN(LIST(EL),dup)(__isl_keep LIST(EL) *list)
67
51.1k
{
68
51.1k
  int i;
69
51.1k
  LIST(EL) *dup;
70
51.1k
71
51.1k
  if (!list)
72
0
    return NULL;
73
51.1k
74
51.1k
  dup = FN(LIST(EL),alloc)(FN(LIST(EL),get_ctx)(list), list->n);
75
51.1k
  if (!dup)
76
0
    return NULL;
77
249k
  
for (i = 0; 51.1k
i < list->n;
++i198k
)
78
198k
    dup = FN(LIST(EL),add)(dup, FN(EL,copy)(list->p[i]));
79
51.1k
  return dup;
80
51.1k
}
Unexecuted instantiation: isl_aff_list_dup
isl_pw_aff_list_dup
Line
Count
Source
67
315
{
68
315
  int i;
69
315
  LIST(EL) *dup;
70
315
71
315
  if (!list)
72
0
    return NULL;
73
315
74
315
  dup = FN(LIST(EL),alloc)(FN(LIST(EL),get_ctx)(list), list->n);
75
315
  if (!dup)
76
0
    return NULL;
77
730
  
for (i = 0; 315
i < list->n;
++i415
)
78
415
    dup = FN(LIST(EL),add)(dup, FN(EL,copy)(list->p[i]));
79
315
  return dup;
80
315
}
Unexecuted instantiation: isl_pw_multi_aff_list_dup
Unexecuted instantiation: isl_union_pw_aff_list_dup
Unexecuted instantiation: isl_union_pw_multi_aff_list_dup
Unexecuted instantiation: isl_ast_expr_list_dup
Unexecuted instantiation: isl_ast_node_list_dup
Unexecuted instantiation: isl_ast_graft_list_dup
isl_constraint_list_dup
Line
Count
Source
67
749
{
68
749
  int i;
69
749
  LIST(EL) *dup;
70
749
71
749
  if (!list)
72
0
    return NULL;
73
749
74
749
  dup = FN(LIST(EL),alloc)(FN(LIST(EL),get_ctx)(list), list->n);
75
749
  if (!dup)
76
0
    return NULL;
77
2.34k
  
for (i = 0; 749
i < list->n;
++i1.59k
)
78
1.59k
    dup = FN(LIST(EL),add)(dup, FN(EL,copy)(list->p[i]));
79
749
  return dup;
80
749
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_dup
Unexecuted instantiation: isl_id_list_dup
Unexecuted instantiation: isl_basic_map_list_dup
Unexecuted instantiation: isl_map_list_dup
Unexecuted instantiation: isl_union_map_list_dup
Unexecuted instantiation: isl_pw_qpolynomial_list_dup
isl_schedule_tree_list_dup
Line
Count
Source
67
50.0k
{
68
50.0k
  int i;
69
50.0k
  LIST(EL) *dup;
70
50.0k
71
50.0k
  if (!list)
72
0
    return NULL;
73
50.0k
74
50.0k
  dup = FN(LIST(EL),alloc)(FN(LIST(EL),get_ctx)(list), list->n);
75
50.0k
  if (!dup)
76
0
    return NULL;
77
246k
  
for (i = 0; 50.0k
i < list->n;
++i196k
)
78
196k
    dup = FN(LIST(EL),add)(dup, FN(EL,copy)(list->p[i]));
79
50.0k
  return dup;
80
50.0k
}
Unexecuted instantiation: isl_basic_set_list_dup
Unexecuted instantiation: isl_set_list_dup
Unexecuted instantiation: isl_union_set_list_dup
Unexecuted instantiation: isl_val_list_dup
81
82
__isl_give LIST(EL) *FN(LIST(EL),cow)(__isl_take LIST(EL) *list)
83
101k
{
84
101k
  if (!list)
85
0
    return NULL;
86
101k
87
101k
  if (list->ref == 1)
88
50.6k
    return list;
89
51.1k
  list->ref--;
90
51.1k
  return FN(LIST(EL),dup)(list);
91
51.1k
}
isl_aff_list_cow
Line
Count
Source
83
2
{
84
2
  if (!list)
85
0
    return NULL;
86
2
87
2
  if (list->ref == 1)
88
2
    return list;
89
0
  list->ref--;
90
0
  return FN(LIST(EL),dup)(list);
91
0
}
isl_pw_aff_list_cow
Line
Count
Source
83
3.54k
{
84
3.54k
  if (!list)
85
0
    return NULL;
86
3.54k
87
3.54k
  if (list->ref == 1)
88
3.22k
    return list;
89
315
  list->ref--;
90
315
  return FN(LIST(EL),dup)(list);
91
315
}
Unexecuted instantiation: isl_pw_multi_aff_list_cow
Unexecuted instantiation: isl_union_pw_aff_list_cow
Unexecuted instantiation: isl_union_pw_multi_aff_list_cow
Unexecuted instantiation: isl_ast_expr_list_cow
Unexecuted instantiation: isl_ast_node_list_cow
isl_ast_graft_list_cow
Line
Count
Source
83
53
{
84
53
  if (!list)
85
0
    return NULL;
86
53
87
53
  if (list->ref == 1)
88
53
    return list;
89
0
  list->ref--;
90
0
  return FN(LIST(EL),dup)(list);
91
0
}
isl_constraint_list_cow
Line
Count
Source
83
2.38k
{
84
2.38k
  if (!list)
85
0
    return NULL;
86
2.38k
87
2.38k
  if (list->ref == 1)
88
1.63k
    return list;
89
749
  list->ref--;
90
749
  return FN(LIST(EL),dup)(list);
91
749
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_cow
isl_id_list_cow
Line
Count
Source
83
1
{
84
1
  if (!list)
85
0
    return NULL;
86
1
87
1
  if (list->ref == 1)
88
1
    return list;
89
0
  list->ref--;
90
0
  return FN(LIST(EL),dup)(list);
91
0
}
isl_basic_map_list_cow
Line
Count
Source
83
1.55k
{
84
1.55k
  if (!list)
85
0
    return NULL;
86
1.55k
87
1.55k
  if (list->ref == 1)
88
1.55k
    return list;
89
0
  list->ref--;
90
0
  return FN(LIST(EL),dup)(list);
91
0
}
Unexecuted instantiation: isl_map_list_cow
isl_union_map_list_cow
Line
Count
Source
83
6
{
84
6
  if (!list)
85
0
    return NULL;
86
6
87
6
  if (list->ref == 1)
88
6
    return list;
89
0
  list->ref--;
90
0
  return FN(LIST(EL),dup)(list);
91
0
}
Unexecuted instantiation: isl_pw_qpolynomial_list_cow
isl_schedule_tree_list_cow
Line
Count
Source
83
85.6k
{
84
85.6k
  if (!list)
85
0
    return NULL;
86
85.6k
87
85.6k
  if (list->ref == 1)
88
35.5k
    return list;
89
50.0k
  list->ref--;
90
50.0k
  return FN(LIST(EL),dup)(list);
91
50.0k
}
isl_basic_set_list_cow
Line
Count
Source
83
5.28k
{
84
5.28k
  if (!list)
85
0
    return NULL;
86
5.28k
87
5.28k
  if (list->ref == 1)
88
5.28k
    return list;
89
0
  list->ref--;
90
0
  return FN(LIST(EL),dup)(list);
91
0
}
isl_set_list_cow
Line
Count
Source
83
2.01k
{
84
2.01k
  if (!list)
85
0
    return NULL;
86
2.01k
87
2.01k
  if (list->ref == 1)
88
2.01k
    return list;
89
0
  list->ref--;
90
0
  return FN(LIST(EL),dup)(list);
91
0
}
isl_union_set_list_cow
Line
Count
Source
83
1.29k
{
84
1.29k
  if (!list)
85
0
    return NULL;
86
1.29k
87
1.29k
  if (list->ref == 1)
88
1.29k
    return list;
89
0
  list->ref--;
90
0
  return FN(LIST(EL),dup)(list);
91
0
}
Unexecuted instantiation: isl_val_list_cow
92
93
/* Make sure "list" has room for at least "n" more pieces.
94
 * Always return a list with a single reference.
95
 *
96
 * If there is only one reference to list, we extend it in place.
97
 * Otherwise, we create a new LIST(EL) and copy the elements.
98
 */
99
static __isl_give LIST(EL) *FN(LIST(EL),grow)(__isl_take LIST(EL) *list, int n)
100
386k
{
101
386k
  isl_ctx *ctx;
102
386k
  int i, new_size;
103
386k
  LIST(EL) *res;
104
386k
105
386k
  if (!list)
106
9
    return NULL;
107
386k
  if (list->ref == 1 && 
list->n + n <= list->size377k
)
108
363k
    return list;
109
23.5k
110
23.5k
  ctx = FN(LIST(EL),get_ctx)(list);
111
23.5k
  new_size = ((list->n + n + 1) * 3) / 2;
112
23.5k
  if (list->ref == 1) {
113
14.0k
    res = isl_realloc(ctx, list, LIST(EL),
114
14.0k
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
14.0k
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
14.0k
    res->size = new_size;
118
14.0k
    return res;
119
14.0k
  }
120
9.50k
121
9.50k
  if (list->n + n <= list->size && 
list->size < new_size3.49k
)
122
3.42k
    new_size = list->size;
123
9.50k
124
9.50k
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
9.50k
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
9.50k
128
42.4k
  
for (i = 0; 9.50k
i < list->n;
++i32.9k
)
129
32.9k
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
9.50k
131
9.50k
  FN(LIST(EL),free)(list);
132
9.50k
  return res;
133
9.50k
}
isl_aff.c:isl_aff_list_grow
Line
Count
Source
100
8.66k
{
101
8.66k
  isl_ctx *ctx;
102
8.66k
  int i, new_size;
103
8.66k
  LIST(EL) *res;
104
8.66k
105
8.66k
  if (!list)
106
0
    return NULL;
107
8.66k
  if (list->ref == 1 && list->n + n <= list->size)
108
8.64k
    return list;
109
20
110
20
  ctx = FN(LIST(EL),get_ctx)(list);
111
20
  new_size = ((list->n + n + 1) * 3) / 2;
112
20
  if (list->ref == 1) {
113
20
    res = isl_realloc(ctx, list, LIST(EL),
114
20
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
20
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
20
    res->size = new_size;
118
20
    return res;
119
20
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_aff.c:isl_pw_aff_list_grow
Line
Count
Source
100
20.0k
{
101
20.0k
  isl_ctx *ctx;
102
20.0k
  int i, new_size;
103
20.0k
  LIST(EL) *res;
104
20.0k
105
20.0k
  if (!list)
106
0
    return NULL;
107
20.0k
  if (list->ref == 1 && list->n + n <= list->size)
108
14.4k
    return list;
109
5.64k
110
5.64k
  ctx = FN(LIST(EL),get_ctx)(list);
111
5.64k
  new_size = ((list->n + n + 1) * 3) / 2;
112
5.64k
  if (list->ref == 1) {
113
5.64k
    res = isl_realloc(ctx, list, LIST(EL),
114
5.64k
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
5.64k
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
5.64k
    res->size = new_size;
118
5.64k
    return res;
119
5.64k
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_grow
isl_aff.c:isl_union_pw_aff_list_grow
Line
Count
Source
100
144
{
101
144
  isl_ctx *ctx;
102
144
  int i, new_size;
103
144
  LIST(EL) *res;
104
144
105
144
  if (!list)
106
0
    return NULL;
107
144
  if (list->ref == 1 && list->n + n <= list->size)
108
28
    return list;
109
116
110
116
  ctx = FN(LIST(EL),get_ctx)(list);
111
116
  new_size = ((list->n + n + 1) * 3) / 2;
112
116
  if (list->ref == 1) {
113
116
    res = isl_realloc(ctx, list, LIST(EL),
114
116
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
116
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
116
    res->size = new_size;
118
116
    return res;
119
116
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_aff.c:isl_union_pw_multi_aff_list_grow
Line
Count
Source
100
8
{
101
8
  isl_ctx *ctx;
102
8
  int i, new_size;
103
8
  LIST(EL) *res;
104
8
105
8
  if (!list)
106
0
    return NULL;
107
8
  if (list->ref == 1 && list->n + n <= list->size)
108
8
    return list;
109
0
110
0
  ctx = FN(LIST(EL),get_ctx)(list);
111
0
  new_size = ((list->n + n + 1) * 3) / 2;
112
0
  if (list->ref == 1) {
113
0
    res = isl_realloc(ctx, list, LIST(EL),
114
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
0
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
0
    res->size = new_size;
118
0
    return res;
119
0
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_grow
isl_ast.c:isl_ast_node_list_grow
Line
Count
Source
100
6.41k
{
101
6.41k
  isl_ctx *ctx;
102
6.41k
  int i, new_size;
103
6.41k
  LIST(EL) *res;
104
6.41k
105
6.41k
  if (!list)
106
0
    return NULL;
107
6.41k
  if (list->ref == 1 && list->n + n <= list->size)
108
6.32k
    return list;
109
94
110
94
  ctx = FN(LIST(EL),get_ctx)(list);
111
94
  new_size = ((list->n + n + 1) * 3) / 2;
112
94
  if (list->ref == 1) {
113
94
    res = isl_realloc(ctx, list, LIST(EL),
114
94
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
94
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
94
    res->size = new_size;
118
94
    return res;
119
94
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_ast_graft.c:isl_ast_graft_list_grow
Line
Count
Source
100
17.4k
{
101
17.4k
  isl_ctx *ctx;
102
17.4k
  int i, new_size;
103
17.4k
  LIST(EL) *res;
104
17.4k
105
17.4k
  if (!list)
106
0
    return NULL;
107
17.4k
  if (list->ref == 1 && list->n + n <= list->size)
108
17.4k
    return list;
109
0
110
0
  ctx = FN(LIST(EL),get_ctx)(list);
111
0
  new_size = ((list->n + n + 1) * 3) / 2;
112
0
  if (list->ref == 1) {
113
0
    res = isl_realloc(ctx, list, LIST(EL),
114
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
0
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
0
    res->size = new_size;
118
0
    return res;
119
0
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_constraint.c:isl_constraint_list_grow
Line
Count
Source
100
3.87k
{
101
3.87k
  isl_ctx *ctx;
102
3.87k
  int i, new_size;
103
3.87k
  LIST(EL) *res;
104
3.87k
105
3.87k
  if (!list)
106
0
    return NULL;
107
3.87k
  if (list->ref == 1 && list->n + n <= list->size)
108
3.87k
    return list;
109
0
110
0
  ctx = FN(LIST(EL),get_ctx)(list);
111
0
  new_size = ((list->n + n + 1) * 3) / 2;
112
0
  if (list->ref == 1) {
113
0
    res = isl_realloc(ctx, list, LIST(EL),
114
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
0
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
0
    res->size = new_size;
118
0
    return res;
119
0
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_grow
isl_id.c:isl_id_list_grow
Line
Count
Source
100
2.61k
{
101
2.61k
  isl_ctx *ctx;
102
2.61k
  int i, new_size;
103
2.61k
  LIST(EL) *res;
104
2.61k
105
2.61k
  if (!list)
106
0
    return NULL;
107
2.61k
  if (list->ref == 1 && list->n + n <= list->size)
108
2.61k
    return list;
109
0
110
0
  ctx = FN(LIST(EL),get_ctx)(list);
111
0
  new_size = ((list->n + n + 1) * 3) / 2;
112
0
  if (list->ref == 1) {
113
0
    res = isl_realloc(ctx, list, LIST(EL),
114
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
0
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
0
    res->size = new_size;
118
0
    return res;
119
0
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_map_list.c:isl_basic_map_list_grow
Line
Count
Source
100
22.5k
{
101
22.5k
  isl_ctx *ctx;
102
22.5k
  int i, new_size;
103
22.5k
  LIST(EL) *res;
104
22.5k
105
22.5k
  if (!list)
106
0
    return NULL;
107
22.5k
  if (list->ref == 1 && list->n + n <= list->size)
108
22.5k
    return list;
109
0
110
0
  ctx = FN(LIST(EL),get_ctx)(list);
111
0
  new_size = ((list->n + n + 1) * 3) / 2;
112
0
  if (list->ref == 1) {
113
0
    res = isl_realloc(ctx, list, LIST(EL),
114
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
0
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
0
    res->size = new_size;
118
0
    return res;
119
0
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_map_list.c:isl_map_list_grow
Line
Count
Source
100
14.2k
{
101
14.2k
  isl_ctx *ctx;
102
14.2k
  int i, new_size;
103
14.2k
  LIST(EL) *res;
104
14.2k
105
14.2k
  if (!list)
106
9
    return NULL;
107
14.2k
  if (list->ref == 1 && list->n + n <= list->size)
108
14.2k
    return list;
109
0
110
0
  ctx = FN(LIST(EL),get_ctx)(list);
111
0
  new_size = ((list->n + n + 1) * 3) / 2;
112
0
  if (list->ref == 1) {
113
0
    res = isl_realloc(ctx, list, LIST(EL),
114
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
0
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
0
    res->size = new_size;
118
0
    return res;
119
0
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_map_list.c:isl_union_map_list_grow
Line
Count
Source
100
5
{
101
5
  isl_ctx *ctx;
102
5
  int i, new_size;
103
5
  LIST(EL) *res;
104
5
105
5
  if (!list)
106
0
    return NULL;
107
5
  if (list->ref == 1 && list->n + n <= list->size)
108
4
    return list;
109
1
110
1
  ctx = FN(LIST(EL),get_ctx)(list);
111
1
  new_size = ((list->n + n + 1) * 3) / 2;
112
1
  if (list->ref == 1) {
113
1
    res = isl_realloc(ctx, list, LIST(EL),
114
1
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
1
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
1
    res->size = new_size;
118
1
    return res;
119
1
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_grow
isl_schedule_tree.c:isl_schedule_tree_list_grow
Line
Count
Source
100
268k
{
101
268k
  isl_ctx *ctx;
102
268k
  int i, new_size;
103
268k
  LIST(EL) *res;
104
268k
105
268k
  if (!list)
106
0
    return NULL;
107
268k
  if (list->ref == 1 && 
list->n + n <= list->size258k
)
108
250k
    return list;
109
17.3k
110
17.3k
  ctx = FN(LIST(EL),get_ctx)(list);
111
17.3k
  new_size = ((list->n + n + 1) * 3) / 2;
112
17.3k
  if (list->ref == 1) {
113
7.82k
    res = isl_realloc(ctx, list, LIST(EL),
114
7.82k
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
7.82k
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
7.82k
    res->size = new_size;
118
7.82k
    return res;
119
7.82k
  }
120
9.50k
121
9.50k
  if (list->n + n <= list->size && 
list->size < new_size3.49k
)
122
3.42k
    new_size = list->size;
123
9.50k
124
9.50k
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
9.50k
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
9.50k
128
42.4k
  
for (i = 0; 9.50k
i < list->n;
++i32.9k
)
129
32.9k
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
9.50k
131
9.50k
  FN(LIST(EL),free)(list);
132
9.50k
  return res;
133
9.50k
}
isl_set_list.c:isl_basic_set_list_grow
Line
Count
Source
100
5.22k
{
101
5.22k
  isl_ctx *ctx;
102
5.22k
  int i, new_size;
103
5.22k
  LIST(EL) *res;
104
5.22k
105
5.22k
  if (!list)
106
0
    return NULL;
107
5.22k
  if (list->ref == 1 && list->n + n <= list->size)
108
5.21k
    return list;
109
2
110
2
  ctx = FN(LIST(EL),get_ctx)(list);
111
2
  new_size = ((list->n + n + 1) * 3) / 2;
112
2
  if (list->ref == 1) {
113
2
    res = isl_realloc(ctx, list, LIST(EL),
114
2
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
2
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
2
    res->size = new_size;
118
2
    return res;
119
2
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_set_list.c:isl_set_list_grow
Line
Count
Source
100
15.3k
{
101
15.3k
  isl_ctx *ctx;
102
15.3k
  int i, new_size;
103
15.3k
  LIST(EL) *res;
104
15.3k
105
15.3k
  if (!list)
106
0
    return NULL;
107
15.3k
  if (list->ref == 1 && list->n + n <= list->size)
108
15.3k
    return list;
109
20
110
20
  ctx = FN(LIST(EL),get_ctx)(list);
111
20
  new_size = ((list->n + n + 1) * 3) / 2;
112
20
  if (list->ref == 1) {
113
20
    res = isl_realloc(ctx, list, LIST(EL),
114
20
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
20
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
20
    res->size = new_size;
118
20
    return res;
119
20
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_set_list.c:isl_union_set_list_grow
Line
Count
Source
100
1.87k
{
101
1.87k
  isl_ctx *ctx;
102
1.87k
  int i, new_size;
103
1.87k
  LIST(EL) *res;
104
1.87k
105
1.87k
  if (!list)
106
0
    return NULL;
107
1.87k
  if (list->ref == 1 && list->n + n <= list->size)
108
1.60k
    return list;
109
271
110
271
  ctx = FN(LIST(EL),get_ctx)(list);
111
271
  new_size = ((list->n + n + 1) * 3) / 2;
112
271
  if (list->ref == 1) {
113
271
    res = isl_realloc(ctx, list, LIST(EL),
114
271
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
271
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
271
    res->size = new_size;
118
271
    return res;
119
271
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
isl_val.c:isl_val_list_grow
Line
Count
Source
100
17
{
101
17
  isl_ctx *ctx;
102
17
  int i, new_size;
103
17
  LIST(EL) *res;
104
17
105
17
  if (!list)
106
0
    return NULL;
107
17
  if (list->ref == 1 && list->n + n <= list->size)
108
9
    return list;
109
8
110
8
  ctx = FN(LIST(EL),get_ctx)(list);
111
8
  new_size = ((list->n + n + 1) * 3) / 2;
112
8
  if (list->ref == 1) {
113
8
    res = isl_realloc(ctx, list, LIST(EL),
114
8
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
115
8
    if (!res)
116
0
      return FN(LIST(EL),free)(list);
117
8
    res->size = new_size;
118
8
    return res;
119
8
  }
120
0
121
0
  if (list->n + n <= list->size && list->size < new_size)
122
0
    new_size = list->size;
123
0
124
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
125
0
  if (!res)
126
0
    return FN(LIST(EL),free)(list);
127
0
128
0
  for (i = 0; i < list->n; ++i)
129
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
130
0
131
0
  FN(LIST(EL),free)(list);
132
0
  return res;
133
0
}
134
135
/* Check that "index" is a valid position in "list".
136
 */
137
static isl_stat FN(LIST(EL),check_index)(__isl_keep LIST(EL) *list, int index)
138
711k
{
139
711k
  if (!list)
140
0
    return isl_stat_error;
141
711k
  if (index < 0 || index >= list->n)
142
711k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
711k
      "index out of bounds", return isl_stat_error);
144
711k
  return isl_stat_ok;
145
711k
}
isl_aff.c:isl_aff_list_check_index
Line
Count
Source
138
9.10k
{
139
9.10k
  if (!list)
140
0
    return isl_stat_error;
141
9.10k
  if (index < 0 || index >= list->n)
142
9.10k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
9.10k
      "index out of bounds", return isl_stat_error);
144
9.10k
  return isl_stat_ok;
145
9.10k
}
isl_aff.c:isl_pw_aff_list_check_index
Line
Count
Source
138
25.8k
{
139
25.8k
  if (!list)
140
0
    return isl_stat_error;
141
25.8k
  if (index < 0 || index >= list->n)
142
25.8k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
25.8k
      "index out of bounds", return isl_stat_error);
144
25.8k
  return isl_stat_ok;
145
25.8k
}
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_check_index
isl_aff.c:isl_union_pw_aff_list_check_index
Line
Count
Source
138
288
{
139
288
  if (!list)
140
0
    return isl_stat_error;
141
288
  if (index < 0 || index >= list->n)
142
288
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
288
      "index out of bounds", return isl_stat_error);
144
288
  return isl_stat_ok;
145
288
}
isl_aff.c:isl_union_pw_multi_aff_list_check_index
Line
Count
Source
138
8
{
139
8
  if (!list)
140
0
    return isl_stat_error;
141
8
  if (index < 0 || index >= list->n)
142
8
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
8
      "index out of bounds", return isl_stat_error);
144
8
  return isl_stat_ok;
145
8
}
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_check_index
isl_ast.c:isl_ast_node_list_check_index
Line
Count
Source
138
4.63k
{
139
4.63k
  if (!list)
140
0
    return isl_stat_error;
141
4.63k
  if (index < 0 || index >= list->n)
142
4.63k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
4.63k
      "index out of bounds", return isl_stat_error);
144
4.63k
  return isl_stat_ok;
145
4.63k
}
isl_ast_graft.c:isl_ast_graft_list_check_index
Line
Count
Source
138
42.4k
{
139
42.4k
  if (!list)
140
0
    return isl_stat_error;
141
42.4k
  if (index < 0 || index >= list->n)
142
42.4k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
42.4k
      "index out of bounds", return isl_stat_error);
144
42.4k
  return isl_stat_ok;
145
42.4k
}
isl_constraint.c:isl_constraint_list_check_index
Line
Count
Source
138
2.22k
{
139
2.22k
  if (!list)
140
0
    return isl_stat_error;
141
2.22k
  if (index < 0 || index >= list->n)
142
2.22k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
2.22k
      "index out of bounds", return isl_stat_error);
144
2.22k
  return isl_stat_ok;
145
2.22k
}
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_check_index
isl_id.c:isl_id_list_check_index
Line
Count
Source
138
24.2k
{
139
24.2k
  if (!list)
140
0
    return isl_stat_error;
141
24.2k
  if (index < 0 || index >= list->n)
142
24.2k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
24.2k
      "index out of bounds", return isl_stat_error);
144
24.2k
  return isl_stat_ok;
145
24.2k
}
isl_map_list.c:isl_basic_map_list_check_index
Line
Count
Source
138
22.3k
{
139
22.3k
  if (!list)
140
0
    return isl_stat_error;
141
22.3k
  if (index < 0 || index >= list->n)
142
22.3k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
22.3k
      "index out of bounds", return isl_stat_error);
144
22.3k
  return isl_stat_ok;
145
22.3k
}
isl_map_list.c:isl_map_list_check_index
Line
Count
Source
138
10.5k
{
139
10.5k
  if (!list)
140
0
    return isl_stat_error;
141
10.5k
  if (index < 0 || index >= list->n)
142
10.5k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
10.5k
      "index out of bounds", return isl_stat_error);
144
10.5k
  return isl_stat_ok;
145
10.5k
}
isl_map_list.c:isl_union_map_list_check_index
Line
Count
Source
138
11
{
139
11
  if (!list)
140
0
    return isl_stat_error;
141
11
  if (index < 0 || index >= list->n)
142
11
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
11
      "index out of bounds", return isl_stat_error);
144
11
  return isl_stat_ok;
145
11
}
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_check_index
isl_schedule_tree.c:isl_schedule_tree_list_check_index
Line
Count
Source
138
519k
{
139
519k
  if (!list)
140
0
    return isl_stat_error;
141
519k
  if (index < 0 || index >= list->n)
142
519k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
519k
      "index out of bounds", return isl_stat_error);
144
519k
  return isl_stat_ok;
145
519k
}
isl_set_list.c:isl_basic_set_list_check_index
Line
Count
Source
138
20.6k
{
139
20.6k
  if (!list)
140
0
    return isl_stat_error;
141
20.6k
  if (index < 0 || index >= list->n)
142
20.6k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
20.6k
      "index out of bounds", return isl_stat_error);
144
20.6k
  return isl_stat_ok;
145
20.6k
}
isl_set_list.c:isl_set_list_check_index
Line
Count
Source
138
25.9k
{
139
25.9k
  if (!list)
140
0
    return isl_stat_error;
141
25.9k
  if (index < 0 || index >= list->n)
142
25.9k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
25.9k
      "index out of bounds", return isl_stat_error);
144
25.9k
  return isl_stat_ok;
145
25.9k
}
isl_set_list.c:isl_union_set_list_check_index
Line
Count
Source
138
2.94k
{
139
2.94k
  if (!list)
140
0
    return isl_stat_error;
141
2.94k
  if (index < 0 || index >= list->n)
142
2.94k
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
2.94k
      "index out of bounds", return isl_stat_error);
144
2.94k
  return isl_stat_ok;
145
2.94k
}
isl_val.c:isl_val_list_check_index
Line
Count
Source
138
34
{
139
34
  if (!list)
140
0
    return isl_stat_error;
141
34
  if (index < 0 || index >= list->n)
142
34
    
isl_die0
(FN(LIST(EL),get_ctx)(list), isl_error_invalid,
143
34
      "index out of bounds", return isl_stat_error);
144
34
  return isl_stat_ok;
145
34
}
146
147
__isl_give LIST(EL) *FN(LIST(EL),add)(__isl_take LIST(EL) *list,
148
  __isl_take struct EL *el)
149
386k
{
150
386k
  list = FN(LIST(EL),grow)(list, 1);
151
386k
  if (!list || 
!el386k
)
152
9
    goto error;
153
386k
  list->p[list->n] = el;
154
386k
  list->n++;
155
386k
  return list;
156
386k
error:
157
9
  FN(EL,free)(el);
158
9
  FN(LIST(EL),free)(list);
159
9
  return NULL;
160
386k
}
isl_aff_list_add
Line
Count
Source
149
8.66k
{
150
8.66k
  list = FN(LIST(EL),grow)(list, 1);
151
8.66k
  if (!list || !el)
152
0
    goto error;
153
8.66k
  list->p[list->n] = el;
154
8.66k
  list->n++;
155
8.66k
  return list;
156
8.66k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
8.66k
}
isl_pw_aff_list_add
Line
Count
Source
149
20.0k
{
150
20.0k
  list = FN(LIST(EL),grow)(list, 1);
151
20.0k
  if (!list || !el)
152
0
    goto error;
153
20.0k
  list->p[list->n] = el;
154
20.0k
  list->n++;
155
20.0k
  return list;
156
20.0k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
20.0k
}
Unexecuted instantiation: isl_pw_multi_aff_list_add
isl_union_pw_aff_list_add
Line
Count
Source
149
144
{
150
144
  list = FN(LIST(EL),grow)(list, 1);
151
144
  if (!list || !el)
152
0
    goto error;
153
144
  list->p[list->n] = el;
154
144
  list->n++;
155
144
  return list;
156
144
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
144
}
isl_union_pw_multi_aff_list_add
Line
Count
Source
149
8
{
150
8
  list = FN(LIST(EL),grow)(list, 1);
151
8
  if (!list || !el)
152
0
    goto error;
153
8
  list->p[list->n] = el;
154
8
  list->n++;
155
8
  return list;
156
8
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
8
}
Unexecuted instantiation: isl_ast_expr_list_add
isl_ast_node_list_add
Line
Count
Source
149
6.41k
{
150
6.41k
  list = FN(LIST(EL),grow)(list, 1);
151
6.41k
  if (!list || !el)
152
0
    goto error;
153
6.41k
  list->p[list->n] = el;
154
6.41k
  list->n++;
155
6.41k
  return list;
156
6.41k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
6.41k
}
isl_ast_graft_list_add
Line
Count
Source
149
17.4k
{
150
17.4k
  list = FN(LIST(EL),grow)(list, 1);
151
17.4k
  if (!list || !el)
152
0
    goto error;
153
17.4k
  list->p[list->n] = el;
154
17.4k
  list->n++;
155
17.4k
  return list;
156
17.4k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
17.4k
}
isl_constraint_list_add
Line
Count
Source
149
3.87k
{
150
3.87k
  list = FN(LIST(EL),grow)(list, 1);
151
3.87k
  if (!list || !el)
152
0
    goto error;
153
3.87k
  list->p[list->n] = el;
154
3.87k
  list->n++;
155
3.87k
  return list;
156
3.87k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
3.87k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_add
isl_id_list_add
Line
Count
Source
149
2.61k
{
150
2.61k
  list = FN(LIST(EL),grow)(list, 1);
151
2.61k
  if (!list || !el)
152
0
    goto error;
153
2.61k
  list->p[list->n] = el;
154
2.61k
  list->n++;
155
2.61k
  return list;
156
2.61k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
2.61k
}
isl_basic_map_list_add
Line
Count
Source
149
22.5k
{
150
22.5k
  list = FN(LIST(EL),grow)(list, 1);
151
22.5k
  if (!list || !el)
152
0
    goto error;
153
22.5k
  list->p[list->n] = el;
154
22.5k
  list->n++;
155
22.5k
  return list;
156
22.5k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
22.5k
}
isl_map_list_add
Line
Count
Source
149
14.2k
{
150
14.2k
  list = FN(LIST(EL),grow)(list, 1);
151
14.2k
  if (!list || 
!el14.2k
)
152
9
    goto error;
153
14.2k
  list->p[list->n] = el;
154
14.2k
  list->n++;
155
14.2k
  return list;
156
14.2k
error:
157
9
  FN(EL,free)(el);
158
9
  FN(LIST(EL),free)(list);
159
9
  return NULL;
160
14.2k
}
isl_union_map_list_add
Line
Count
Source
149
5
{
150
5
  list = FN(LIST(EL),grow)(list, 1);
151
5
  if (!list || !el)
152
0
    goto error;
153
5
  list->p[list->n] = el;
154
5
  list->n++;
155
5
  return list;
156
5
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
5
}
Unexecuted instantiation: isl_pw_qpolynomial_list_add
isl_schedule_tree_list_add
Line
Count
Source
149
268k
{
150
268k
  list = FN(LIST(EL),grow)(list, 1);
151
268k
  if (!list || !el)
152
0
    goto error;
153
268k
  list->p[list->n] = el;
154
268k
  list->n++;
155
268k
  return list;
156
268k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
268k
}
isl_basic_set_list_add
Line
Count
Source
149
5.22k
{
150
5.22k
  list = FN(LIST(EL),grow)(list, 1);
151
5.22k
  if (!list || !el)
152
0
    goto error;
153
5.22k
  list->p[list->n] = el;
154
5.22k
  list->n++;
155
5.22k
  return list;
156
5.22k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
5.22k
}
isl_set_list_add
Line
Count
Source
149
15.3k
{
150
15.3k
  list = FN(LIST(EL),grow)(list, 1);
151
15.3k
  if (!list || !el)
152
0
    goto error;
153
15.3k
  list->p[list->n] = el;
154
15.3k
  list->n++;
155
15.3k
  return list;
156
15.3k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
15.3k
}
isl_union_set_list_add
Line
Count
Source
149
1.87k
{
150
1.87k
  list = FN(LIST(EL),grow)(list, 1);
151
1.87k
  if (!list || !el)
152
0
    goto error;
153
1.87k
  list->p[list->n] = el;
154
1.87k
  list->n++;
155
1.87k
  return list;
156
1.87k
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
1.87k
}
isl_val_list_add
Line
Count
Source
149
17
{
150
17
  list = FN(LIST(EL),grow)(list, 1);
151
17
  if (!list || !el)
152
0
    goto error;
153
17
  list->p[list->n] = el;
154
17
  list->n++;
155
17
  return list;
156
17
error:
157
0
  FN(EL,free)(el);
158
0
  FN(LIST(EL),free)(list);
159
0
  return NULL;
160
17
}
161
162
/* Remove the "n" elements starting at "first" from "list".
163
 */
164
__isl_give LIST(EL) *FN(LIST(EL),drop)(__isl_take LIST(EL) *list,
165
  unsigned first, unsigned n)
166
60.5k
{
167
60.5k
  int i;
168
60.5k
169
60.5k
  if (!list)
170
0
    return NULL;
171
60.5k
  if (first + n > list->n || first + n < first)
172
60.5k
    
isl_die0
(list->ctx, isl_error_invalid,
173
60.5k
      "index out of bounds", return FN(LIST(EL),free)(list));
174
60.5k
  if (n == 0)
175
700
    return list;
176
59.8k
  list = FN(LIST(EL),cow)(list);
177
59.8k
  if (!list)
178
0
    return NULL;
179
184k
  
for (i = 0; 59.8k
i < n;
++i124k
)
180
124k
    FN(EL,free)(list->p[first + i]);
181
62.4k
  for (i = first; i + n < list->n; 
++i2.61k
)
182
2.61k
    list->p[i] = list->p[i + n];
183
59.8k
  list->n -= n;
184
59.8k
  return list;
185
59.8k
}
Unexecuted instantiation: isl_aff_list_drop
Unexecuted instantiation: isl_pw_aff_list_drop
Unexecuted instantiation: isl_pw_multi_aff_list_drop
Unexecuted instantiation: isl_union_pw_aff_list_drop
Unexecuted instantiation: isl_union_pw_multi_aff_list_drop
Unexecuted instantiation: isl_ast_expr_list_drop
Unexecuted instantiation: isl_ast_node_list_drop
Unexecuted instantiation: isl_ast_graft_list_drop
isl_constraint_list_drop
Line
Count
Source
166
2.24k
{
167
2.24k
  int i;
168
2.24k
169
2.24k
  if (!list)
170
0
    return NULL;
171
2.24k
  if (first + n > list->n || first + n < first)
172
2.24k
    
isl_die0
(list->ctx, isl_error_invalid,
173
2.24k
      "index out of bounds", return FN(LIST(EL),free)(list));
174
2.24k
  if (n == 0)
175
700
    return list;
176
1.54k
  list = FN(LIST(EL),cow)(list);
177
1.54k
  if (!list)
178
0
    return NULL;
179
3.19k
  
for (i = 0; 1.54k
i < n;
++i1.65k
)
180
1.65k
    FN(EL,free)(list->p[first + i]);
181
2.48k
  for (i = first; i + n < list->n; 
++i933
)
182
933
    list->p[i] = list->p[i + n];
183
1.54k
  list->n -= n;
184
1.54k
  return list;
185
1.54k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_drop
isl_id_list_drop
Line
Count
Source
166
1
{
167
1
  int i;
168
1
169
1
  if (!list)
170
0
    return NULL;
171
1
  if (first + n > list->n || first + n < first)
172
1
    
isl_die0
(list->ctx, isl_error_invalid,
173
1
      "index out of bounds", return FN(LIST(EL),free)(list));
174
1
  if (n == 0)
175
0
    return list;
176
1
  list = FN(LIST(EL),cow)(list);
177
1
  if (!list)
178
0
    return NULL;
179
2
  
for (i = 0; 1
i < n;
++i1
)
180
1
    FN(EL,free)(list->p[first + i]);
181
3
  for (i = first; i + n < list->n; 
++i2
)
182
2
    list->p[i] = list->p[i + n];
183
1
  list->n -= n;
184
1
  return list;
185
1
}
Unexecuted instantiation: isl_basic_map_list_drop
Unexecuted instantiation: isl_map_list_drop
isl_union_map_list_drop
Line
Count
Source
166
4
{
167
4
  int i;
168
4
169
4
  if (!list)
170
0
    return NULL;
171
4
  if (first + n > list->n || first + n < first)
172
4
    
isl_die0
(list->ctx, isl_error_invalid,
173
4
      "index out of bounds", return FN(LIST(EL),free)(list));
174
4
  if (n == 0)
175
0
    return list;
176
4
  list = FN(LIST(EL),cow)(list);
177
4
  if (!list)
178
0
    return NULL;
179
8
  
for (i = 0; 4
i < n;
++i4
)
180
4
    FN(EL,free)(list->p[first + i]);
181
4
  for (i = first; i + n < list->n; 
++i0
)
182
0
    list->p[i] = list->p[i + n];
183
4
  list->n -= n;
184
4
  return list;
185
4
}
Unexecuted instantiation: isl_pw_qpolynomial_list_drop
isl_schedule_tree_list_drop
Line
Count
Source
166
57.0k
{
167
57.0k
  int i;
168
57.0k
169
57.0k
  if (!list)
170
0
    return NULL;
171
57.0k
  if (first + n > list->n || first + n < first)
172
57.0k
    
isl_die0
(list->ctx, isl_error_invalid,
173
57.0k
      "index out of bounds", return FN(LIST(EL),free)(list));
174
57.0k
  if (n == 0)
175
0
    return list;
176
57.0k
  list = FN(LIST(EL),cow)(list);
177
57.0k
  if (!list)
178
0
    return NULL;
179
178k
  
for (i = 0; 57.0k
i < n;
++i121k
)
180
121k
    FN(EL,free)(list->p[first + i]);
181
58.7k
  for (i = first; i + n < list->n; 
++i1.67k
)
182
1.67k
    list->p[i] = list->p[i + n];
183
57.0k
  list->n -= n;
184
57.0k
  return list;
185
57.0k
}
isl_basic_set_list_drop
Line
Count
Source
166
4
{
167
4
  int i;
168
4
169
4
  if (!list)
170
0
    return NULL;
171
4
  if (first + n > list->n || first + n < first)
172
4
    
isl_die0
(list->ctx, isl_error_invalid,
173
4
      "index out of bounds", return FN(LIST(EL),free)(list));
174
4
  if (n == 0)
175
0
    return list;
176
4
  list = FN(LIST(EL),cow)(list);
177
4
  if (!list)
178
0
    return NULL;
179
12
  
for (i = 0; 4
i < n;
++i8
)
180
8
    FN(EL,free)(list->p[first + i]);
181
4
  for (i = first; i + n < list->n; 
++i0
)
182
0
    list->p[i] = list->p[i + n];
183
4
  list->n -= n;
184
4
  return list;
185
4
}
Unexecuted instantiation: isl_set_list_drop
isl_union_set_list_drop
Line
Count
Source
166
1.29k
{
167
1.29k
  int i;
168
1.29k
169
1.29k
  if (!list)
170
0
    return NULL;
171
1.29k
  if (first + n > list->n || first + n < first)
172
1.29k
    
isl_die0
(list->ctx, isl_error_invalid,
173
1.29k
      "index out of bounds", return FN(LIST(EL),free)(list));
174
1.29k
  if (n == 0)
175
0
    return list;
176
1.29k
  list = FN(LIST(EL),cow)(list);
177
1.29k
  if (!list)
178
0
    return NULL;
179
2.58k
  
for (i = 0; 1.29k
i < n;
++i1.29k
)
180
1.29k
    FN(EL,free)(list->p[first + i]);
181
1.29k
  for (i = first; i + n < list->n; 
++i0
)
182
0
    list->p[i] = list->p[i + n];
183
1.29k
  list->n -= n;
184
1.29k
  return list;
185
1.29k
}
Unexecuted instantiation: isl_val_list_drop
186
187
/* Insert "el" at position "pos" in "list".
188
 *
189
 * If there is only one reference to "list" and if it already has space
190
 * for one extra element, we insert it directly into "list".
191
 * Otherwise, we create a new list consisting of "el" and copied
192
 * elements from "list".
193
 */
194
__isl_give LIST(EL) *FN(LIST(EL),insert)(__isl_take LIST(EL) *list,
195
  unsigned pos, __isl_take struct EL *el)
196
30
{
197
30
  int i;
198
30
  isl_ctx *ctx;
199
30
  LIST(EL) *res;
200
30
201
30
  if (!list || !el)
202
0
    goto error;
203
30
  ctx = FN(LIST(EL),get_ctx)(list);
204
30
  if (pos > list->n)
205
30
    
isl_die0
(ctx, isl_error_invalid,
206
30
      "index out of bounds", goto error);
207
30
208
30
  if (list->ref == 1 && 
list->size > list->n27
) {
209
2
    for (i = list->n; i > pos; 
--i1
)
210
1
      list->p[i] = list->p[i - 1];
211
1
    list->n++;
212
1
    list->p[pos] = el;
213
1
    return list;
214
1
  }
215
29
216
29
  res = FN(LIST(EL),alloc)(ctx, list->n + 1);
217
68
  for (i = 0; i < pos; 
++i39
)
218
39
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
219
29
  res = FN(LIST(EL),add)(res, el);
220
31
  for (i = pos; i < list->n; 
++i2
)
221
2
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
222
29
  FN(LIST(EL),free)(list);
223
29
224
29
  return res;
225
29
error:
226
0
  FN(EL,free)(el);
227
0
  FN(LIST(EL),free)(list);
228
0
  return NULL;
229
29
}
Unexecuted instantiation: isl_aff_list_insert
Unexecuted instantiation: isl_pw_aff_list_insert
Unexecuted instantiation: isl_pw_multi_aff_list_insert
Unexecuted instantiation: isl_union_pw_aff_list_insert
Unexecuted instantiation: isl_union_pw_multi_aff_list_insert
Unexecuted instantiation: isl_ast_expr_list_insert
Unexecuted instantiation: isl_ast_node_list_insert
isl_ast_graft_list_insert
Line
Count
Source
196
26
{
197
26
  int i;
198
26
  isl_ctx *ctx;
199
26
  LIST(EL) *res;
200
26
201
26
  if (!list || !el)
202
0
    goto error;
203
26
  ctx = FN(LIST(EL),get_ctx)(list);
204
26
  if (pos > list->n)
205
26
    
isl_die0
(ctx, isl_error_invalid,
206
26
      "index out of bounds", goto error);
207
26
208
26
  if (list->ref == 1 && list->size > list->n) {
209
0
    for (i = list->n; i > pos; --i)
210
0
      list->p[i] = list->p[i - 1];
211
0
    list->n++;
212
0
    list->p[pos] = el;
213
0
    return list;
214
0
  }
215
26
216
26
  res = FN(LIST(EL),alloc)(ctx, list->n + 1);
217
62
  for (i = 0; i < pos; 
++i36
)
218
36
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
219
26
  res = FN(LIST(EL),add)(res, el);
220
28
  for (i = pos; i < list->n; 
++i2
)
221
2
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
222
26
  FN(LIST(EL),free)(list);
223
26
224
26
  return res;
225
26
error:
226
0
  FN(EL,free)(el);
227
0
  FN(LIST(EL),free)(list);
228
0
  return NULL;
229
26
}
Unexecuted instantiation: isl_constraint_list_insert
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_insert
isl_id_list_insert
Line
Count
Source
196
4
{
197
4
  int i;
198
4
  isl_ctx *ctx;
199
4
  LIST(EL) *res;
200
4
201
4
  if (!list || !el)
202
0
    goto error;
203
4
  ctx = FN(LIST(EL),get_ctx)(list);
204
4
  if (pos > list->n)
205
4
    
isl_die0
(ctx, isl_error_invalid,
206
4
      "index out of bounds", goto error);
207
4
208
4
  if (list->ref == 1 && 
list->size > list->n1
) {
209
2
    for (i = list->n; i > pos; 
--i1
)
210
1
      list->p[i] = list->p[i - 1];
211
1
    list->n++;
212
1
    list->p[pos] = el;
213
1
    return list;
214
1
  }
215
3
216
3
  res = FN(LIST(EL),alloc)(ctx, list->n + 1);
217
6
  for (i = 0; i < pos; 
++i3
)
218
3
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
219
3
  res = FN(LIST(EL),add)(res, el);
220
3
  for (i = pos; i < list->n; 
++i0
)
221
0
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list->p[i]));
222
3
  FN(LIST(EL),free)(list);
223
3
224
3
  return res;
225
3
error:
226
0
  FN(EL,free)(el);
227
0
  FN(LIST(EL),free)(list);
228
0
  return NULL;
229
3
}
Unexecuted instantiation: isl_basic_map_list_insert
Unexecuted instantiation: isl_map_list_insert
Unexecuted instantiation: isl_union_map_list_insert
Unexecuted instantiation: isl_pw_qpolynomial_list_insert
Unexecuted instantiation: isl_schedule_tree_list_insert
Unexecuted instantiation: isl_basic_set_list_insert
Unexecuted instantiation: isl_set_list_insert
Unexecuted instantiation: isl_union_set_list_insert
Unexecuted instantiation: isl_val_list_insert
230
231
__isl_null LIST(EL) *FN(LIST(EL),free)(__isl_take LIST(EL) *list)
232
265k
{
233
265k
  int i;
234
265k
235
265k
  if (!list)
236
39.6k
    return NULL;
237
225k
238
225k
  if (--list->ref > 0)
239
61.3k
    return NULL;
240
164k
241
164k
  isl_ctx_deref(list->ctx);
242
426k
  for (i = 0; i < list->n; 
++i262k
)
243
262k
    FN(EL,free)(list->p[i]);
244
164k
  free(list);
245
164k
246
164k
  return NULL;
247
164k
}
isl_aff_list_free
Line
Count
Source
232
17.1k
{
233
17.1k
  int i;
234
17.1k
235
17.1k
  if (!list)
236
8.36k
    return NULL;
237
8.74k
238
8.74k
  if (--list->ref > 0)
239
0
    return NULL;
240
8.74k
241
8.74k
  isl_ctx_deref(list->ctx);
242
17.4k
  for (i = 0; i < list->n; 
++i8.66k
)
243
8.74k
    
FN8.66k
(EL,free)(list->p[i])8.66k
;
244
8.74k
  free(list);
245
8.74k
246
8.74k
  return NULL;
247
8.74k
}
isl_pw_aff_list_free
Line
Count
Source
232
29.0k
{
233
29.0k
  int i;
234
29.0k
235
29.0k
  if (!list)
236
3
    return NULL;
237
29.0k
238
29.0k
  if (--list->ref > 0)
239
11.6k
    return NULL;
240
17.4k
241
17.4k
  isl_ctx_deref(list->ctx);
242
37.4k
  for (i = 0; i < list->n; 
++i20.0k
)
243
20.0k
    FN(EL,free)(list->p[i]);
244
17.4k
  free(list);
245
17.4k
246
17.4k
  return NULL;
247
17.4k
}
Unexecuted instantiation: isl_pw_multi_aff_list_free
isl_union_pw_aff_list_free
Line
Count
Source
232
260
{
233
260
  int i;
234
260
235
260
  if (!list)
236
0
    return NULL;
237
260
238
260
  if (--list->ref > 0)
239
0
    return NULL;
240
260
241
260
  isl_ctx_deref(list->ctx);
242
404
  for (i = 0; i < list->n; 
++i144
)
243
260
    
FN144
(EL,free)(list->p[i])144
;
244
260
  free(list);
245
260
246
260
  return NULL;
247
260
}
isl_union_pw_multi_aff_list_free
Line
Count
Source
232
8
{
233
8
  int i;
234
8
235
8
  if (!list)
236
0
    return NULL;
237
8
238
8
  if (--list->ref > 0)
239
0
    return NULL;
240
8
241
8
  isl_ctx_deref(list->ctx);
242
16
  for (i = 0; i < list->n; 
++i8
)
243
8
    FN(EL,free)(list->p[i]);
244
8
  free(list);
245
8
246
8
  return NULL;
247
8
}
Unexecuted instantiation: isl_ast_expr_list_free
isl_ast_node_list_free
Line
Count
Source
232
4.91k
{
233
4.91k
  int i;
234
4.91k
235
4.91k
  if (!list)
236
0
    return NULL;
237
4.91k
238
4.91k
  if (--list->ref > 0)
239
237
    return NULL;
240
4.67k
241
4.67k
  isl_ctx_deref(list->ctx);
242
11.0k
  for (i = 0; i < list->n; 
++i6.41k
)
243
6.41k
    FN(EL,free)(list->p[i]);
244
4.67k
  free(list);
245
4.67k
246
4.67k
  return NULL;
247
4.67k
}
isl_ast_graft_list_free
Line
Count
Source
232
18.6k
{
233
18.6k
  int i;
234
18.6k
235
18.6k
  if (!list)
236
0
    return NULL;
237
18.6k
238
18.6k
  if (--list->ref > 0)
239
0
    return NULL;
240
18.6k
241
18.6k
  isl_ctx_deref(list->ctx);
242
36.0k
  for (i = 0; i < list->n; 
++i17.4k
)
243
18.6k
    
FN17.4k
(EL,free)(list->p[i])17.4k
;
244
18.6k
  free(list);
245
18.6k
246
18.6k
  return NULL;
247
18.6k
}
isl_constraint_list_free
Line
Count
Source
232
2.46k
{
233
2.46k
  int i;
234
2.46k
235
2.46k
  if (!list)
236
0
    return NULL;
237
2.46k
238
2.46k
  if (--list->ref > 0)
239
0
    return NULL;
240
2.46k
241
2.46k
  isl_ctx_deref(list->ctx);
242
4.68k
  for (i = 0; i < list->n; 
++i2.22k
)
243
2.46k
    
FN2.22k
(EL,free)(list->p[i])2.22k
;
244
2.46k
  free(list);
245
2.46k
246
2.46k
  return NULL;
247
2.46k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_free
isl_id_list_free
Line
Count
Source
232
38.5k
{
233
38.5k
  int i;
234
38.5k
235
38.5k
  if (!list)
236
0
    return NULL;
237
38.5k
238
38.5k
  if (--list->ref > 0)
239
36.5k
    return NULL;
240
1.98k
241
1.98k
  isl_ctx_deref(list->ctx);
242
4.59k
  for (i = 0; i < list->n; 
++i2.61k
)
243
2.61k
    FN(EL,free)(list->p[i]);
244
1.98k
  free(list);
245
1.98k
246
1.98k
  return NULL;
247
1.98k
}
isl_basic_map_list_free
Line
Count
Source
232
5.57k
{
233
5.57k
  int i;
234
5.57k
235
5.57k
  if (!list)
236
0
    return NULL;
237
5.57k
238
5.57k
  if (--list->ref > 0)
239
0
    return NULL;
240
5.57k
241
5.57k
  isl_ctx_deref(list->ctx);
242
22.8k
  for (i = 0; i < list->n; 
++i17.2k
)
243
17.2k
    FN(EL,free)(list->p[i]);
244
5.57k
  free(list);
245
5.57k
246
5.57k
  return NULL;
247
5.57k
}
isl_map_list_free
Line
Count
Source
232
5.52k
{
233
5.52k
  int i;
234
5.52k
235
5.52k
  if (!list)
236
18
    return NULL;
237
5.50k
238
5.50k
  if (--list->ref > 0)
239
0
    return NULL;
240
5.50k
241
5.50k
  isl_ctx_deref(list->ctx);
242
16.1k
  for (i = 0; i < list->n; 
++i10.6k
)
243
10.6k
    FN(EL,free)(list->p[i]);
244
5.50k
  free(list);
245
5.50k
246
5.50k
  return NULL;
247
5.50k
}
isl_union_map_list_free
Line
Count
Source
232
1
{
233
1
  int i;
234
1
235
1
  if (!list)
236
0
    return NULL;
237
1
238
1
  if (--list->ref > 0)
239
0
    return NULL;
240
1
241
1
  isl_ctx_deref(list->ctx);
242
2
  for (i = 0; i < list->n; 
++i1
)
243
1
    FN(EL,free)(list->p[i]);
244
1
  free(list);
245
1
246
1
  return NULL;
247
1
}
Unexecuted instantiation: isl_pw_qpolynomial_list_free
isl_schedule_tree_list_free
Line
Count
Source
232
113k
{
233
113k
  int i;
234
113k
235
113k
  if (!list)
236
22.8k
    return NULL;
237
90.9k
238
90.9k
  if (--list->ref > 0)
239
12.8k
    return NULL;
240
78.0k
241
78.0k
  isl_ctx_deref(list->ctx);
242
224k
  for (i = 0; i < list->n; 
++i146k
)
243
146k
    FN(EL,free)(list->p[i]);
244
78.0k
  free(list);
245
78.0k
246
78.0k
  return NULL;
247
78.0k
}
isl_basic_set_list_free
Line
Count
Source
232
5.64k
{
233
5.64k
  int i;
234
5.64k
235
5.64k
  if (!list)
236
0
    return NULL;
237
5.64k
238
5.64k
  if (--list->ref > 0)
239
21
    return NULL;
240
5.62k
241
5.62k
  isl_ctx_deref(list->ctx);
242
16.0k
  for (i = 0; i < list->n; 
++i10.4k
)
243
10.4k
    FN(EL,free)(list->p[i]);
244
5.62k
  free(list);
245
5.62k
246
5.62k
  return NULL;
247
5.62k
}
isl_set_list_free
Line
Count
Source
232
23.0k
{
233
23.0k
  int i;
234
23.0k
235
23.0k
  if (!list)
236
8.36k
    return NULL;
237
14.7k
238
14.7k
  if (--list->ref > 0)
239
0
    return NULL;
240
14.7k
241
14.7k
  isl_ctx_deref(list->ctx);
242
33.6k
  for (i = 0; i < list->n; 
++i18.9k
)
243
18.9k
    FN(EL,free)(list->p[i]);
244
14.7k
  free(list);
245
14.7k
246
14.7k
  return NULL;
247
14.7k
}
isl_union_set_list_free
Line
Count
Source
232
499
{
233
499
  int i;
234
499
235
499
  if (!list)
236
0
    return NULL;
237
499
238
499
  if (--list->ref > 0)
239
0
    return NULL;
240
499
241
499
  isl_ctx_deref(list->ctx);
242
1.08k
  for (i = 0; i < list->n; 
++i584
)
243
584
    FN(EL,free)(list->p[i]);
244
499
  free(list);
245
499
246
499
  return NULL;
247
499
}
isl_val_list_free
Line
Count
Source
232
7
{
233
7
  int i;
234
7
235
7
  if (!list)
236
0
    return NULL;
237
7
238
7
  if (--list->ref > 0)
239
0
    return NULL;
240
7
241
7
  isl_ctx_deref(list->ctx);
242
24
  for (i = 0; i < list->n; 
++i17
)
243
17
    FN(EL,free)(list->p[i]);
244
7
  free(list);
245
7
246
7
  return NULL;
247
7
}
248
249
/* Return the number of elements in "list".
250
 */
251
int FN(LIST(EL),size)(__isl_keep LIST(EL) *list)
252
856k
{
253
856k
  return list ? 
list->n847k
:
09.77k
;
254
856k
}
isl_aff_list_size
Line
Count
Source
252
1.17k
{
253
1.17k
  return list ? list->n : 
00
;
254
1.17k
}
isl_pw_aff_list_size
Line
Count
Source
252
17.6k
{
253
17.6k
  return list ? list->n : 
00
;
254
17.6k
}
Unexecuted instantiation: isl_pw_multi_aff_list_size
isl_union_pw_aff_list_size
Line
Count
Source
252
260
{
253
260
  return list ? list->n : 
00
;
254
260
}
isl_union_pw_multi_aff_list_size
Line
Count
Source
252
8
{
253
8
  return list ? list->n : 
00
;
254
8
}
Unexecuted instantiation: isl_ast_expr_list_size
isl_ast_node_list_size
Line
Count
Source
252
5.11k
{
253
5.11k
  return list ? list->n : 
00
;
254
5.11k
}
isl_ast_graft_list_size
Line
Count
Source
252
28.6k
{
253
28.6k
  return list ? list->n : 
00
;
254
28.6k
}
isl_constraint_list_size
Line
Count
Source
252
3.95k
{
253
3.95k
  return list ? list->n : 
00
;
254
3.95k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_size
isl_id_list_size
Line
Count
Source
252
1.14k
{
253
1.14k
  return list ? list->n : 
00
;
254
1.14k
}
isl_basic_map_list_size
Line
Count
Source
252
5.19k
{
253
5.19k
  return list ? list->n : 
00
;
254
5.19k
}
isl_map_list_size
Line
Count
Source
252
5.52k
{
253
5.52k
  return list ? 
list->n5.50k
:
025
;
254
5.52k
}
isl_union_map_list_size
Line
Count
Source
252
13
{
253
13
  return list ? list->n : 
00
;
254
13
}
Unexecuted instantiation: isl_pw_qpolynomial_list_size
isl_schedule_tree_list_size
Line
Count
Source
252
766k
{
253
766k
  return list ? 
list->n756k
:
09.74k
;
254
766k
}
isl_basic_set_list_size
Line
Count
Source
252
7.69k
{
253
7.69k
  return list ? list->n : 
00
;
254
7.69k
}
isl_set_list_size
Line
Count
Source
252
11.2k
{
253
11.2k
  return list ? 
list->n11.2k
:
03
;
254
11.2k
}
isl_union_set_list_size
Line
Count
Source
252
2.85k
{
253
2.85k
  return list ? list->n : 
00
;
254
2.85k
}
isl_val_list_size
Line
Count
Source
252
7
{
253
7
  return list ? list->n : 
00
;
254
7
}
255
256
/* This is an alternative name for the function above.
257
 */
258
int FN(FN(LIST(EL),n),BASE)(__isl_keep LIST(EL) *list)
259
847k
{
260
847k
  return FN(LIST(EL),size)(list);
261
847k
}
isl_aff_list_n_aff
Line
Count
Source
259
1.17k
{
260
1.17k
  return FN(LIST(EL),size)(list);
261
1.17k
}
isl_pw_aff_list_n_pw_aff
Line
Count
Source
259
17.6k
{
260
17.6k
  return FN(LIST(EL),size)(list);
261
17.6k
}
Unexecuted instantiation: isl_pw_multi_aff_list_n_pw_multi_aff
isl_union_pw_aff_list_n_union_pw_aff
Line
Count
Source
259
260
{
260
260
  return FN(LIST(EL),size)(list);
261
260
}
isl_union_pw_multi_aff_list_n_union_pw_multi_aff
Line
Count
Source
259
8
{
260
8
  return FN(LIST(EL),size)(list);
261
8
}
Unexecuted instantiation: isl_ast_expr_list_n_ast_expr
isl_ast_node_list_n_ast_node
Line
Count
Source
259
5.11k
{
260
5.11k
  return FN(LIST(EL),size)(list);
261
5.11k
}
isl_ast_graft_list_n_ast_graft
Line
Count
Source
259
28.6k
{
260
28.6k
  return FN(LIST(EL),size)(list);
261
28.6k
}
isl_constraint_list_n_constraint
Line
Count
Source
259
3.95k
{
260
3.95k
  return FN(LIST(EL),size)(list);
261
3.95k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_n_pw_qpolynomial_fold
isl_id_list_n_id
Line
Count
Source
259
1.14k
{
260
1.14k
  return FN(LIST(EL),size)(list);
261
1.14k
}
isl_basic_map_list_n_basic_map
Line
Count
Source
259
4.98k
{
260
4.98k
  return FN(LIST(EL),size)(list);
261
4.98k
}
isl_map_list_n_map
Line
Count
Source
259
1.24k
{
260
1.24k
  return FN(LIST(EL),size)(list);
261
1.24k
}
isl_union_map_list_n_union_map
Line
Count
Source
259
13
{
260
13
  return FN(LIST(EL),size)(list);
261
13
}
Unexecuted instantiation: isl_pw_qpolynomial_list_n_pw_qpolynomial
isl_schedule_tree_list_n_schedule_tree
Line
Count
Source
259
766k
{
260
766k
  return FN(LIST(EL),size)(list);
261
766k
}
isl_basic_set_list_n_basic_set
Line
Count
Source
259
5.58k
{
260
5.58k
  return FN(LIST(EL),size)(list);
261
5.58k
}
isl_set_list_n_set
Line
Count
Source
259
8.39k
{
260
8.39k
  return FN(LIST(EL),size)(list);
261
8.39k
}
isl_union_set_list_n_union_set
Line
Count
Source
259
2.85k
{
260
2.85k
  return FN(LIST(EL),size)(list);
261
2.85k
}
isl_val_list_n_val
Line
Count
Source
259
7
{
260
7
  return FN(LIST(EL),size)(list);
261
7
}
262
263
/* Return the element at position "index" in "list".
264
 */
265
static __isl_keep EL *FN(LIST(EL),peek)(__isl_keep LIST(EL) *list, int index)
266
658k
{
267
658k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
658k
  return list->p[index];
270
658k
}
isl_aff.c:isl_aff_list_peek
Line
Count
Source
266
9.10k
{
267
9.10k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
9.10k
  return list->p[index];
270
9.10k
}
isl_aff.c:isl_pw_aff_list_peek
Line
Count
Source
266
22.3k
{
267
22.3k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
22.3k
  return list->p[index];
270
22.3k
}
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_peek
isl_aff.c:isl_union_pw_aff_list_peek
Line
Count
Source
266
288
{
267
288
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
288
  return list->p[index];
270
288
}
isl_aff.c:isl_union_pw_multi_aff_list_peek
Line
Count
Source
266
8
{
267
8
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
8
  return list->p[index];
270
8
}
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_peek
isl_ast.c:isl_ast_node_list_peek
Line
Count
Source
266
4.63k
{
267
4.63k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
4.63k
  return list->p[index];
270
4.63k
}
isl_ast_graft.c:isl_ast_graft_list_peek
Line
Count
Source
266
35.4k
{
267
35.4k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
35.4k
  return list->p[index];
270
35.4k
}
isl_constraint.c:isl_constraint_list_peek
Line
Count
Source
266
2.22k
{
267
2.22k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
2.22k
  return list->p[index];
270
2.22k
}
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_peek
isl_id.c:isl_id_list_peek
Line
Count
Source
266
24.2k
{
267
24.2k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
24.2k
  return list->p[index];
270
24.2k
}
isl_map_list.c:isl_basic_map_list_peek
Line
Count
Source
266
17.1k
{
267
17.1k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
17.1k
  return list->p[index];
270
17.1k
}
isl_map_list.c:isl_map_list_peek
Line
Count
Source
266
10.5k
{
267
10.5k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
10.5k
  return list->p[index];
270
10.5k
}
isl_map_list.c:isl_union_map_list_peek
Line
Count
Source
266
9
{
267
9
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
9
  return list->p[index];
270
9
}
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_peek
isl_schedule_tree.c:isl_schedule_tree_list_peek
Line
Count
Source
266
491k
{
267
491k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
491k
  return list->p[index];
270
491k
}
isl_set_list.c:isl_basic_set_list_peek
Line
Count
Source
266
15.3k
{
267
15.3k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
15.3k
  return list->p[index];
270
15.3k
}
isl_set_list.c:isl_set_list_peek
Line
Count
Source
266
22.5k
{
267
22.5k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
22.5k
  return list->p[index];
270
22.5k
}
isl_set_list.c:isl_union_set_list_peek
Line
Count
Source
266
2.94k
{
267
2.94k
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
2.94k
  return list->p[index];
270
2.94k
}
isl_val.c:isl_val_list_peek
Line
Count
Source
266
34
{
267
34
  if (FN(LIST(EL),check_index)(list, index) < 0)
268
0
    return NULL;
269
34
  return list->p[index];
270
34
}
271
272
/* Return a copy of the element at position "index" in "list".
273
 */
274
__isl_give EL *FN(LIST(EL),get_at)(__isl_keep LIST(EL) *list, int index)
275
649k
{
276
649k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
649k
}
isl_aff_list_get_at
Line
Count
Source
275
9.10k
{
276
9.10k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
9.10k
}
isl_pw_aff_list_get_at
Line
Count
Source
275
13.7k
{
276
13.7k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
13.7k
}
Unexecuted instantiation: isl_pw_multi_aff_list_get_at
isl_union_pw_aff_list_get_at
Line
Count
Source
275
144
{
276
144
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
144
}
isl_union_pw_multi_aff_list_get_at
Line
Count
Source
275
8
{
276
8
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
8
}
Unexecuted instantiation: isl_ast_expr_list_get_at
isl_ast_node_list_get_at
Line
Count
Source
275
4.63k
{
276
4.63k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
4.63k
}
isl_ast_graft_list_get_at
Line
Count
Source
275
35.4k
{
276
35.4k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
35.4k
}
isl_constraint_list_get_at
Line
Count
Source
275
2.22k
{
276
2.22k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
2.22k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_get_at
isl_id_list_get_at
Line
Count
Source
275
24.2k
{
276
24.2k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
24.2k
}
isl_basic_map_list_get_at
Line
Count
Source
275
17.1k
{
276
17.1k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
17.1k
}
isl_map_list_get_at
Line
Count
Source
275
10.5k
{
276
10.5k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
10.5k
}
isl_union_map_list_get_at
Line
Count
Source
275
9
{
276
9
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
9
}
Unexecuted instantiation: isl_pw_qpolynomial_list_get_at
isl_schedule_tree_list_get_at
Line
Count
Source
275
491k
{
276
491k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
491k
}
isl_basic_set_list_get_at
Line
Count
Source
275
15.3k
{
276
15.3k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
15.3k
}
isl_set_list_get_at
Line
Count
Source
275
22.5k
{
276
22.5k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
22.5k
}
isl_union_set_list_get_at
Line
Count
Source
275
2.94k
{
276
2.94k
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
2.94k
}
isl_val_list_get_at
Line
Count
Source
275
17
{
276
17
  return FN(EL,copy)(FN(LIST(EL),peek)(list, index));
277
17
}
278
279
/* This is an alternative name for the function above.
280
 */
281
__isl_give EL *FN(FN(LIST(EL),get),BASE)(__isl_keep LIST(EL) *list, int index)
282
634k
{
283
634k
  return FN(LIST(EL),get_at)(list, index);
284
634k
}
isl_aff_list_get_aff
Line
Count
Source
282
9.10k
{
283
9.10k
  return FN(LIST(EL),get_at)(list, index);
284
9.10k
}
isl_pw_aff_list_get_pw_aff
Line
Count
Source
282
13.7k
{
283
13.7k
  return FN(LIST(EL),get_at)(list, index);
284
13.7k
}
Unexecuted instantiation: isl_pw_multi_aff_list_get_pw_multi_aff
isl_union_pw_aff_list_get_union_pw_aff
Line
Count
Source
282
144
{
283
144
  return FN(LIST(EL),get_at)(list, index);
284
144
}
isl_union_pw_multi_aff_list_get_union_pw_multi_aff
Line
Count
Source
282
8
{
283
8
  return FN(LIST(EL),get_at)(list, index);
284
8
}
Unexecuted instantiation: isl_ast_expr_list_get_ast_expr
isl_ast_node_list_get_ast_node
Line
Count
Source
282
4.63k
{
283
4.63k
  return FN(LIST(EL),get_at)(list, index);
284
4.63k
}
isl_ast_graft_list_get_ast_graft
Line
Count
Source
282
35.4k
{
283
35.4k
  return FN(LIST(EL),get_at)(list, index);
284
35.4k
}
isl_constraint_list_get_constraint
Line
Count
Source
282
2.22k
{
283
2.22k
  return FN(LIST(EL),get_at)(list, index);
284
2.22k
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_get_pw_qpolynomial_fold
isl_id_list_get_id
Line
Count
Source
282
24.2k
{
283
24.2k
  return FN(LIST(EL),get_at)(list, index);
284
24.2k
}
isl_basic_map_list_get_basic_map
Line
Count
Source
282
16.9k
{
283
16.9k
  return FN(LIST(EL),get_at)(list, index);
284
16.9k
}
isl_map_list_get_map
Line
Count
Source
282
2.71k
{
283
2.71k
  return FN(LIST(EL),get_at)(list, index);
284
2.71k
}
isl_union_map_list_get_union_map
Line
Count
Source
282
9
{
283
9
  return FN(LIST(EL),get_at)(list, index);
284
9
}
Unexecuted instantiation: isl_pw_qpolynomial_list_get_pw_qpolynomial
isl_schedule_tree_list_get_schedule_tree
Line
Count
Source
282
491k
{
283
491k
  return FN(LIST(EL),get_at)(list, index);
284
491k
}
isl_basic_set_list_get_basic_set
Line
Count
Source
282
12.5k
{
283
12.5k
  return FN(LIST(EL),get_at)(list, index);
284
12.5k
}
isl_set_list_get_set
Line
Count
Source
282
18.5k
{
283
18.5k
  return FN(LIST(EL),get_at)(list, index);
284
18.5k
}
isl_union_set_list_get_union_set
Line
Count
Source
282
2.94k
{
283
2.94k
  return FN(LIST(EL),get_at)(list, index);
284
2.94k
}
isl_val_list_get_val
Line
Count
Source
282
17
{
283
17
  return FN(LIST(EL),get_at)(list, index);
284
17
}
285
286
/* Replace the element at position "index" in "list" by "el".
287
 */
288
__isl_give LIST(EL) *FN(FN(LIST(EL),set),BASE)(__isl_take LIST(EL) *list,
289
  int index, __isl_take EL *el)
290
53.0k
{
291
53.0k
  if (!list || !el)
292
0
    goto error;
293
53.0k
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
53.0k
  if (list->p[index] == el) {
296
12.1k
    FN(EL,free)(el);
297
12.1k
    return list;
298
12.1k
  }
299
40.9k
  list = FN(LIST(EL),cow)(list);
300
40.9k
  if (!list)
301
0
    goto error;
302
40.9k
  FN(EL,free)(list->p[index]);
303
40.9k
  list->p[index] = el;
304
40.9k
  return list;
305
40.9k
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
40.9k
}
isl_aff_list_set_aff
Line
Count
Source
290
2
{
291
2
  if (!list || !el)
292
0
    goto error;
293
2
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
2
  if (list->p[index] == el) {
296
0
    FN(EL,free)(el);
297
0
    return list;
298
0
  }
299
2
  list = FN(LIST(EL),cow)(list);
300
2
  if (!list)
301
0
    goto error;
302
2
  FN(EL,free)(list->p[index]);
303
2
  list->p[index] = el;
304
2
  return list;
305
2
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
2
}
isl_pw_aff_list_set_pw_aff
Line
Count
Source
290
3.44k
{
291
3.44k
  if (!list || !el)
292
0
    goto error;
293
3.44k
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
3.44k
  if (list->p[index] == el) {
296
0
    FN(EL,free)(el);
297
0
    return list;
298
0
  }
299
3.44k
  list = FN(LIST(EL),cow)(list);
300
3.44k
  if (!list)
301
0
    goto error;
302
3.44k
  FN(EL,free)(list->p[index]);
303
3.44k
  list->p[index] = el;
304
3.44k
  return list;
305
3.44k
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
3.44k
}
Unexecuted instantiation: isl_pw_multi_aff_list_set_pw_multi_aff
Unexecuted instantiation: isl_union_pw_aff_list_set_union_pw_aff
Unexecuted instantiation: isl_union_pw_multi_aff_list_set_union_pw_multi_aff
Unexecuted instantiation: isl_ast_expr_list_set_ast_expr
Unexecuted instantiation: isl_ast_node_list_set_ast_node
isl_ast_graft_list_set_ast_graft
Line
Count
Source
290
7.02k
{
291
7.02k
  if (!list || !el)
292
0
    goto error;
293
7.02k
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
7.02k
  if (list->p[index] == el) {
296
7.00k
    FN(EL,free)(el);
297
7.00k
    return list;
298
7.00k
  }
299
25
  list = FN(LIST(EL),cow)(list);
300
25
  if (!list)
301
0
    goto error;
302
25
  FN(EL,free)(list->p[index]);
303
25
  list->p[index] = el;
304
25
  return list;
305
25
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
25
}
Unexecuted instantiation: isl_constraint_list_set_constraint
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_set_pw_qpolynomial_fold
Unexecuted instantiation: isl_id_list_set_id
isl_basic_map_list_set_basic_map
Line
Count
Source
290
5.21k
{
291
5.21k
  if (!list || !el)
292
0
    goto error;
293
5.21k
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
5.21k
  if (list->p[index] == el) {
296
3.66k
    FN(EL,free)(el);
297
3.66k
    return list;
298
3.66k
  }
299
1.55k
  list = FN(LIST(EL),cow)(list);
300
1.55k
  if (!list)
301
0
    goto error;
302
1.55k
  FN(EL,free)(list->p[index]);
303
1.55k
  list->p[index] = el;
304
1.55k
  return list;
305
1.55k
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
1.55k
}
Unexecuted instantiation: isl_map_list_set_map
isl_union_map_list_set_union_map
Line
Count
Source
290
2
{
291
2
  if (!list || !el)
292
0
    goto error;
293
2
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
2
  if (list->p[index] == el) {
296
0
    FN(EL,free)(el);
297
0
    return list;
298
0
  }
299
2
  list = FN(LIST(EL),cow)(list);
300
2
  if (!list)
301
0
    goto error;
302
2
  FN(EL,free)(list->p[index]);
303
2
  list->p[index] = el;
304
2
  return list;
305
2
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
2
}
Unexecuted instantiation: isl_pw_qpolynomial_list_set_pw_qpolynomial
isl_schedule_tree_list_set_schedule_tree
Line
Count
Source
290
28.5k
{
291
28.5k
  if (!list || !el)
292
0
    goto error;
293
28.5k
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
28.5k
  if (list->p[index] == el) {
296
3
    FN(EL,free)(el);
297
3
    return list;
298
3
  }
299
28.5k
  list = FN(LIST(EL),cow)(list);
300
28.5k
  if (!list)
301
0
    goto error;
302
28.5k
  FN(EL,free)(list->p[index]);
303
28.5k
  list->p[index] = el;
304
28.5k
  return list;
305
28.5k
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
28.5k
}
isl_basic_set_list_set_basic_set
Line
Count
Source
290
5.27k
{
291
5.27k
  if (!list || !el)
292
0
    goto error;
293
5.27k
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
5.27k
  if (list->p[index] == el) {
296
0
    FN(EL,free)(el);
297
0
    return list;
298
0
  }
299
5.27k
  list = FN(LIST(EL),cow)(list);
300
5.27k
  if (!list)
301
0
    goto error;
302
5.27k
  FN(EL,free)(list->p[index]);
303
5.27k
  list->p[index] = el;
304
5.27k
  return list;
305
5.27k
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
5.27k
}
isl_set_list_set_set
Line
Count
Source
290
3.46k
{
291
3.46k
  if (!list || !el)
292
0
    goto error;
293
3.46k
  if (FN(LIST(EL),check_index)(list, index) < 0)
294
0
    goto error;
295
3.46k
  if (list->p[index] == el) {
296
1.44k
    FN(EL,free)(el);
297
1.44k
    return list;
298
1.44k
  }
299
2.01k
  list = FN(LIST(EL),cow)(list);
300
2.01k
  if (!list)
301
0
    goto error;
302
2.01k
  FN(EL,free)(list->p[index]);
303
2.01k
  list->p[index] = el;
304
2.01k
  return list;
305
2.01k
error:
306
0
  FN(EL,free)(el);
307
0
  FN(LIST(EL),free)(list);
308
0
  return NULL;
309
2.01k
}
Unexecuted instantiation: isl_union_set_list_set_union_set
Unexecuted instantiation: isl_val_list_set_val
310
311
/* Return the element at position "index" of "list".
312
 * This may be either a copy or the element itself
313
 * if there is only one reference to "list".
314
 * This allows the element to be modified inplace
315
 * if both the list and the element have only a single reference.
316
 * The caller is not allowed to modify "list" between
317
 * this call to isl_list_*_take_* and a subsequent call
318
 * to isl_list_*_restore_*.
319
 * The only exception is that isl_list_*_free can be called instead.
320
 */
321
static __isl_give EL *FN(FN(LIST(EL),take),BASE)(__isl_keep LIST(EL) *list,
322
  int index)
323
58
{
324
58
  EL *el;
325
58
326
58
  if (FN(LIST(EL),check_index)(list, index) < 0)
327
0
    return NULL;
328
58
  if (list->ref != 1)
329
0
    return FN(FN(LIST(EL),get),BASE)(list, index);
330
58
  el = list->p[index];
331
58
  list->p[index] = NULL;
332
58
  return el;
333
58
}
Unexecuted instantiation: isl_aff.c:isl_aff_list_take_aff
Unexecuted instantiation: isl_aff.c:isl_pw_aff_list_take_pw_aff
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_take_pw_multi_aff
Unexecuted instantiation: isl_aff.c:isl_union_pw_aff_list_take_union_pw_aff
Unexecuted instantiation: isl_aff.c:isl_union_pw_multi_aff_list_take_union_pw_multi_aff
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_take_ast_expr
Unexecuted instantiation: isl_ast.c:isl_ast_node_list_take_ast_node
Unexecuted instantiation: isl_ast_graft.c:isl_ast_graft_list_take_ast_graft
Unexecuted instantiation: isl_constraint.c:isl_constraint_list_take_constraint
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_take_pw_qpolynomial_fold
Unexecuted instantiation: isl_id.c:isl_id_list_take_id
Unexecuted instantiation: isl_map_list.c:isl_basic_map_list_take_basic_map
Unexecuted instantiation: isl_map_list.c:isl_map_list_take_map
Unexecuted instantiation: isl_map_list.c:isl_union_map_list_take_union_map
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_take_pw_qpolynomial
Unexecuted instantiation: isl_schedule_tree.c:isl_schedule_tree_list_take_schedule_tree
isl_set_list.c:isl_basic_set_list_take_basic_set
Line
Count
Source
323
58
{
324
58
  EL *el;
325
58
326
58
  if (FN(LIST(EL),check_index)(list, index) < 0)
327
0
    return NULL;
328
58
  if (list->ref != 1)
329
0
    return FN(FN(LIST(EL),get),BASE)(list, index);
330
58
  el = list->p[index];
331
58
  list->p[index] = NULL;
332
58
  return el;
333
58
}
Unexecuted instantiation: isl_set_list.c:isl_set_list_take_set
Unexecuted instantiation: isl_set_list.c:isl_union_set_list_take_union_set
Unexecuted instantiation: isl_val.c:isl_val_list_take_val
334
335
/* Set the element at position "index" of "list" to "el",
336
 * where the position may be empty due to a previous call
337
 * to isl_list_*_take_*.
338
 */
339
static __isl_give LIST(EL) *FN(FN(LIST(EL),restore),BASE)(
340
  __isl_take LIST(EL) *list, int index, __isl_take EL *el)
341
58
{
342
58
  return FN(FN(LIST(EL),set),BASE)(list, index, el);
343
58
}
Unexecuted instantiation: isl_aff.c:isl_aff_list_restore_aff
Unexecuted instantiation: isl_aff.c:isl_pw_aff_list_restore_pw_aff
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_restore_pw_multi_aff
Unexecuted instantiation: isl_aff.c:isl_union_pw_aff_list_restore_union_pw_aff
Unexecuted instantiation: isl_aff.c:isl_union_pw_multi_aff_list_restore_union_pw_multi_aff
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_restore_ast_expr
Unexecuted instantiation: isl_ast.c:isl_ast_node_list_restore_ast_node
Unexecuted instantiation: isl_ast_graft.c:isl_ast_graft_list_restore_ast_graft
Unexecuted instantiation: isl_constraint.c:isl_constraint_list_restore_constraint
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_restore_pw_qpolynomial_fold
Unexecuted instantiation: isl_id.c:isl_id_list_restore_id
Unexecuted instantiation: isl_map_list.c:isl_basic_map_list_restore_basic_map
Unexecuted instantiation: isl_map_list.c:isl_map_list_restore_map
Unexecuted instantiation: isl_map_list.c:isl_union_map_list_restore_union_map
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_restore_pw_qpolynomial
Unexecuted instantiation: isl_schedule_tree.c:isl_schedule_tree_list_restore_schedule_tree
isl_set_list.c:isl_basic_set_list_restore_basic_set
Line
Count
Source
341
58
{
342
58
  return FN(FN(LIST(EL),set),BASE)(list, index, el);
343
58
}
Unexecuted instantiation: isl_set_list.c:isl_set_list_restore_set
Unexecuted instantiation: isl_set_list.c:isl_union_set_list_restore_union_set
Unexecuted instantiation: isl_val.c:isl_val_list_restore_val
344
345
/* Swap the elements of "list" in positions "pos1" and "pos2".
346
 */
347
__isl_give LIST(EL) *FN(LIST(EL),swap)(__isl_take LIST(EL) *list,
348
  unsigned pos1, unsigned pos2)
349
0
{
350
0
  EL *el1, *el2;
351
0
352
0
  if (pos1 == pos2)
353
0
    return list;
354
0
  el1 = FN(FN(LIST(EL),take),BASE)(list, pos1);
355
0
  el2 = FN(FN(LIST(EL),take),BASE)(list, pos2);
356
0
  list = FN(FN(LIST(EL),restore),BASE)(list, pos1, el2);
357
0
  list = FN(FN(LIST(EL),restore),BASE)(list, pos2, el1);
358
0
  return list;
359
0
}
Unexecuted instantiation: isl_aff_list_swap
Unexecuted instantiation: isl_pw_aff_list_swap
Unexecuted instantiation: isl_pw_multi_aff_list_swap
Unexecuted instantiation: isl_union_pw_aff_list_swap
Unexecuted instantiation: isl_union_pw_multi_aff_list_swap
Unexecuted instantiation: isl_ast_expr_list_swap
Unexecuted instantiation: isl_ast_node_list_swap
Unexecuted instantiation: isl_ast_graft_list_swap
Unexecuted instantiation: isl_constraint_list_swap
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_swap
Unexecuted instantiation: isl_id_list_swap
Unexecuted instantiation: isl_basic_map_list_swap
Unexecuted instantiation: isl_map_list_swap
Unexecuted instantiation: isl_union_map_list_swap
Unexecuted instantiation: isl_pw_qpolynomial_list_swap
Unexecuted instantiation: isl_schedule_tree_list_swap
Unexecuted instantiation: isl_basic_set_list_swap
Unexecuted instantiation: isl_set_list_swap
Unexecuted instantiation: isl_union_set_list_swap
Unexecuted instantiation: isl_val_list_swap
360
361
/* Reverse the elements of "list".
362
 */
363
__isl_give LIST(EL) *FN(LIST(EL),reverse)(__isl_take LIST(EL) *list)
364
0
{
365
0
  int i, n;
366
0
367
0
  n = FN(LIST(EL),size)(list);
368
0
  for (i = 0; i < n - 1 - i; ++i)
369
0
    list = FN(LIST(EL),swap)(list, i, n - 1 - i);
370
0
  return list;
371
0
}
Unexecuted instantiation: isl_aff_list_reverse
Unexecuted instantiation: isl_pw_aff_list_reverse
Unexecuted instantiation: isl_pw_multi_aff_list_reverse
Unexecuted instantiation: isl_union_pw_aff_list_reverse
Unexecuted instantiation: isl_union_pw_multi_aff_list_reverse
Unexecuted instantiation: isl_ast_expr_list_reverse
Unexecuted instantiation: isl_ast_node_list_reverse
Unexecuted instantiation: isl_ast_graft_list_reverse
Unexecuted instantiation: isl_constraint_list_reverse
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_reverse
Unexecuted instantiation: isl_id_list_reverse
Unexecuted instantiation: isl_basic_map_list_reverse
Unexecuted instantiation: isl_map_list_reverse
Unexecuted instantiation: isl_union_map_list_reverse
Unexecuted instantiation: isl_pw_qpolynomial_list_reverse
Unexecuted instantiation: isl_schedule_tree_list_reverse
Unexecuted instantiation: isl_basic_set_list_reverse
Unexecuted instantiation: isl_set_list_reverse
Unexecuted instantiation: isl_union_set_list_reverse
Unexecuted instantiation: isl_val_list_reverse
372
373
isl_stat FN(LIST(EL),foreach)(__isl_keep LIST(EL) *list,
374
  isl_stat (*fn)(__isl_take EL *el, void *user), void *user)
375
1.61k
{
376
1.61k
  int i;
377
1.61k
378
1.61k
  if (!list)
379
0
    return isl_stat_error;
380
1.61k
381
3.56k
  
for (i = 0; 1.61k
i < list->n;
++i1.95k
) {
382
2.53k
    EL *el = FN(EL,copy)(list->p[i]);
383
2.53k
    if (!el)
384
0
      return isl_stat_error;
385
2.53k
    if (fn(el, user) < 0)
386
577
      return isl_stat_error;
387
2.53k
  }
388
1.61k
389
1.61k
  
return isl_stat_ok1.03k
;
390
1.61k
}
Unexecuted instantiation: isl_aff_list_foreach
isl_pw_aff_list_foreach
Line
Count
Source
375
749
{
376
749
  int i;
377
749
378
749
  if (!list)
379
0
    return isl_stat_error;
380
749
381
936
  
for (i = 0; 749
i < list->n;
++i187
) {
382
764
    EL *el = FN(EL,copy)(list->p[i]);
383
764
    if (!el)
384
0
      return isl_stat_error;
385
764
    if (fn(el, user) < 0)
386
577
      return isl_stat_error;
387
764
  }
388
749
389
749
  
return isl_stat_ok172
;
390
749
}
Unexecuted instantiation: isl_pw_multi_aff_list_foreach
Unexecuted instantiation: isl_union_pw_aff_list_foreach
Unexecuted instantiation: isl_union_pw_multi_aff_list_foreach
Unexecuted instantiation: isl_ast_expr_list_foreach
Unexecuted instantiation: isl_ast_node_list_foreach
Unexecuted instantiation: isl_ast_graft_list_foreach
isl_constraint_list_foreach
Line
Count
Source
375
749
{
376
749
  int i;
377
749
378
749
  if (!list)
379
0
    return isl_stat_error;
380
749
381
2.40k
  
for (i = 0; 749
i < list->n;
++i1.65k
) {
382
1.65k
    EL *el = FN(EL,copy)(list->p[i]);
383
1.65k
    if (!el)
384
0
      return isl_stat_error;
385
1.65k
    if (fn(el, user) < 0)
386
0
      return isl_stat_error;
387
1.65k
  }
388
749
389
749
  return isl_stat_ok;
390
749
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_foreach
Unexecuted instantiation: isl_id_list_foreach
Unexecuted instantiation: isl_basic_map_list_foreach
Unexecuted instantiation: isl_map_list_foreach
Unexecuted instantiation: isl_union_map_list_foreach
Unexecuted instantiation: isl_pw_qpolynomial_list_foreach
Unexecuted instantiation: isl_schedule_tree_list_foreach
isl_basic_set_list_foreach
Line
Count
Source
375
112
{
376
112
  int i;
377
112
378
112
  if (!list)
379
0
    return isl_stat_error;
380
112
381
228
  
for (i = 0; 112
i < list->n;
++i116
) {
382
116
    EL *el = FN(EL,copy)(list->p[i]);
383
116
    if (!el)
384
0
      return isl_stat_error;
385
116
    if (fn(el, user) < 0)
386
0
      return isl_stat_error;
387
116
  }
388
112
389
112
  return isl_stat_ok;
390
112
}
Unexecuted instantiation: isl_set_list_foreach
Unexecuted instantiation: isl_union_set_list_foreach
Unexecuted instantiation: isl_val_list_foreach
391
392
/* Replace each element in "list" by the result of calling "fn"
393
 * on the element.
394
 */
395
__isl_give LIST(EL) *FN(LIST(EL),map)(__isl_keep LIST(EL) *list,
396
  __isl_give EL *(*fn)(__isl_take EL *el, void *user), void *user)
397
56
{
398
56
  int i, n;
399
56
400
56
  if (!list)
401
0
    return NULL;
402
56
403
56
  n = list->n;
404
114
  for (i = 0; i < n; 
++i58
) {
405
58
    EL *el = FN(FN(LIST(EL),take),BASE)(list, i);
406
58
    if (!el)
407
0
      return FN(LIST(EL),free)(list);
408
58
    el = fn(el, user);
409
58
    list = FN(FN(LIST(EL),restore),BASE)(list, i, el);
410
58
  }
411
56
412
56
  return list;
413
56
}
Unexecuted instantiation: isl_aff_list_map
Unexecuted instantiation: isl_pw_aff_list_map
Unexecuted instantiation: isl_pw_multi_aff_list_map
Unexecuted instantiation: isl_union_pw_aff_list_map
Unexecuted instantiation: isl_union_pw_multi_aff_list_map
Unexecuted instantiation: isl_ast_expr_list_map
Unexecuted instantiation: isl_ast_node_list_map
Unexecuted instantiation: isl_ast_graft_list_map
Unexecuted instantiation: isl_constraint_list_map
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_map
Unexecuted instantiation: isl_id_list_map
Unexecuted instantiation: isl_basic_map_list_map
Unexecuted instantiation: isl_map_list_map
Unexecuted instantiation: isl_union_map_list_map
Unexecuted instantiation: isl_pw_qpolynomial_list_map
Unexecuted instantiation: isl_schedule_tree_list_map
isl_basic_set_list_map
Line
Count
Source
397
56
{
398
56
  int i, n;
399
56
400
56
  if (!list)
401
0
    return NULL;
402
56
403
56
  n = list->n;
404
114
  for (i = 0; i < n; 
++i58
) {
405
58
    EL *el = FN(FN(LIST(EL),take),BASE)(list, i);
406
58
    if (!el)
407
0
      return FN(LIST(EL),free)(list);
408
58
    el = fn(el, user);
409
58
    list = FN(FN(LIST(EL),restore),BASE)(list, i, el);
410
58
  }
411
56
412
56
  return list;
413
56
}
Unexecuted instantiation: isl_set_list_map
Unexecuted instantiation: isl_union_set_list_map
Unexecuted instantiation: isl_val_list_map
414
415
/* Internal data structure for isl_*_list_sort.
416
 *
417
 * "cmp" is the original comparison function.
418
 * "user" is a user provided pointer that should be passed to "cmp".
419
 */
420
S(LIST(EL),sort_data) {
421
  int (*cmp)(__isl_keep EL *a, __isl_keep EL *b, void *user);
422
  void *user;
423
};
424
425
/* Compare two entries of an isl_*_list based on the user provided
426
 * comparison function on pairs of isl_* objects.
427
 */
428
static int FN(LIST(EL),cmp)(const void *a, const void *b, void *user)
429
1.28k
{
430
1.28k
  S(LIST(EL),sort_data) *data = user;
431
1.28k
  EL * const *el1 = a;
432
1.28k
  EL * const *el2 = b;
433
1.28k
434
1.28k
  return data->cmp(*el1, *el2, data->user);
435
1.28k
}
Unexecuted instantiation: isl_aff.c:isl_aff_list_cmp
isl_aff.c:isl_pw_aff_list_cmp
Line
Count
Source
429
100
{
430
100
  S(LIST(EL),sort_data) *data = user;
431
100
  EL * const *el1 = a;
432
100
  EL * const *el2 = b;
433
100
434
100
  return data->cmp(*el1, *el2, data->user);
435
100
}
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_cmp
Unexecuted instantiation: isl_aff.c:isl_union_pw_aff_list_cmp
Unexecuted instantiation: isl_aff.c:isl_union_pw_multi_aff_list_cmp
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_cmp
Unexecuted instantiation: isl_ast.c:isl_ast_node_list_cmp
isl_ast_graft.c:isl_ast_graft_list_cmp
Line
Count
Source
429
30
{
430
30
  S(LIST(EL),sort_data) *data = user;
431
30
  EL * const *el1 = a;
432
30
  EL * const *el2 = b;
433
30
434
30
  return data->cmp(*el1, *el2, data->user);
435
30
}
isl_constraint.c:isl_constraint_list_cmp
Line
Count
Source
429
1.15k
{
430
1.15k
  S(LIST(EL),sort_data) *data = user;
431
1.15k
  EL * const *el1 = a;
432
1.15k
  EL * const *el2 = b;
433
1.15k
434
1.15k
  return data->cmp(*el1, *el2, data->user);
435
1.15k
}
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_cmp
Unexecuted instantiation: isl_id.c:isl_id_list_cmp
Unexecuted instantiation: isl_map_list.c:isl_basic_map_list_cmp
Unexecuted instantiation: isl_map_list.c:isl_map_list_cmp
Unexecuted instantiation: isl_map_list.c:isl_union_map_list_cmp
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_cmp
Unexecuted instantiation: isl_schedule_tree.c:isl_schedule_tree_list_cmp
Unexecuted instantiation: isl_set_list.c:isl_basic_set_list_cmp
Unexecuted instantiation: isl_set_list.c:isl_set_list_cmp
Unexecuted instantiation: isl_set_list.c:isl_union_set_list_cmp
Unexecuted instantiation: isl_val.c:isl_val_list_cmp
436
437
/* Sort the elements of "list" in ascending order according to
438
 * comparison function "cmp".
439
 */
440
__isl_give LIST(EL) *FN(LIST(EL),sort)(__isl_take LIST(EL) *list,
441
  int (*cmp)(__isl_keep EL *a, __isl_keep EL *b, void *user), void *user)
442
1.85k
{
443
1.85k
  S(LIST(EL),sort_data) data = { cmp, user };
444
1.85k
445
1.85k
  if (!list)
446
0
    return NULL;
447
1.85k
  if (list->n <= 1)
448
897
    return list;
449
957
  list = FN(LIST(EL),cow)(list);
450
957
  if (!list)
451
0
    return NULL;
452
957
453
957
  if (isl_sort(list->p, list->n, sizeof(list->p[0]),
454
957
      &FN(LIST(EL),cmp), &data) < 0)
455
0
    return FN(LIST(EL),free)(list);
456
957
457
957
  return list;
458
957
}
Unexecuted instantiation: isl_aff_list_sort
isl_pw_aff_list_sort
Line
Count
Source
442
107
{
443
107
  S(LIST(EL),sort_data) data = { cmp, user };
444
107
445
107
  if (!list)
446
0
    return NULL;
447
107
  if (list->n <= 1)
448
12
    return list;
449
95
  list = FN(LIST(EL),cow)(list);
450
95
  if (!list)
451
0
    return NULL;
452
95
453
95
  if (isl_sort(list->p, list->n, sizeof(list->p[0]),
454
95
      &FN(LIST(EL),cmp), &data) < 0)
455
0
    return FN(LIST(EL),free)(list);
456
95
457
95
  return list;
458
95
}
Unexecuted instantiation: isl_pw_multi_aff_list_sort
Unexecuted instantiation: isl_union_pw_aff_list_sort
Unexecuted instantiation: isl_union_pw_multi_aff_list_sort
Unexecuted instantiation: isl_ast_expr_list_sort
Unexecuted instantiation: isl_ast_node_list_sort
isl_ast_graft_list_sort
Line
Count
Source
442
36
{
443
36
  S(LIST(EL),sort_data) data = { cmp, user };
444
36
445
36
  if (!list)
446
0
    return NULL;
447
36
  if (list->n <= 1)
448
8
    return list;
449
28
  list = FN(LIST(EL),cow)(list);
450
28
  if (!list)
451
0
    return NULL;
452
28
453
28
  if (isl_sort(list->p, list->n, sizeof(list->p[0]),
454
28
      &FN(LIST(EL),cmp), &data) < 0)
455
0
    return FN(LIST(EL),free)(list);
456
28
457
28
  return list;
458
28
}
isl_constraint_list_sort
Line
Count
Source
442
1.71k
{
443
1.71k
  S(LIST(EL),sort_data) data = { cmp, user };
444
1.71k
445
1.71k
  if (!list)
446
0
    return NULL;
447
1.71k
  if (list->n <= 1)
448
877
    return list;
449
834
  list = FN(LIST(EL),cow)(list);
450
834
  if (!list)
451
0
    return NULL;
452
834
453
834
  if (isl_sort(list->p, list->n, sizeof(list->p[0]),
454
834
      &FN(LIST(EL),cmp), &data) < 0)
455
0
    return FN(LIST(EL),free)(list);
456
834
457
834
  return list;
458
834
}
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_sort
Unexecuted instantiation: isl_id_list_sort
Unexecuted instantiation: isl_basic_map_list_sort
Unexecuted instantiation: isl_map_list_sort
Unexecuted instantiation: isl_union_map_list_sort
Unexecuted instantiation: isl_pw_qpolynomial_list_sort
Unexecuted instantiation: isl_schedule_tree_list_sort
Unexecuted instantiation: isl_basic_set_list_sort
Unexecuted instantiation: isl_set_list_sort
Unexecuted instantiation: isl_union_set_list_sort
Unexecuted instantiation: isl_val_list_sort
459
460
/* Internal data structure for isl_*_list_foreach_scc.
461
 *
462
 * "list" is the original list.
463
 * "follows" is the user provided callback that defines the edges of the graph.
464
 */
465
S(LIST(EL),foreach_scc_data) {
466
  LIST(EL) *list;
467
  isl_bool (*follows)(__isl_keep EL *a, __isl_keep EL *b, void *user);
468
  void *follows_user;
469
};
470
471
/* Does element i of data->list follow element j?
472
 *
473
 * Use the user provided callback to find out.
474
 */
475
static isl_bool FN(LIST(EL),follows)(int i, int j, void *user)
476
152
{
477
152
  S(LIST(EL),foreach_scc_data) *data = user;
478
152
479
152
  return data->follows(data->list->p[i], data->list->p[j],
480
152
        data->follows_user);
481
152
}
Unexecuted instantiation: isl_aff.c:isl_aff_list_follows
Unexecuted instantiation: isl_aff.c:isl_pw_aff_list_follows
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_follows
Unexecuted instantiation: isl_aff.c:isl_union_pw_aff_list_follows
Unexecuted instantiation: isl_aff.c:isl_union_pw_multi_aff_list_follows
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_follows
Unexecuted instantiation: isl_ast.c:isl_ast_node_list_follows
Unexecuted instantiation: isl_ast_graft.c:isl_ast_graft_list_follows
Unexecuted instantiation: isl_constraint.c:isl_constraint_list_follows
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_follows
Unexecuted instantiation: isl_id.c:isl_id_list_follows
Unexecuted instantiation: isl_map_list.c:isl_basic_map_list_follows
Unexecuted instantiation: isl_map_list.c:isl_map_list_follows
Unexecuted instantiation: isl_map_list.c:isl_union_map_list_follows
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_follows
Unexecuted instantiation: isl_schedule_tree.c:isl_schedule_tree_list_follows
isl_set_list.c:isl_basic_set_list_follows
Line
Count
Source
476
152
{
477
152
  S(LIST(EL),foreach_scc_data) *data = user;
478
152
479
152
  return data->follows(data->list->p[i], data->list->p[j],
480
152
        data->follows_user);
481
152
}
Unexecuted instantiation: isl_set_list.c:isl_set_list_follows
Unexecuted instantiation: isl_set_list.c:isl_union_set_list_follows
Unexecuted instantiation: isl_val.c:isl_val_list_follows
482
483
/* Call "fn" on the sublist of "list" that consists of the elements
484
 * with indices specified by the "n" elements of "pos".
485
 */
486
static isl_stat FN(LIST(EL),call_on_scc)(__isl_keep LIST(EL) *list, int *pos,
487
  int n, isl_stat (*fn)(__isl_take LIST(EL) *scc, void *user), void *user)
488
123
{
489
123
  int i;
490
123
  isl_ctx *ctx;
491
123
  LIST(EL) *slice;
492
123
493
123
  ctx = FN(LIST(EL),get_ctx)(list);
494
123
  slice = FN(LIST(EL),alloc)(ctx, n);
495
246
  for (i = 0; i < n; 
++i123
) {
496
123
    EL *el;
497
123
498
123
    el = FN(EL,copy)(list->p[pos[i]]);
499
123
    slice = FN(LIST(EL),add)(slice, el);
500
123
  }
501
123
502
123
  return fn(slice, user);
503
123
}
Unexecuted instantiation: isl_aff.c:isl_aff_list_call_on_scc
Unexecuted instantiation: isl_aff.c:isl_pw_aff_list_call_on_scc
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_call_on_scc
Unexecuted instantiation: isl_aff.c:isl_union_pw_aff_list_call_on_scc
Unexecuted instantiation: isl_aff.c:isl_union_pw_multi_aff_list_call_on_scc
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_call_on_scc
Unexecuted instantiation: isl_ast.c:isl_ast_node_list_call_on_scc
Unexecuted instantiation: isl_ast_graft.c:isl_ast_graft_list_call_on_scc
Unexecuted instantiation: isl_constraint.c:isl_constraint_list_call_on_scc
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_call_on_scc
Unexecuted instantiation: isl_id.c:isl_id_list_call_on_scc
Unexecuted instantiation: isl_map_list.c:isl_basic_map_list_call_on_scc
Unexecuted instantiation: isl_map_list.c:isl_map_list_call_on_scc
Unexecuted instantiation: isl_map_list.c:isl_union_map_list_call_on_scc
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_call_on_scc
Unexecuted instantiation: isl_schedule_tree.c:isl_schedule_tree_list_call_on_scc
isl_set_list.c:isl_basic_set_list_call_on_scc
Line
Count
Source
488
123
{
489
123
  int i;
490
123
  isl_ctx *ctx;
491
123
  LIST(EL) *slice;
492
123
493
123
  ctx = FN(LIST(EL),get_ctx)(list);
494
123
  slice = FN(LIST(EL),alloc)(ctx, n);
495
246
  for (i = 0; i < n; 
++i123
) {
496
123
    EL *el;
497
123
498
123
    el = FN(EL,copy)(list->p[pos[i]]);
499
123
    slice = FN(LIST(EL),add)(slice, el);
500
123
  }
501
123
502
123
  return fn(slice, user);
503
123
}
Unexecuted instantiation: isl_set_list.c:isl_set_list_call_on_scc
Unexecuted instantiation: isl_set_list.c:isl_union_set_list_call_on_scc
Unexecuted instantiation: isl_val.c:isl_val_list_call_on_scc
504
505
/* Call "fn" on each of the strongly connected components (SCCs) of
506
 * the graph with as vertices the elements of "list" and
507
 * a directed edge from node b to node a iff follows(a, b)
508
 * returns 1.  follows should return -1 on error.
509
 *
510
 * If SCC a contains a node i that follows a node j in another SCC b
511
 * (i.e., follows(i, j, user) returns 1), then fn will be called on SCC a
512
 * after being called on SCC b.
513
 *
514
 * We simply call isl_tarjan_graph_init, extract the SCCs from the result and
515
 * call fn on each of them.
516
 */
517
isl_stat FN(LIST(EL),foreach_scc)(__isl_keep LIST(EL) *list,
518
  isl_bool (*follows)(__isl_keep EL *a, __isl_keep EL *b, void *user),
519
  void *follows_user,
520
  isl_stat (*fn)(__isl_take LIST(EL) *scc, void *user), void *fn_user)
521
78
{
522
78
  S(LIST(EL),foreach_scc_data) data = { list, follows, follows_user };
523
78
  int i, n;
524
78
  isl_ctx *ctx;
525
78
  struct isl_tarjan_graph *g;
526
78
527
78
  if (!list)
528
0
    return isl_stat_error;
529
78
  if (list->n == 0)
530
0
    return isl_stat_ok;
531
78
  if (list->n == 1)
532
0
    return fn(FN(LIST(EL),copy)(list), fn_user);
533
78
534
78
  ctx = FN(LIST(EL),get_ctx)(list);
535
78
  n = list->n;
536
78
  g = isl_tarjan_graph_init(ctx, n, &FN(LIST(EL),follows), &data);
537
78
  if (!g)
538
0
    return isl_stat_error;
539
78
540
78
  i = 0;
541
144
  do {
542
144
    int first;
543
144
544
144
    if (g->order[i] == -1)
545
144
      
isl_die0
(ctx, isl_error_internal, "cannot happen",
546
144
        break);
547
144
    first = i;
548
315
    while (g->order[i] != -1) {
549
171
      ++i; --n;
550
171
    }
551
144
    if (first == 0 && 
n == 078
) {
552
21
      isl_tarjan_graph_free(g);
553
21
      return fn(FN(LIST(EL),copy)(list), fn_user);
554
21
    }
555
123
    if (FN(LIST(EL),call_on_scc)(list, g->order + first, i - first,
556
123
              fn, fn_user) < 0)
557
0
      break;
558
123
    ++i;
559
123
  } while (n);
560
78
561
78
  isl_tarjan_graph_free(g);
562
57
563
57
  return n > 0 ? 
isl_stat_error0
: isl_stat_ok;
564
78
}
Unexecuted instantiation: isl_aff_list_foreach_scc
Unexecuted instantiation: isl_pw_aff_list_foreach_scc
Unexecuted instantiation: isl_pw_multi_aff_list_foreach_scc
Unexecuted instantiation: isl_union_pw_aff_list_foreach_scc
Unexecuted instantiation: isl_union_pw_multi_aff_list_foreach_scc
Unexecuted instantiation: isl_ast_expr_list_foreach_scc
Unexecuted instantiation: isl_ast_node_list_foreach_scc
Unexecuted instantiation: isl_ast_graft_list_foreach_scc
Unexecuted instantiation: isl_constraint_list_foreach_scc
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_foreach_scc
Unexecuted instantiation: isl_id_list_foreach_scc
Unexecuted instantiation: isl_basic_map_list_foreach_scc
Unexecuted instantiation: isl_map_list_foreach_scc
Unexecuted instantiation: isl_union_map_list_foreach_scc
Unexecuted instantiation: isl_pw_qpolynomial_list_foreach_scc
Unexecuted instantiation: isl_schedule_tree_list_foreach_scc
isl_basic_set_list_foreach_scc
Line
Count
Source
521
78
{
522
78
  S(LIST(EL),foreach_scc_data) data = { list, follows, follows_user };
523
78
  int i, n;
524
78
  isl_ctx *ctx;
525
78
  struct isl_tarjan_graph *g;
526
78
527
78
  if (!list)
528
0
    return isl_stat_error;
529
78
  if (list->n == 0)
530
0
    return isl_stat_ok;
531
78
  if (list->n == 1)
532
0
    return fn(FN(LIST(EL),copy)(list), fn_user);
533
78
534
78
  ctx = FN(LIST(EL),get_ctx)(list);
535
78
  n = list->n;
536
78
  g = isl_tarjan_graph_init(ctx, n, &FN(LIST(EL),follows), &data);
537
78
  if (!g)
538
0
    return isl_stat_error;
539
78
540
78
  i = 0;
541
144
  do {
542
144
    int first;
543
144
544
144
    if (g->order[i] == -1)
545
144
      
isl_die0
(ctx, isl_error_internal, "cannot happen",
546
144
        break);
547
144
    first = i;
548
315
    while (g->order[i] != -1) {
549
171
      ++i; --n;
550
171
    }
551
144
    if (first == 0 && 
n == 078
) {
552
21
      isl_tarjan_graph_free(g);
553
21
      return fn(FN(LIST(EL),copy)(list), fn_user);
554
21
    }
555
123
    if (FN(LIST(EL),call_on_scc)(list, g->order + first, i - first,
556
123
              fn, fn_user) < 0)
557
0
      break;
558
123
    ++i;
559
123
  } while (n);
560
78
561
78
  isl_tarjan_graph_free(g);
562
57
563
57
  return n > 0 ? 
isl_stat_error0
: isl_stat_ok;
564
78
}
Unexecuted instantiation: isl_set_list_foreach_scc
Unexecuted instantiation: isl_union_set_list_foreach_scc
Unexecuted instantiation: isl_val_list_foreach_scc
565
566
__isl_give LIST(EL) *FN(FN(LIST(EL),from),BASE)(__isl_take EL *el)
567
32.7k
{
568
32.7k
  isl_ctx *ctx;
569
32.7k
  LIST(EL) *list;
570
32.7k
571
32.7k
  if (!el)
572
1
    return NULL;
573
32.7k
  ctx = FN(EL,get_ctx)(el);
574
32.7k
  list = FN(LIST(EL),alloc)(ctx, 1);
575
32.7k
  if (!list)
576
0
    goto error;
577
32.7k
  list = FN(LIST(EL),add)(list, el);
578
32.7k
  return list;
579
32.7k
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
32.7k
}
isl_aff_list_from_aff
Line
Count
Source
567
8.34k
{
568
8.34k
  isl_ctx *ctx;
569
8.34k
  LIST(EL) *list;
570
8.34k
571
8.34k
  if (!el)
572
0
    return NULL;
573
8.34k
  ctx = FN(EL,get_ctx)(el);
574
8.34k
  list = FN(LIST(EL),alloc)(ctx, 1);
575
8.34k
  if (!list)
576
0
    goto error;
577
8.34k
  list = FN(LIST(EL),add)(list, el);
578
8.34k
  return list;
579
8.34k
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
8.34k
}
isl_pw_aff_list_from_pw_aff
Line
Count
Source
567
9.05k
{
568
9.05k
  isl_ctx *ctx;
569
9.05k
  LIST(EL) *list;
570
9.05k
571
9.05k
  if (!el)
572
1
    return NULL;
573
9.05k
  ctx = FN(EL,get_ctx)(el);
574
9.05k
  list = FN(LIST(EL),alloc)(ctx, 1);
575
9.05k
  if (!list)
576
0
    goto error;
577
9.05k
  list = FN(LIST(EL),add)(list, el);
578
9.05k
  return list;
579
9.05k
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
9.05k
}
Unexecuted instantiation: isl_pw_multi_aff_list_from_pw_multi_aff
Unexecuted instantiation: isl_union_pw_aff_list_from_union_pw_aff
isl_union_pw_multi_aff_list_from_union_pw_multi_aff
Line
Count
Source
567
8
{
568
8
  isl_ctx *ctx;
569
8
  LIST(EL) *list;
570
8
571
8
  if (!el)
572
0
    return NULL;
573
8
  ctx = FN(EL,get_ctx)(el);
574
8
  list = FN(LIST(EL),alloc)(ctx, 1);
575
8
  if (!list)
576
0
    goto error;
577
8
  list = FN(LIST(EL),add)(list, el);
578
8
  return list;
579
8
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
8
}
Unexecuted instantiation: isl_ast_expr_list_from_ast_expr
isl_ast_node_list_from_ast_node
Line
Count
Source
567
80
{
568
80
  isl_ctx *ctx;
569
80
  LIST(EL) *list;
570
80
571
80
  if (!el)
572
0
    return NULL;
573
80
  ctx = FN(EL,get_ctx)(el);
574
80
  list = FN(LIST(EL),alloc)(ctx, 1);
575
80
  if (!list)
576
0
    goto error;
577
80
  list = FN(LIST(EL),add)(list, el);
578
80
  return list;
579
80
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
80
}
isl_ast_graft_list_from_ast_graft
Line
Count
Source
567
2.27k
{
568
2.27k
  isl_ctx *ctx;
569
2.27k
  LIST(EL) *list;
570
2.27k
571
2.27k
  if (!el)
572
0
    return NULL;
573
2.27k
  ctx = FN(EL,get_ctx)(el);
574
2.27k
  list = FN(LIST(EL),alloc)(ctx, 1);
575
2.27k
  if (!list)
576
0
    goto error;
577
2.27k
  list = FN(LIST(EL),add)(list, el);
578
2.27k
  return list;
579
2.27k
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
2.27k
}
Unexecuted instantiation: isl_constraint_list_from_constraint
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_from_pw_qpolynomial_fold
Unexecuted instantiation: isl_id_list_from_id
Unexecuted instantiation: isl_basic_map_list_from_basic_map
Unexecuted instantiation: isl_map_list_from_map
isl_union_map_list_from_union_map
Line
Count
Source
567
1
{
568
1
  isl_ctx *ctx;
569
1
  LIST(EL) *list;
570
1
571
1
  if (!el)
572
0
    return NULL;
573
1
  ctx = FN(EL,get_ctx)(el);
574
1
  list = FN(LIST(EL),alloc)(ctx, 1);
575
1
  if (!list)
576
0
    goto error;
577
1
  list = FN(LIST(EL),add)(list, el);
578
1
  return list;
579
1
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
1
}
Unexecuted instantiation: isl_pw_qpolynomial_list_from_pw_qpolynomial
isl_schedule_tree_list_from_schedule_tree
Line
Count
Source
567
4.16k
{
568
4.16k
  isl_ctx *ctx;
569
4.16k
  LIST(EL) *list;
570
4.16k
571
4.16k
  if (!el)
572
0
    return NULL;
573
4.16k
  ctx = FN(EL,get_ctx)(el);
574
4.16k
  list = FN(LIST(EL),alloc)(ctx, 1);
575
4.16k
  if (!list)
576
0
    goto error;
577
4.16k
  list = FN(LIST(EL),add)(list, el);
578
4.16k
  return list;
579
4.16k
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
4.16k
}
isl_basic_set_list_from_basic_set
Line
Count
Source
567
28
{
568
28
  isl_ctx *ctx;
569
28
  LIST(EL) *list;
570
28
571
28
  if (!el)
572
0
    return NULL;
573
28
  ctx = FN(EL,get_ctx)(el);
574
28
  list = FN(LIST(EL),alloc)(ctx, 1);
575
28
  if (!list)
576
0
    goto error;
577
28
  list = FN(LIST(EL),add)(list, el);
578
28
  return list;
579
28
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
28
}
isl_set_list_from_set
Line
Count
Source
567
8.34k
{
568
8.34k
  isl_ctx *ctx;
569
8.34k
  LIST(EL) *list;
570
8.34k
571
8.34k
  if (!el)
572
0
    return NULL;
573
8.34k
  ctx = FN(EL,get_ctx)(el);
574
8.34k
  list = FN(LIST(EL),alloc)(ctx, 1);
575
8.34k
  if (!list)
576
0
    goto error;
577
8.34k
  list = FN(LIST(EL),add)(list, el);
578
8.34k
  return list;
579
8.34k
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
8.34k
}
isl_union_set_list_from_union_set
Line
Count
Source
567
429
{
568
429
  isl_ctx *ctx;
569
429
  LIST(EL) *list;
570
429
571
429
  if (!el)
572
0
    return NULL;
573
429
  ctx = FN(EL,get_ctx)(el);
574
429
  list = FN(LIST(EL),alloc)(ctx, 1);
575
429
  if (!list)
576
0
    goto error;
577
429
  list = FN(LIST(EL),add)(list, el);
578
429
  return list;
579
429
error:
580
0
  FN(EL,free)(el);
581
0
  return NULL;
582
429
}
Unexecuted instantiation: isl_val_list_from_val
583
584
/* Append the elements of "list2" to "list1", where "list1" is known
585
 * to have only a single reference and enough room to hold
586
 * the extra elements.
587
 */
588
static __isl_give LIST(EL) *FN(LIST(EL),concat_inplace)(
589
  __isl_take LIST(EL) *list1, __isl_take LIST(EL) *list2)
590
2.01k
{
591
2.01k
  int i;
592
2.01k
593
2.07k
  for (i = 0; i < list2->n; 
++i61
)
594
61
    list1 = FN(LIST(EL),add)(list1, FN(EL,copy)(list2->p[i]));
595
2.01k
  FN(LIST(EL),free)(list2);
596
2.01k
  return list1;
597
2.01k
}
Unexecuted instantiation: isl_aff.c:isl_aff_list_concat_inplace
Unexecuted instantiation: isl_aff.c:isl_pw_aff_list_concat_inplace
Unexecuted instantiation: isl_aff.c:isl_pw_multi_aff_list_concat_inplace
Unexecuted instantiation: isl_aff.c:isl_union_pw_aff_list_concat_inplace
Unexecuted instantiation: isl_aff.c:isl_union_pw_multi_aff_list_concat_inplace
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_concat_inplace
Unexecuted instantiation: isl_ast.c:isl_ast_node_list_concat_inplace
isl_ast_graft.c:isl_ast_graft_list_concat_inplace
Line
Count
Source
590
1.91k
{
591
1.91k
  int i;
592
1.91k
593
1.91k
  for (i = 0; i < list2->n; 
++i0
)
594
0
    list1 = FN(LIST(EL),add)(list1, FN(EL,copy)(list2->p[i]));
595
1.91k
  FN(LIST(EL),free)(list2);
596
1.91k
  return list1;
597
1.91k
}
Unexecuted instantiation: isl_constraint.c:isl_constraint_list_concat_inplace
Unexecuted instantiation: isl_fold.c:isl_pw_qpolynomial_fold_list_concat_inplace
Unexecuted instantiation: isl_id.c:isl_id_list_concat_inplace
isl_map_list.c:isl_basic_map_list_concat_inplace
Line
Count
Source
590
62
{
591
62
  int i;
592
62
593
62
  for (i = 0; i < list2->n; 
++i0
)
594
0
    list1 = FN(LIST(EL),add)(list1, FN(EL,copy)(list2->p[i]));
595
62
  FN(LIST(EL),free)(list2);
596
62
  return list1;
597
62
}
Unexecuted instantiation: isl_map_list.c:isl_map_list_concat_inplace
Unexecuted instantiation: isl_map_list.c:isl_union_map_list_concat_inplace
Unexecuted instantiation: isl_polynomial.c:isl_pw_qpolynomial_list_concat_inplace
Unexecuted instantiation: isl_schedule_tree.c:isl_schedule_tree_list_concat_inplace
isl_set_list.c:isl_basic_set_list_concat_inplace
Line
Count
Source
590
42
{
591
42
  int i;
592
42
593
103
  for (i = 0; i < list2->n; 
++i61
)
594
61
    list1 = FN(LIST(EL),add)(list1, FN(EL,copy)(list2->p[i]));
595
42
  FN(LIST(EL),free)(list2);
596
42
  return list1;
597
42
}
Unexecuted instantiation: isl_set_list.c:isl_set_list_concat_inplace
Unexecuted instantiation: isl_set_list.c:isl_union_set_list_concat_inplace
Unexecuted instantiation: isl_val.c:isl_val_list_concat_inplace
598
599
/* Concatenate "list1" and "list2".
600
 * If "list1" has only one reference and has enough room
601
 * for the elements of "list2", the add the elements to "list1" itself.
602
 * Otherwise, create a new list to store the result.
603
 */
604
__isl_give LIST(EL) *FN(LIST(EL),concat)(__isl_take LIST(EL) *list1,
605
  __isl_take LIST(EL) *list2)
606
9.23k
{
607
9.23k
  int i;
608
9.23k
  isl_ctx *ctx;
609
9.23k
  LIST(EL) *res;
610
9.23k
611
9.23k
  if (!list1 || !list2)
612
0
    goto error;
613
9.23k
614
9.23k
  if (list1->ref == 1 && 
list1->n + list2->n <= list1->size8.54k
)
615
2.01k
    return FN(LIST(EL),concat_inplace)(list1, list2);
616
7.21k
617
7.21k
  ctx = FN(LIST(EL),get_ctx)(list1);
618
7.21k
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
619
20.3k
  for (i = 0; i < list1->n; 
++i13.1k
)
620
13.1k
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list1->p[i]));
621
18.0k
  for (i = 0; i < list2->n; 
++i10.8k
)
622
10.8k
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list2->p[i]));
623
7.21k
624
7.21k
  FN(LIST(EL),free)(list1);
625
7.21k
  FN(LIST(EL),free)(list2);
626
7.21k
  return res;
627
7.21k
error:
628
0
  FN(LIST(EL),free)(list1);
629
0
  FN(LIST(EL),free)(list2);
630
0
  return NULL;
631
7.21k
}
Unexecuted instantiation: isl_aff_list_concat
isl_pw_aff_list_concat
Line
Count
Source
606
152
{
607
152
  int i;
608
152
  isl_ctx *ctx;
609
152
  LIST(EL) *res;
610
152
611
152
  if (!list1 || !list2)
612
0
    goto error;
613
152
614
152
  if (list1->ref == 1 && list1->n + list2->n <= list1->size)
615
0
    return FN(LIST(EL),concat_inplace)(list1, list2);
616
152
617
152
  ctx = FN(LIST(EL),get_ctx)(list1);
618
152
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
619
351
  for (i = 0; i < list1->n; 
++i199
)
620
199
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list1->p[i]));
621
304
  for (i = 0; i < list2->n; 
++i152
)
622
152
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list2->p[i]));
623
152
624
152
  FN(LIST(EL),free)(list1);
625
152
  FN(LIST(EL),free)(list2);
626
152
  return res;
627
152
error:
628
0
  FN(LIST(EL),free)(list1);
629
0
  FN(LIST(EL),free)(list2);
630
0
  return NULL;
631
152
}
Unexecuted instantiation: isl_pw_multi_aff_list_concat
Unexecuted instantiation: isl_union_pw_aff_list_concat
Unexecuted instantiation: isl_union_pw_multi_aff_list_concat
Unexecuted instantiation: isl_ast_expr_list_concat
Unexecuted instantiation: isl_ast_node_list_concat
isl_ast_graft_list_concat
Line
Count
Source
606
5.55k
{
607
5.55k
  int i;
608
5.55k
  isl_ctx *ctx;
609
5.55k
  LIST(EL) *res;
610
5.55k
611
5.55k
  if (!list1 || !list2)
612
0
    goto error;
613
5.55k
614
5.55k
  if (list1->ref == 1 && list1->n + list2->n <= list1->size)
615
1.91k
    return FN(LIST(EL),concat_inplace)(list1, list2);
616
3.63k
617
3.63k
  ctx = FN(LIST(EL),get_ctx)(list1);
618
3.63k
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
619
4.05k
  for (i = 0; i < list1->n; 
++i411
)
620
411
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list1->p[i]));
621
8.07k
  for (i = 0; i < list2->n; 
++i4.43k
)
622
4.43k
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list2->p[i]));
623
3.63k
624
3.63k
  FN(LIST(EL),free)(list1);
625
3.63k
  FN(LIST(EL),free)(list2);
626
3.63k
  return res;
627
3.63k
error:
628
0
  FN(LIST(EL),free)(list1);
629
0
  FN(LIST(EL),free)(list2);
630
0
  return NULL;
631
3.63k
}
Unexecuted instantiation: isl_constraint_list_concat
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_concat
isl_id_list_concat
Line
Count
Source
606
681
{
607
681
  int i;
608
681
  isl_ctx *ctx;
609
681
  LIST(EL) *res;
610
681
611
681
  if (!list1 || !list2)
612
0
    goto error;
613
681
614
681
  if (list1->ref == 1 && 
list1->n + list2->n <= list1->size0
)
615
0
    return FN(LIST(EL),concat_inplace)(list1, list2);
616
681
617
681
  ctx = FN(LIST(EL),get_ctx)(list1);
618
681
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
619
1.40k
  for (i = 0; i < list1->n; 
++i720
)
620
720
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list1->p[i]));
621
1.62k
  for (i = 0; i < list2->n; 
++i941
)
622
941
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list2->p[i]));
623
681
624
681
  FN(LIST(EL),free)(list1);
625
681
  FN(LIST(EL),free)(list2);
626
681
  return res;
627
681
error:
628
0
  FN(LIST(EL),free)(list1);
629
0
  FN(LIST(EL),free)(list2);
630
0
  return NULL;
631
681
}
isl_basic_map_list_concat
Line
Count
Source
606
2.71k
{
607
2.71k
  int i;
608
2.71k
  isl_ctx *ctx;
609
2.71k
  LIST(EL) *res;
610
2.71k
611
2.71k
  if (!list1 || !list2)
612
0
    goto error;
613
2.71k
614
2.71k
  if (list1->ref == 1 && list1->n + list2->n <= list1->size)
615
62
    return FN(LIST(EL),concat_inplace)(list1, list2);
616
2.64k
617
2.64k
  ctx = FN(LIST(EL),get_ctx)(list1);
618
2.64k
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
619
14.4k
  for (i = 0; i < list1->n; 
++i11.8k
)
620
11.8k
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list1->p[i]));
621
7.86k
  for (i = 0; i < list2->n; 
++i5.21k
)
622
5.21k
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list2->p[i]));
623
2.64k
624
2.64k
  FN(LIST(EL),free)(list1);
625
2.64k
  FN(LIST(EL),free)(list2);
626
2.64k
  return res;
627
2.64k
error:
628
0
  FN(LIST(EL),free)(list1);
629
0
  FN(LIST(EL),free)(list2);
630
0
  return NULL;
631
2.64k
}
Unexecuted instantiation: isl_map_list_concat
Unexecuted instantiation: isl_union_map_list_concat
Unexecuted instantiation: isl_pw_qpolynomial_list_concat
Unexecuted instantiation: isl_schedule_tree_list_concat
isl_basic_set_list_concat
Line
Count
Source
606
133
{
607
133
  int i;
608
133
  isl_ctx *ctx;
609
133
  LIST(EL) *res;
610
133
611
133
  if (!list1 || !list2)
612
0
    goto error;
613
133
614
133
  if (list1->ref == 1 && list1->n + list2->n <= list1->size)
615
42
    return FN(LIST(EL),concat_inplace)(list1, list2);
616
91
617
91
  ctx = FN(LIST(EL),get_ctx)(list1);
618
91
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
619
105
  for (i = 0; i < list1->n; 
++i14
)
620
14
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list1->p[i]));
621
183
  for (i = 0; i < list2->n; 
++i92
)
622
92
    res = FN(LIST(EL),add)(res, FN(EL,copy)(list2->p[i]));
623
91
624
91
  FN(LIST(EL),free)(list1);
625
91
  FN(LIST(EL),free)(list2);
626
91
  return res;
627
91
error:
628
0
  FN(LIST(EL),free)(list1);
629
0
  FN(LIST(EL),free)(list2);
630
0
  return NULL;
631
91
}
Unexecuted instantiation: isl_set_list_concat
Unexecuted instantiation: isl_union_set_list_concat
Unexecuted instantiation: isl_val_list_concat
632
633
__isl_give isl_printer *CAT(isl_printer_print_,LIST(BASE))(
634
  __isl_take isl_printer *p, __isl_keep LIST(EL) *list)
635
0
{
636
0
  int i;
637
0
638
0
  if (!p || !list)
639
0
    goto error;
640
0
  p = isl_printer_print_str(p, "(");
641
0
  for (i = 0; i < list->n; ++i) {
642
0
    if (i)
643
0
      p = isl_printer_print_str(p, ",");
644
0
    p = CAT(isl_printer_print_,BASE)(p, list->p[i]);
645
0
  }
646
0
  p = isl_printer_print_str(p, ")");
647
0
  return p;
648
0
error:
649
0
  isl_printer_free(p);
650
0
  return NULL;
651
0
}
Unexecuted instantiation: isl_printer_print_aff_list
Unexecuted instantiation: isl_printer_print_pw_aff_list
Unexecuted instantiation: isl_printer_print_pw_multi_aff_list
Unexecuted instantiation: isl_printer_print_union_pw_aff_list
Unexecuted instantiation: isl_printer_print_union_pw_multi_aff_list
Unexecuted instantiation: isl_printer_print_ast_expr_list
Unexecuted instantiation: isl_printer_print_ast_node_list
Unexecuted instantiation: isl_printer_print_ast_graft_list
Unexecuted instantiation: isl_printer_print_constraint_list
Unexecuted instantiation: isl_printer_print_pw_qpolynomial_fold_list
Unexecuted instantiation: isl_printer_print_id_list
Unexecuted instantiation: isl_printer_print_basic_map_list
Unexecuted instantiation: isl_printer_print_map_list
Unexecuted instantiation: isl_printer_print_union_map_list
Unexecuted instantiation: isl_printer_print_pw_qpolynomial_list
Unexecuted instantiation: isl_printer_print_schedule_tree_list
Unexecuted instantiation: isl_printer_print_basic_set_list
Unexecuted instantiation: isl_printer_print_set_list
Unexecuted instantiation: isl_printer_print_union_set_list
Unexecuted instantiation: isl_printer_print_val_list
652
653
void FN(LIST(EL),dump)(__isl_keep LIST(EL) *list)
654
0
{
655
0
  isl_printer *printer;
656
0
657
0
  if (!list)
658
0
    return;
659
0
660
0
  printer = isl_printer_to_file(FN(LIST(EL),get_ctx)(list), stderr);
661
0
  printer = CAT(isl_printer_print_,LIST(BASE))(printer, list);
662
0
  printer = isl_printer_end_line(printer);
663
0
664
0
  isl_printer_free(printer);
665
0
}
Unexecuted instantiation: isl_aff_list_dump
Unexecuted instantiation: isl_pw_aff_list_dump
Unexecuted instantiation: isl_pw_multi_aff_list_dump
Unexecuted instantiation: isl_union_pw_aff_list_dump
Unexecuted instantiation: isl_union_pw_multi_aff_list_dump
Unexecuted instantiation: isl_ast_expr_list_dump
Unexecuted instantiation: isl_ast_node_list_dump
Unexecuted instantiation: isl_ast_graft_list_dump
Unexecuted instantiation: isl_constraint_list_dump
Unexecuted instantiation: isl_pw_qpolynomial_fold_list_dump
Unexecuted instantiation: isl_id_list_dump
Unexecuted instantiation: isl_basic_map_list_dump
Unexecuted instantiation: isl_map_list_dump
Unexecuted instantiation: isl_union_map_list_dump
Unexecuted instantiation: isl_pw_qpolynomial_list_dump
Unexecuted instantiation: isl_schedule_tree_list_dump
Unexecuted instantiation: isl_basic_set_list_dump
Unexecuted instantiation: isl_set_list_dump
Unexecuted instantiation: isl_union_set_list_dump
Unexecuted instantiation: isl_val_list_dump