Coverage Report

Created: 2017-03-28 09:59

/Users/buildslave/jenkins/sharedspace/clang-stage2-coverage-R@2/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
 *
6
 * Use of this software is governed by the MIT license
7
 *
8
 * Written by Sven Verdoolaege, K.U.Leuven, Departement
9
 * Computerwetenschappen, Celestijnenlaan 200A, B-3001 Leuven, Belgium
10
 * and INRIA Saclay - Ile-de-France, Parc Club Orsay Universite,
11
 * ZAC des vignes, 4 rue Jacques Monod, 91893 Orsay, France
12
 * and Ecole Normale Superieure, 45 rue d’Ulm, 75230 Paris, France
13
 */
14
15
#include <isl_sort.h>
16
#include <isl_tarjan.h>
17
18
4.10k
#define xCAT(A,B) A ## B
19
4.10k
#define CAT(A,B) xCAT(A,B)
20
#undef EL
21
4.10k
#define EL CAT(isl_,BASE)
22
1.13M
#define xFN(TYPE,NAME) TYPE ## _ ## NAME
23
1.13M
#define FN(TYPE,NAME) xFN(TYPE,NAME)
24
312k
#define xLIST(EL) EL ## _list
25
312k
#define LIST(EL) xLIST(EL)
26
2.64k
#define xS(TYPE,NAME) struct TYPE ## _ ## NAME
27
2.64k
#define S(TYPE,NAME) xS(TYPE,NAME)
28
29
isl_ctx *FN(LIST(EL),get_ctx)(__isl_keep LIST(EL) *list)
30
53.8k
{
31
53.8k
  return list ? list->ctx : NULL;
32
53.8k
}
isl_aff_list_get_ctx
Line
Count
Source
30
20
{
31
20
  return list ? list->ctx : NULL;
32
20
}
isl_pw_aff_list_get_ctx
Line
Count
Source
30
8.96k
{
31
8.96k
  return list ? list->ctx : NULL;
32
8.96k
}
isl_union_pw_aff_list_get_ctx
Line
Count
Source
30
15
{
31
15
  return list ? list->ctx : NULL;
32
15
}
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
30
237
{
31
237
  return list ? list->ctx : NULL;
32
237
}
isl_ast_graft_list_get_ctx
Line
Count
Source
30
7.49k
{
31
7.49k
  return list ? list->ctx : NULL;
32
7.49k
}
isl_band_list_get_ctx
Line
Count
Source
30
12
{
31
12
  return list ? list->ctx : NULL;
32
12
}
isl_constraint_list_get_ctx
Line
Count
Source
30
1.01k
{
31
1.01k
  return list ? list->ctx : NULL;
32
1.01k
}
isl_id_list_get_ctx
Line
Count
Source
30
557
{
31
557
  return list ? list->ctx : NULL;
32
557
}
isl_basic_map_list_get_ctx
Line
Count
Source
30
878
{
31
878
  return list ? list->ctx : NULL;
32
878
}
isl_map_list_get_ctx
Line
Count
Source
30
429
{
31
429
  return list ? list->ctx : NULL;
32
429
}
isl_union_map_list_get_ctx
Line
Count
Source
30
1
{
31
1
  return list ? list->ctx : NULL;
32
1
}
isl_schedule_tree_list_get_ctx
Line
Count
Source
30
32.5k
{
31
32.5k
  return list ? list->ctx : NULL;
32
32.5k
}
isl_basic_set_list_get_ctx
Line
Count
Source
30
1.48k
{
31
1.48k
  return list ? list->ctx : NULL;
32
1.48k
}
isl_set_list_get_ctx
Line
Count
Source
30
20
{
31
20
  return list ? list->ctx : NULL;
32
20
}
isl_union_set_list_get_ctx
Line
Count
Source
30
167
{
31
167
  return list ? list->ctx : NULL;
32
167
}
isl_val_list_get_ctx
Line
Count
Source
30
8
{
31
8
  return list ? list->ctx : NULL;
32
8
}
33
34
__isl_give LIST(EL) *FN(LIST(EL),alloc)(isl_ctx *ctx, int n)
35
85.8k
{
36
85.8k
  LIST(EL) *list;
37
85.8k
38
85.8k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
85.8k
      "cannot create list of negative length",
41
85.8k
      return NULL);
42
85.8k
  
list = 85.8k
isl_alloc85.8k
(ctx, LIST(EL),
43
85.8k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
85.8k
  if (!list)
45
0
    return NULL;
46
85.8k
47
85.8k
  list->ctx = ctx;
48
85.8k
  isl_ctx_ref(ctx);
49
85.8k
  list->ref = 1;
50
85.8k
  list->size = n;
51
85.8k
  list->n = 0;
52
85.8k
  return list;
53
85.8k
}
isl_id_list_alloc
Line
Count
Source
35
1.65k
{
36
1.65k
  LIST(EL) *list;
37
1.65k
38
1.65k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
1.65k
      "cannot create list of negative length",
41
1.65k
      return NULL);
42
1.65k
  
list = 1.65k
isl_alloc1.65k
(ctx, LIST(EL),
43
1.65k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
1.65k
  if (!list)
45
0
    return NULL;
46
1.65k
47
1.65k
  list->ctx = ctx;
48
1.65k
  isl_ctx_ref(ctx);
49
1.65k
  list->ref = 1;
50
1.65k
  list->size = n;
51
1.65k
  list->n = 0;
52
1.65k
  return list;
53
1.65k
}
isl_val_list_alloc
Line
Count
Source
35
11
{
36
11
  LIST(EL) *list;
37
11
38
11
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
11
      "cannot create list of negative length",
41
11
      return NULL);
42
11
  
list = 11
isl_alloc11
(ctx, LIST(EL),
43
11
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
11
  if (!list)
45
0
    return NULL;
46
11
47
11
  list->ctx = ctx;
48
11
  isl_ctx_ref(ctx);
49
11
  list->ref = 1;
50
11
  list->size = n;
51
11
  list->n = 0;
52
11
  return list;
53
11
}
isl_aff_list_alloc
Line
Count
Source
35
4.74k
{
36
4.74k
  LIST(EL) *list;
37
4.74k
38
4.74k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
4.74k
      "cannot create list of negative length",
41
4.74k
      return NULL);
42
4.74k
  
list = 4.74k
isl_alloc4.74k
(ctx, LIST(EL),
43
4.74k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
4.74k
  if (!list)
45
0
    return NULL;
46
4.74k
47
4.74k
  list->ctx = ctx;
48
4.74k
  isl_ctx_ref(ctx);
49
4.74k
  list->ref = 1;
50
4.74k
  list->size = n;
51
4.74k
  list->n = 0;
52
4.74k
  return list;
53
4.74k
}
isl_pw_aff_list_alloc
Line
Count
Source
35
13.4k
{
36
13.4k
  LIST(EL) *list;
37
13.4k
38
13.4k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
13.4k
      "cannot create list of negative length",
41
13.4k
      return NULL);
42
13.4k
  
list = 13.4k
isl_alloc13.4k
(ctx, LIST(EL),
43
13.4k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
13.4k
  if (!list)
45
0
    return NULL;
46
13.4k
47
13.4k
  list->ctx = ctx;
48
13.4k
  isl_ctx_ref(ctx);
49
13.4k
  list->ref = 1;
50
13.4k
  list->size = n;
51
13.4k
  list->n = 0;
52
13.4k
  return list;
53
13.4k
}
isl_union_pw_aff_list_alloc
Line
Count
Source
35
15
{
36
15
  LIST(EL) *list;
37
15
38
15
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
15
      "cannot create list of negative length",
41
15
      return NULL);
42
15
  
list = 15
isl_alloc15
(ctx, LIST(EL),
43
15
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
15
  if (!list)
45
0
    return NULL;
46
15
47
15
  list->ctx = ctx;
48
15
  isl_ctx_ref(ctx);
49
15
  list->ref = 1;
50
15
  list->size = n;
51
15
  list->n = 0;
52
15
  return list;
53
15
}
isl_union_pw_multi_aff_list_alloc
Line
Count
Source
35
7
{
36
7
  LIST(EL) *list;
37
7
38
7
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
7
      "cannot create list of negative length",
41
7
      return NULL);
42
7
  
list = 7
isl_alloc7
(ctx, LIST(EL),
43
7
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
7
  if (!list)
45
0
    return NULL;
46
7
47
7
  list->ctx = ctx;
48
7
  isl_ctx_ref(ctx);
49
7
  list->ref = 1;
50
7
  list->size = n;
51
7
  list->n = 0;
52
7
  return list;
53
7
}
Unexecuted instantiation: isl_ast_expr_list_alloc
isl_ast_node_list_alloc
Line
Count
Source
35
2.36k
{
36
2.36k
  LIST(EL) *list;
37
2.36k
38
2.36k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
2.36k
      "cannot create list of negative length",
41
2.36k
      return NULL);
42
2.36k
  
list = 2.36k
isl_alloc2.36k
(ctx, LIST(EL),
43
2.36k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
2.36k
  if (!list)
45
0
    return NULL;
46
2.36k
47
2.36k
  list->ctx = ctx;
48
2.36k
  isl_ctx_ref(ctx);
49
2.36k
  list->ref = 1;
50
2.36k
  list->size = n;
51
2.36k
  list->n = 0;
52
2.36k
  return list;
53
2.36k
}
isl_ast_graft_list_alloc
Line
Count
Source
35
11.2k
{
36
11.2k
  LIST(EL) *list;
37
11.2k
38
11.2k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
11.2k
      "cannot create list of negative length",
41
11.2k
      return NULL);
42
11.2k
  
list = 11.2k
isl_alloc11.2k
(ctx, LIST(EL),
43
11.2k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
11.2k
  if (!list)
45
0
    return NULL;
46
11.2k
47
11.2k
  list->ctx = ctx;
48
11.2k
  isl_ctx_ref(ctx);
49
11.2k
  list->ref = 1;
50
11.2k
  list->size = n;
51
11.2k
  list->n = 0;
52
11.2k
  return list;
53
11.2k
}
isl_band_list_alloc
Line
Count
Source
35
16
{
36
16
  LIST(EL) *list;
37
16
38
16
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
16
      "cannot create list of negative length",
41
16
      return NULL);
42
16
  
list = 16
isl_alloc16
(ctx, LIST(EL),
43
16
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
16
  if (!list)
45
0
    return NULL;
46
16
47
16
  list->ctx = ctx;
48
16
  isl_ctx_ref(ctx);
49
16
  list->ref = 1;
50
16
  list->size = n;
51
16
  list->n = 0;
52
16
  return list;
53
16
}
isl_constraint_list_alloc
Line
Count
Source
35
2.09k
{
36
2.09k
  LIST(EL) *list;
37
2.09k
38
2.09k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
2.09k
      "cannot create list of negative length",
41
2.09k
      return NULL);
42
2.09k
  
list = 2.09k
isl_alloc2.09k
(ctx, LIST(EL),
43
2.09k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
2.09k
  if (!list)
45
0
    return NULL;
46
2.09k
47
2.09k
  list->ctx = ctx;
48
2.09k
  isl_ctx_ref(ctx);
49
2.09k
  list->ref = 1;
50
2.09k
  list->size = n;
51
2.09k
  list->n = 0;
52
2.09k
  return list;
53
2.09k
}
isl_basic_map_list_alloc
Line
Count
Source
35
2.18k
{
36
2.18k
  LIST(EL) *list;
37
2.18k
38
2.18k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
2.18k
      "cannot create list of negative length",
41
2.18k
      return NULL);
42
2.18k
  
list = 2.18k
isl_alloc2.18k
(ctx, LIST(EL),
43
2.18k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
2.18k
  if (!list)
45
0
    return NULL;
46
2.18k
47
2.18k
  list->ctx = ctx;
48
2.18k
  isl_ctx_ref(ctx);
49
2.18k
  list->ref = 1;
50
2.18k
  list->size = n;
51
2.18k
  list->n = 0;
52
2.18k
  return list;
53
2.18k
}
isl_map_list_alloc
Line
Count
Source
35
397
{
36
397
  LIST(EL) *list;
37
397
38
397
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
397
      "cannot create list of negative length",
41
397
      return NULL);
42
397
  
list = 397
isl_alloc397
(ctx, LIST(EL),
43
397
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
397
  if (!list)
45
0
    return NULL;
46
397
47
397
  list->ctx = ctx;
48
397
  isl_ctx_ref(ctx);
49
397
  list->ref = 1;
50
397
  list->size = n;
51
397
  list->n = 0;
52
397
  return list;
53
397
}
isl_union_map_list_alloc
Line
Count
Source
35
1
{
36
1
  LIST(EL) *list;
37
1
38
1
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
1
      "cannot create list of negative length",
41
1
      return NULL);
42
1
  
list = 1
isl_alloc1
(ctx, LIST(EL),
43
1
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
1
  if (!list)
45
0
    return NULL;
46
1
47
1
  list->ctx = ctx;
48
1
  isl_ctx_ref(ctx);
49
1
  list->ref = 1;
50
1
  list->size = n;
51
1
  list->n = 0;
52
1
  return list;
53
1
}
isl_schedule_tree_list_alloc
Line
Count
Source
35
39.3k
{
36
39.3k
  LIST(EL) *list;
37
39.3k
38
39.3k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
39.3k
      "cannot create list of negative length",
41
39.3k
      return NULL);
42
39.3k
  
list = 39.3k
isl_alloc39.3k
(ctx, LIST(EL),
43
39.3k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
39.3k
  if (!list)
45
0
    return NULL;
46
39.3k
47
39.3k
  list->ctx = ctx;
48
39.3k
  isl_ctx_ref(ctx);
49
39.3k
  list->ref = 1;
50
39.3k
  list->size = n;
51
39.3k
  list->n = 0;
52
39.3k
  return list;
53
39.3k
}
isl_basic_set_list_alloc
Line
Count
Source
35
2.19k
{
36
2.19k
  LIST(EL) *list;
37
2.19k
38
2.19k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
2.19k
      "cannot create list of negative length",
41
2.19k
      return NULL);
42
2.19k
  
list = 2.19k
isl_alloc2.19k
(ctx, LIST(EL),
43
2.19k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
2.19k
  if (!list)
45
0
    return NULL;
46
2.19k
47
2.19k
  list->ctx = ctx;
48
2.19k
  isl_ctx_ref(ctx);
49
2.19k
  list->ref = 1;
50
2.19k
  list->size = n;
51
2.19k
  list->n = 0;
52
2.19k
  return list;
53
2.19k
}
isl_set_list_alloc
Line
Count
Source
35
5.69k
{
36
5.69k
  LIST(EL) *list;
37
5.69k
38
5.69k
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
5.69k
      "cannot create list of negative length",
41
5.69k
      return NULL);
42
5.69k
  
list = 5.69k
isl_alloc5.69k
(ctx, LIST(EL),
43
5.69k
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
5.69k
  if (!list)
45
0
    return NULL;
46
5.69k
47
5.69k
  list->ctx = ctx;
48
5.69k
  isl_ctx_ref(ctx);
49
5.69k
  list->ref = 1;
50
5.69k
  list->size = n;
51
5.69k
  list->n = 0;
52
5.69k
  return list;
53
5.69k
}
isl_union_set_list_alloc
Line
Count
Source
35
387
{
36
387
  LIST(EL) *list;
37
387
38
387
  if (n < 0)
39
0
    isl_die(ctx, isl_error_invalid,
40
387
      "cannot create list of negative length",
41
387
      return NULL);
42
387
  
list = 387
isl_alloc387
(ctx, LIST(EL),
43
387
       sizeof(LIST(EL)) + (n - 1) * sizeof(struct EL *));
44
387
  if (!list)
45
0
    return NULL;
46
387
47
387
  list->ctx = ctx;
48
387
  isl_ctx_ref(ctx);
49
387
  list->ref = 1;
50
387
  list->size = n;
51
387
  list->n = 0;
52
387
  return list;
53
387
}
54
55
__isl_give LIST(EL) *FN(LIST(EL),copy)(__isl_keep LIST(EL) *list)
56
58.6k
{
57
58.6k
  if (!list)
58
0
    return NULL;
59
58.6k
60
58.6k
  list->ref++;
61
58.6k
  return list;
62
58.6k
}
Unexecuted instantiation: isl_val_list_copy
Unexecuted instantiation: isl_aff_list_copy
isl_pw_aff_list_copy
Line
Count
Source
56
10.0k
{
57
10.0k
  if (!list)
58
0
    return NULL;
59
10.0k
60
10.0k
  list->ref++;
61
10.0k
  return list;
62
10.0k
}
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
56
96
{
57
96
  if (!list)
58
0
    return NULL;
59
96
60
96
  list->ref++;
61
96
  return list;
62
96
}
Unexecuted instantiation: isl_ast_graft_list_copy
Unexecuted instantiation: isl_band_list_copy
isl_constraint_list_copy
Line
Count
Source
56
627
{
57
627
  if (!list)
58
0
    return NULL;
59
627
60
627
  list->ref++;
61
627
  return list;
62
627
}
isl_id_list_copy
Line
Count
Source
56
18.7k
{
57
18.7k
  if (!list)
58
0
    return NULL;
59
18.7k
60
18.7k
  list->ref++;
61
18.7k
  return list;
62
18.7k
}
Unexecuted instantiation: isl_basic_map_list_copy
Unexecuted instantiation: isl_map_list_copy
Unexecuted instantiation: isl_union_map_list_copy
isl_schedule_tree_list_copy
Line
Count
Source
56
29.0k
{
57
29.0k
  if (!list)
58
0
    return NULL;
59
29.0k
60
29.0k
  list->ref++;
61
29.0k
  return list;
62
29.0k
}
isl_basic_set_list_copy
Line
Count
Source
56
13
{
57
13
  if (!list)
58
0
    return NULL;
59
13
60
13
  list->ref++;
61
13
  return list;
62
13
}
Unexecuted instantiation: isl_set_list_copy
Unexecuted instantiation: isl_union_set_list_copy
63
64
__isl_give LIST(EL) *FN(LIST(EL),dup)(__isl_keep LIST(EL) *list)
65
23.0k
{
66
23.0k
  int i;
67
23.0k
  LIST(EL) *dup;
68
23.0k
69
23.0k
  if (!list)
70
0
    return NULL;
71
23.0k
72
23.0k
  
dup = 23.0k
FN23.0k
(LIST(EL),alloc)(
FN23.0k
(LIST(EL),get_ctx)(list), list->n);
73
23.0k
  if (!dup)
74
0
    return NULL;
75
108k
  
for (i = 0; 23.0k
i < list->n108k
;
++i85.6k
)
76
85.6k
    
dup = 85.6k
FN85.6k
(LIST(EL),add)(dup,
FN85.6k
(EL,copy)(list->p[i]));
77
23.0k
  return dup;
78
23.0k
}
isl_pw_aff_list_dup
Line
Count
Source
65
252
{
66
252
  int i;
67
252
  LIST(EL) *dup;
68
252
69
252
  if (!list)
70
0
    return NULL;
71
252
72
252
  
dup = 252
FN252
(LIST(EL),alloc)(
FN252
(LIST(EL),get_ctx)(list), list->n);
73
252
  if (!dup)
74
0
    return NULL;
75
567
  
for (i = 0; 252
i < list->n567
;
++i315
)
76
315
    
dup = 315
FN315
(LIST(EL),add)(dup,
FN315
(EL,copy)(list->p[i]));
77
252
  return dup;
78
252
}
Unexecuted instantiation: isl_val_list_dup
Unexecuted instantiation: isl_union_set_list_dup
Unexecuted instantiation: isl_set_list_dup
Unexecuted instantiation: isl_basic_set_list_dup
isl_schedule_tree_list_dup
Line
Count
Source
65
22.1k
{
66
22.1k
  int i;
67
22.1k
  LIST(EL) *dup;
68
22.1k
69
22.1k
  if (!list)
70
0
    return NULL;
71
22.1k
72
22.1k
  
dup = 22.1k
FN22.1k
(LIST(EL),alloc)(
FN22.1k
(LIST(EL),get_ctx)(list), list->n);
73
22.1k
  if (!dup)
74
0
    return NULL;
75
106k
  
for (i = 0; 22.1k
i < list->n106k
;
++i84.0k
)
76
84.0k
    
dup = 84.0k
FN84.0k
(LIST(EL),add)(dup,
FN84.0k
(EL,copy)(list->p[i]));
77
22.1k
  return dup;
78
22.1k
}
Unexecuted instantiation: isl_union_map_list_dup
Unexecuted instantiation: isl_map_list_dup
Unexecuted instantiation: isl_basic_map_list_dup
Unexecuted instantiation: isl_id_list_dup
isl_constraint_list_dup
Line
Count
Source
65
627
{
66
627
  int i;
67
627
  LIST(EL) *dup;
68
627
69
627
  if (!list)
70
0
    return NULL;
71
627
72
627
  
dup = 627
FN627
(LIST(EL),alloc)(
FN627
(LIST(EL),get_ctx)(list), list->n);
73
627
  if (!dup)
74
0
    return NULL;
75
1.94k
  
for (i = 0; 627
i < list->n1.94k
;
++i1.31k
)
76
1.31k
    
dup = 1.31k
FN1.31k
(LIST(EL),add)(dup,
FN1.31k
(EL,copy)(list->p[i]));
77
627
  return dup;
78
627
}
isl_band_list_dup
Line
Count
Source
65
4
{
66
4
  int i;
67
4
  LIST(EL) *dup;
68
4
69
4
  if (!list)
70
0
    return NULL;
71
4
72
4
  
dup = 4
FN4
(LIST(EL),alloc)(
FN4
(LIST(EL),get_ctx)(list), list->n);
73
4
  if (!dup)
74
0
    return NULL;
75
10
  
for (i = 0; 4
i < list->n10
;
++i6
)
76
6
    
dup = 6
FN6
(LIST(EL),add)(dup,
FN6
(EL,copy)(list->p[i]));
77
4
  return dup;
78
4
}
Unexecuted instantiation: isl_ast_graft_list_dup
Unexecuted instantiation: isl_ast_node_list_dup
Unexecuted instantiation: isl_ast_expr_list_dup
Unexecuted instantiation: isl_union_pw_multi_aff_list_dup
Unexecuted instantiation: isl_union_pw_aff_list_dup
Unexecuted instantiation: isl_aff_list_dup
79
80
__isl_give LIST(EL) *FN(LIST(EL),cow)(__isl_take LIST(EL) *list)
81
56.9k
{
82
56.9k
  if (!list)
83
0
    return NULL;
84
56.9k
85
56.9k
  
if (56.9k
list->ref == 156.9k
)
86
33.8k
    return list;
87
23.0k
  list->ref--;
88
23.0k
  return FN(LIST(EL),dup)(list);
89
56.9k
}
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
81
34
{
82
34
  if (!list)
83
0
    return NULL;
84
34
85
34
  
if (34
list->ref == 134
)
86
34
    return list;
87
0
  list->ref--;
88
0
  return FN(LIST(EL),dup)(list);
89
34
}
Unexecuted instantiation: isl_band_list_cow
isl_constraint_list_cow
Line
Count
Source
81
1.99k
{
82
1.99k
  if (!list)
83
0
    return NULL;
84
1.99k
85
1.99k
  
if (1.99k
list->ref == 11.99k
)
86
1.36k
    return list;
87
627
  list->ref--;
88
627
  return FN(LIST(EL),dup)(list);
89
1.99k
}
isl_id_list_cow
Line
Count
Source
81
1
{
82
1
  if (!list)
83
0
    return NULL;
84
1
85
1
  
if (1
list->ref == 11
)
86
1
    return list;
87
0
  list->ref--;
88
0
  return FN(LIST(EL),dup)(list);
89
1
}
isl_basic_map_list_cow
Line
Count
Source
81
55
{
82
55
  if (!list)
83
0
    return NULL;
84
55
85
55
  
if (55
list->ref == 155
)
86
55
    return list;
87
0
  list->ref--;
88
0
  return FN(LIST(EL),dup)(list);
89
55
}
isl_aff_list_cow
Line
Count
Source
81
2
{
82
2
  if (!list)
83
0
    return NULL;
84
2
85
2
  
if (2
list->ref == 12
)
86
2
    return list;
87
0
  list->ref--;
88
0
  return FN(LIST(EL),dup)(list);
89
2
}
Unexecuted instantiation: isl_map_list_cow
isl_union_map_list_cow
Line
Count
Source
81
6
{
82
6
  if (!list)
83
0
    return NULL;
84
6
85
6
  
if (6
list->ref == 16
)
86
6
    return list;
87
0
  list->ref--;
88
0
  return FN(LIST(EL),dup)(list);
89
6
}
isl_schedule_tree_list_cow
Line
Count
Source
81
48.2k
{
82
48.2k
  if (!list)
83
0
    return NULL;
84
48.2k
85
48.2k
  
if (48.2k
list->ref == 148.2k
)
86
26.0k
    return list;
87
22.1k
  list->ref--;
88
22.1k
  return FN(LIST(EL),dup)(list);
89
48.2k
}
isl_basic_set_list_cow
Line
Count
Source
81
2.13k
{
82
2.13k
  if (!list)
83
0
    return NULL;
84
2.13k
85
2.13k
  
if (2.13k
list->ref == 12.13k
)
86
2.13k
    return list;
87
0
  list->ref--;
88
0
  return FN(LIST(EL),dup)(list);
89
2.13k
}
isl_set_list_cow
Line
Count
Source
81
839
{
82
839
  if (!list)
83
0
    return NULL;
84
839
85
839
  
if (839
list->ref == 1839
)
86
839
    return list;
87
0
  list->ref--;
88
0
  return FN(LIST(EL),dup)(list);
89
839
}
isl_union_set_list_cow
Line
Count
Source
81
1.00k
{
82
1.00k
  if (!list)
83
0
    return NULL;
84
1.00k
85
1.00k
  
if (1.00k
list->ref == 11.00k
)
86
1.00k
    return list;
87
0
  list->ref--;
88
0
  return FN(LIST(EL),dup)(list);
89
1.00k
}
Unexecuted instantiation: isl_val_list_cow
isl_pw_aff_list_cow
Line
Count
Source
81
2.59k
{
82
2.59k
  if (!list)
83
0
    return NULL;
84
2.59k
85
2.59k
  
if (2.59k
list->ref == 12.59k
)
86
2.34k
    return list;
87
252
  list->ref--;
88
252
  return FN(LIST(EL),dup)(list);
89
2.59k
}
90
91
/* Make sure "list" has room for at least "n" more pieces.
92
 * Always return a list with a single reference.
93
 *
94
 * If there is only one reference to list, we extend it in place.
95
 * Otherwise, we create a new LIST(EL) and copy the elements.
96
 */
97
static __isl_give LIST(EL) *FN(LIST(EL),grow)(__isl_take LIST(EL) *list, int n)
98
176k
{
99
176k
  isl_ctx *ctx;
100
176k
  int i, new_size;
101
176k
  LIST(EL) *res;
102
176k
103
176k
  if (!list)
104
0
    return NULL;
105
176k
  
if (176k
list->ref == 1 && 176k
list->n + n <= list->size172k
)
106
163k
    return list;
107
176k
108
13.7k
  
ctx = 13.7k
FN13.7k
(LIST(EL),get_ctx)(list);
109
13.7k
  new_size = ((list->n + n + 1) * 3) / 2;
110
13.7k
  if (
list->ref == 113.7k
)
{9.06k
111
9.06k
    res = isl_realloc(ctx, list, LIST(EL),
112
9.06k
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
9.06k
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
9.06k
    res->size = new_size;
116
9.06k
    return res;
117
9.06k
  }
118
13.7k
119
4.65k
  
if (4.65k
list->n + n <= list->size && 4.65k
list->size < new_size1.49k
)
120
1.44k
    new_size = list->size;
121
4.65k
122
4.65k
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
4.65k
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
4.65k
126
15.2k
  
for (i = 0; 4.65k
i < list->n15.2k
;
++i10.5k
)
127
10.5k
    
res = 10.5k
FN10.5k
(LIST(EL),add)(res,
FN10.5k
(EL,copy)(list->p[i]));
128
4.65k
129
4.65k
  FN(LIST(EL),free)(list);
130
4.65k
  return res;
131
4.65k
}
isl_val.c:isl_val_list_grow
Line
Count
Source
98
21
{
99
21
  isl_ctx *ctx;
100
21
  int i, new_size;
101
21
  LIST(EL) *res;
102
21
103
21
  if (!list)
104
0
    return NULL;
105
21
  
if (21
list->ref == 1 && 21
list->n + n <= list->size21
)
106
13
    return list;
107
21
108
8
  
ctx = 8
FN8
(LIST(EL),get_ctx)(list);
109
8
  new_size = ((list->n + n + 1) * 3) / 2;
110
8
  if (
list->ref == 18
)
{8
111
8
    res = isl_realloc(ctx, list, LIST(EL),
112
8
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
8
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
8
    res->size = new_size;
116
8
    return res;
117
8
  }
118
8
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_aff.c:isl_aff_list_grow
Line
Count
Source
98
4.74k
{
99
4.74k
  isl_ctx *ctx;
100
4.74k
  int i, new_size;
101
4.74k
  LIST(EL) *res;
102
4.74k
103
4.74k
  if (!list)
104
0
    return NULL;
105
4.74k
  
if (4.74k
list->ref == 1 && 4.74k
list->n + n <= list->size4.74k
)
106
4.72k
    return list;
107
4.74k
108
20
  
ctx = 20
FN20
(LIST(EL),get_ctx)(list);
109
20
  new_size = ((list->n + n + 1) * 3) / 2;
110
20
  if (
list->ref == 120
)
{20
111
20
    res = isl_realloc(ctx, list, LIST(EL),
112
20
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
20
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
20
    res->size = new_size;
116
20
    return res;
117
20
  }
118
20
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_set_list.c:isl_union_set_list_grow
Line
Count
Source
98
1.47k
{
99
1.47k
  isl_ctx *ctx;
100
1.47k
  int i, new_size;
101
1.47k
  LIST(EL) *res;
102
1.47k
103
1.47k
  if (!list)
104
0
    return NULL;
105
1.47k
  
if (1.47k
list->ref == 1 && 1.47k
list->n + n <= list->size1.47k
)
106
1.30k
    return list;
107
1.47k
108
167
  
ctx = 167
FN167
(LIST(EL),get_ctx)(list);
109
167
  new_size = ((list->n + n + 1) * 3) / 2;
110
167
  if (
list->ref == 1167
)
{167
111
167
    res = isl_realloc(ctx, list, LIST(EL),
112
167
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
167
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
167
    res->size = new_size;
116
167
    return res;
117
167
  }
118
167
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_set_list.c:isl_set_list_grow
Line
Count
Source
98
6.25k
{
99
6.25k
  isl_ctx *ctx;
100
6.25k
  int i, new_size;
101
6.25k
  LIST(EL) *res;
102
6.25k
103
6.25k
  if (!list)
104
0
    return NULL;
105
6.25k
  
if (6.25k
list->ref == 1 && 6.25k
list->n + n <= list->size6.25k
)
106
6.23k
    return list;
107
6.25k
108
20
  
ctx = 20
FN20
(LIST(EL),get_ctx)(list);
109
20
  new_size = ((list->n + n + 1) * 3) / 2;
110
20
  if (
list->ref == 120
)
{20
111
20
    res = isl_realloc(ctx, list, LIST(EL),
112
20
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
20
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
20
    res->size = new_size;
116
20
    return res;
117
20
  }
118
20
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_set_list.c:isl_basic_set_list_grow
Line
Count
Source
98
2.30k
{
99
2.30k
  isl_ctx *ctx;
100
2.30k
  int i, new_size;
101
2.30k
  LIST(EL) *res;
102
2.30k
103
2.30k
  if (!list)
104
0
    return NULL;
105
2.30k
  
if (2.30k
list->ref == 1 && 2.30k
list->n + n <= list->size2.30k
)
106
2.30k
    return list;
107
2.30k
108
2
  
ctx = 2
FN2
(LIST(EL),get_ctx)(list);
109
2
  new_size = ((list->n + n + 1) * 3) / 2;
110
2
  if (
list->ref == 12
)
{2
111
2
    res = isl_realloc(ctx, list, LIST(EL),
112
2
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
2
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
2
    res->size = new_size;
116
2
    return res;
117
2
  }
118
2
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_schedule_tree.c:isl_schedule_tree_list_grow
Line
Count
Source
98
120k
{
99
120k
  isl_ctx *ctx;
100
120k
  int i, new_size;
101
120k
  LIST(EL) *res;
102
120k
103
120k
  if (!list)
104
0
    return NULL;
105
120k
  
if (120k
list->ref == 1 && 120k
list->n + n <= list->size115k
)
106
110k
    return list;
107
120k
108
9.63k
  
ctx = 9.63k
FN9.63k
(LIST(EL),get_ctx)(list);
109
9.63k
  new_size = ((list->n + n + 1) * 3) / 2;
110
9.63k
  if (
list->ref == 19.63k
)
{4.98k
111
4.98k
    res = isl_realloc(ctx, list, LIST(EL),
112
4.98k
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
4.98k
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
4.98k
    res->size = new_size;
116
4.98k
    return res;
117
4.98k
  }
118
9.63k
119
4.65k
  
if (4.65k
list->n + n <= list->size && 4.65k
list->size < new_size1.49k
)
120
1.44k
    new_size = list->size;
121
4.65k
122
4.65k
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
4.65k
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
4.65k
126
15.2k
  
for (i = 0; 4.65k
i < list->n15.2k
;
++i10.5k
)
127
10.5k
    
res = 10.5k
FN10.5k
(LIST(EL),add)(res,
FN10.5k
(EL,copy)(list->p[i]));
128
4.65k
129
4.65k
  FN(LIST(EL),free)(list);
130
4.65k
  return res;
131
4.65k
}
isl_map_list.c:isl_union_map_list_grow
Line
Count
Source
98
5
{
99
5
  isl_ctx *ctx;
100
5
  int i, new_size;
101
5
  LIST(EL) *res;
102
5
103
5
  if (!list)
104
0
    return NULL;
105
5
  
if (5
list->ref == 1 && 5
list->n + n <= list->size5
)
106
4
    return list;
107
5
108
1
  
ctx = 1
FN1
(LIST(EL),get_ctx)(list);
109
1
  new_size = ((list->n + n + 1) * 3) / 2;
110
1
  if (
list->ref == 11
)
{1
111
1
    res = isl_realloc(ctx, list, LIST(EL),
112
1
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
1
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
1
    res->size = new_size;
116
1
    return res;
117
1
  }
118
1
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_map_list.c:isl_map_list_grow
Line
Count
Source
98
794
{
99
794
  isl_ctx *ctx;
100
794
  int i, new_size;
101
794
  LIST(EL) *res;
102
794
103
794
  if (!list)
104
0
    return NULL;
105
794
  
if (794
list->ref == 1 && 794
list->n + n <= list->size794
)
106
794
    return list;
107
794
108
0
  
ctx = 0
FN0
(LIST(EL),get_ctx)(list);
109
0
  new_size = ((list->n + n + 1) * 3) / 2;
110
0
  if (
list->ref == 10
)
{0
111
0
    res = isl_realloc(ctx, list, LIST(EL),
112
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
0
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
0
    res->size = new_size;
116
0
    return res;
117
0
  }
118
0
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_map_list.c:isl_basic_map_list_grow
Line
Count
Source
98
5.86k
{
99
5.86k
  isl_ctx *ctx;
100
5.86k
  int i, new_size;
101
5.86k
  LIST(EL) *res;
102
5.86k
103
5.86k
  if (!list)
104
0
    return NULL;
105
5.86k
  
if (5.86k
list->ref == 1 && 5.86k
list->n + n <= list->size5.86k
)
106
5.86k
    return list;
107
5.86k
108
0
  
ctx = 0
FN0
(LIST(EL),get_ctx)(list);
109
0
  new_size = ((list->n + n + 1) * 3) / 2;
110
0
  if (
list->ref == 10
)
{0
111
0
    res = isl_realloc(ctx, list, LIST(EL),
112
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
0
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
0
    res->size = new_size;
116
0
    return res;
117
0
  }
118
0
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_id.c:isl_id_list_grow
Line
Count
Source
98
1.95k
{
99
1.95k
  isl_ctx *ctx;
100
1.95k
  int i, new_size;
101
1.95k
  LIST(EL) *res;
102
1.95k
103
1.95k
  if (!list)
104
0
    return NULL;
105
1.95k
  
if (1.95k
list->ref == 1 && 1.95k
list->n + n <= list->size1.95k
)
106
1.95k
    return list;
107
1.95k
108
0
  
ctx = 0
FN0
(LIST(EL),get_ctx)(list);
109
0
  new_size = ((list->n + n + 1) * 3) / 2;
110
0
  if (
list->ref == 10
)
{0
111
0
    res = isl_realloc(ctx, list, LIST(EL),
112
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
0
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
0
    res->size = new_size;
116
0
    return res;
117
0
  }
118
0
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_constraint.c:isl_constraint_list_grow
Line
Count
Source
98
3.28k
{
99
3.28k
  isl_ctx *ctx;
100
3.28k
  int i, new_size;
101
3.28k
  LIST(EL) *res;
102
3.28k
103
3.28k
  if (!list)
104
0
    return NULL;
105
3.28k
  
if (3.28k
list->ref == 1 && 3.28k
list->n + n <= list->size3.28k
)
106
3.28k
    return list;
107
3.28k
108
0
  
ctx = 0
FN0
(LIST(EL),get_ctx)(list);
109
0
  new_size = ((list->n + n + 1) * 3) / 2;
110
0
  if (
list->ref == 10
)
{0
111
0
    res = isl_realloc(ctx, list, LIST(EL),
112
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
0
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
0
    res->size = new_size;
116
0
    return res;
117
0
  }
118
0
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_band.c:isl_band_list_grow
Line
Count
Source
98
18
{
99
18
  isl_ctx *ctx;
100
18
  int i, new_size;
101
18
  LIST(EL) *res;
102
18
103
18
  if (!list)
104
0
    return NULL;
105
18
  
if (18
list->ref == 1 && 18
list->n + n <= list->size18
)
106
18
    return list;
107
18
108
0
  
ctx = 0
FN0
(LIST(EL),get_ctx)(list);
109
0
  new_size = ((list->n + n + 1) * 3) / 2;
110
0
  if (
list->ref == 10
)
{0
111
0
    res = isl_realloc(ctx, list, LIST(EL),
112
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
0
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
0
    res->size = new_size;
116
0
    return res;
117
0
  }
118
0
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_ast_graft.c:isl_ast_graft_list_grow
Line
Count
Source
98
11.0k
{
99
11.0k
  isl_ctx *ctx;
100
11.0k
  int i, new_size;
101
11.0k
  LIST(EL) *res;
102
11.0k
103
11.0k
  if (!list)
104
0
    return NULL;
105
11.0k
  
if (11.0k
list->ref == 1 && 11.0k
list->n + n <= list->size11.0k
)
106
11.0k
    return list;
107
11.0k
108
0
  
ctx = 0
FN0
(LIST(EL),get_ctx)(list);
109
0
  new_size = ((list->n + n + 1) * 3) / 2;
110
0
  if (
list->ref == 10
)
{0
111
0
    res = isl_realloc(ctx, list, LIST(EL),
112
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
0
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
0
    res->size = new_size;
116
0
    return res;
117
0
  }
118
0
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_ast.c:isl_ast_node_list_grow
Line
Count
Source
98
3.05k
{
99
3.05k
  isl_ctx *ctx;
100
3.05k
  int i, new_size;
101
3.05k
  LIST(EL) *res;
102
3.05k
103
3.05k
  if (!list)
104
0
    return NULL;
105
3.05k
  
if (3.05k
list->ref == 1 && 3.05k
list->n + n <= list->size3.05k
)
106
3.04k
    return list;
107
3.05k
108
18
  
ctx = 18
FN18
(LIST(EL),get_ctx)(list);
109
18
  new_size = ((list->n + n + 1) * 3) / 2;
110
18
  if (
list->ref == 118
)
{18
111
18
    res = isl_realloc(ctx, list, LIST(EL),
112
18
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
18
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
18
    res->size = new_size;
116
18
    return res;
117
18
  }
118
18
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_grow
isl_aff.c:isl_union_pw_multi_aff_list_grow
Line
Count
Source
98
7
{
99
7
  isl_ctx *ctx;
100
7
  int i, new_size;
101
7
  LIST(EL) *res;
102
7
103
7
  if (!list)
104
0
    return NULL;
105
7
  
if (7
list->ref == 1 && 7
list->n + n <= list->size7
)
106
7
    return list;
107
7
108
0
  
ctx = 0
FN0
(LIST(EL),get_ctx)(list);
109
0
  new_size = ((list->n + n + 1) * 3) / 2;
110
0
  if (
list->ref == 10
)
{0
111
0
    res = isl_realloc(ctx, list, LIST(EL),
112
0
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
0
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
0
    res->size = new_size;
116
0
    return res;
117
0
  }
118
0
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_aff.c:isl_union_pw_aff_list_grow
Line
Count
Source
98
27
{
99
27
  isl_ctx *ctx;
100
27
  int i, new_size;
101
27
  LIST(EL) *res;
102
27
103
27
  if (!list)
104
0
    return NULL;
105
27
  
if (27
list->ref == 1 && 27
list->n + n <= list->size27
)
106
12
    return list;
107
27
108
15
  
ctx = 15
FN15
(LIST(EL),get_ctx)(list);
109
15
  new_size = ((list->n + n + 1) * 3) / 2;
110
15
  if (
list->ref == 115
)
{15
111
15
    res = isl_realloc(ctx, list, LIST(EL),
112
15
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
15
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
15
    res->size = new_size;
116
15
    return res;
117
15
  }
118
15
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
isl_aff.c:isl_pw_aff_list_grow
Line
Count
Source
98
15.5k
{
99
15.5k
  isl_ctx *ctx;
100
15.5k
  int i, new_size;
101
15.5k
  LIST(EL) *res;
102
15.5k
103
15.5k
  if (!list)
104
0
    return NULL;
105
15.5k
  
if (15.5k
list->ref == 1 && 15.5k
list->n + n <= list->size15.5k
)
106
11.7k
    return list;
107
15.5k
108
3.83k
  
ctx = 3.83k
FN3.83k
(LIST(EL),get_ctx)(list);
109
3.83k
  new_size = ((list->n + n + 1) * 3) / 2;
110
3.83k
  if (
list->ref == 13.83k
)
{3.83k
111
3.83k
    res = isl_realloc(ctx, list, LIST(EL),
112
3.83k
          sizeof(LIST(EL)) + (new_size - 1) * sizeof(EL *));
113
3.83k
    if (!res)
114
0
      
return 0
FN0
(LIST(EL),free)(list);
115
3.83k
    res->size = new_size;
116
3.83k
    return res;
117
3.83k
  }
118
3.83k
119
0
  
if (0
list->n + n <= list->size && 0
list->size < new_size0
)
120
0
    new_size = list->size;
121
0
122
0
  res = FN(LIST(EL),alloc)(ctx, new_size);
123
0
  if (!res)
124
0
    
return 0
FN0
(LIST(EL),free)(list);
125
0
126
0
  
for (i = 0; 0
i < list->n0
;
++i0
)
127
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
128
0
129
0
  FN(LIST(EL),free)(list);
130
0
  return res;
131
0
}
132
133
__isl_give LIST(EL) *FN(LIST(EL),add)(__isl_take LIST(EL) *list,
134
  __isl_take struct EL *el)
135
176k
{
136
176k
  list = FN(LIST(EL),grow)(list, 1);
137
176k
  if (
!list || 176k
!el176k
)
138
0
    goto error;
139
176k
  list->p[list->n] = el;
140
176k
  list->n++;
141
176k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
176k
}
isl_constraint_list_add
Line
Count
Source
135
3.28k
{
136
3.28k
  list = FN(LIST(EL),grow)(list, 1);
137
3.28k
  if (
!list || 3.28k
!el3.28k
)
138
0
    goto error;
139
3.28k
  list->p[list->n] = el;
140
3.28k
  list->n++;
141
3.28k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
3.28k
}
isl_aff_list_add
Line
Count
Source
135
4.74k
{
136
4.74k
  list = FN(LIST(EL),grow)(list, 1);
137
4.74k
  if (
!list || 4.74k
!el4.74k
)
138
0
    goto error;
139
4.74k
  list->p[list->n] = el;
140
4.74k
  list->n++;
141
4.74k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
4.74k
}
isl_pw_aff_list_add
Line
Count
Source
135
15.5k
{
136
15.5k
  list = FN(LIST(EL),grow)(list, 1);
137
15.5k
  if (
!list || 15.5k
!el15.5k
)
138
0
    goto error;
139
15.5k
  list->p[list->n] = el;
140
15.5k
  list->n++;
141
15.5k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
15.5k
}
isl_union_pw_aff_list_add
Line
Count
Source
135
27
{
136
27
  list = FN(LIST(EL),grow)(list, 1);
137
27
  if (
!list || 27
!el27
)
138
0
    goto error;
139
27
  list->p[list->n] = el;
140
27
  list->n++;
141
27
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
27
}
isl_union_pw_multi_aff_list_add
Line
Count
Source
135
7
{
136
7
  list = FN(LIST(EL),grow)(list, 1);
137
7
  if (
!list || 7
!el7
)
138
0
    goto error;
139
7
  list->p[list->n] = el;
140
7
  list->n++;
141
7
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
7
}
Unexecuted instantiation: isl_ast_expr_list_add
isl_ast_node_list_add
Line
Count
Source
135
3.05k
{
136
3.05k
  list = FN(LIST(EL),grow)(list, 1);
137
3.05k
  if (
!list || 3.05k
!el3.05k
)
138
0
    goto error;
139
3.05k
  list->p[list->n] = el;
140
3.05k
  list->n++;
141
3.05k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
3.05k
}
isl_ast_graft_list_add
Line
Count
Source
135
11.0k
{
136
11.0k
  list = FN(LIST(EL),grow)(list, 1);
137
11.0k
  if (
!list || 11.0k
!el11.0k
)
138
0
    goto error;
139
11.0k
  list->p[list->n] = el;
140
11.0k
  list->n++;
141
11.0k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
11.0k
}
isl_band_list_add
Line
Count
Source
135
18
{
136
18
  list = FN(LIST(EL),grow)(list, 1);
137
18
  if (
!list || 18
!el18
)
138
0
    goto error;
139
18
  list->p[list->n] = el;
140
18
  list->n++;
141
18
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
18
}
isl_id_list_add
Line
Count
Source
135
1.95k
{
136
1.95k
  list = FN(LIST(EL),grow)(list, 1);
137
1.95k
  if (
!list || 1.95k
!el1.95k
)
138
0
    goto error;
139
1.95k
  list->p[list->n] = el;
140
1.95k
  list->n++;
141
1.95k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
1.95k
}
isl_basic_map_list_add
Line
Count
Source
135
5.86k
{
136
5.86k
  list = FN(LIST(EL),grow)(list, 1);
137
5.86k
  if (
!list || 5.86k
!el5.86k
)
138
0
    goto error;
139
5.86k
  list->p[list->n] = el;
140
5.86k
  list->n++;
141
5.86k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
5.86k
}
isl_map_list_add
Line
Count
Source
135
794
{
136
794
  list = FN(LIST(EL),grow)(list, 1);
137
794
  if (
!list || 794
!el794
)
138
0
    goto error;
139
794
  list->p[list->n] = el;
140
794
  list->n++;
141
794
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
794
}
isl_union_map_list_add
Line
Count
Source
135
5
{
136
5
  list = FN(LIST(EL),grow)(list, 1);
137
5
  if (
!list || 5
!el5
)
138
0
    goto error;
139
5
  list->p[list->n] = el;
140
5
  list->n++;
141
5
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
5
}
isl_schedule_tree_list_add
Line
Count
Source
135
120k
{
136
120k
  list = FN(LIST(EL),grow)(list, 1);
137
120k
  if (
!list || 120k
!el120k
)
138
0
    goto error;
139
120k
  list->p[list->n] = el;
140
120k
  list->n++;
141
120k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
120k
}
isl_basic_set_list_add
Line
Count
Source
135
2.30k
{
136
2.30k
  list = FN(LIST(EL),grow)(list, 1);
137
2.30k
  if (
!list || 2.30k
!el2.30k
)
138
0
    goto error;
139
2.30k
  list->p[list->n] = el;
140
2.30k
  list->n++;
141
2.30k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
2.30k
}
isl_set_list_add
Line
Count
Source
135
6.25k
{
136
6.25k
  list = FN(LIST(EL),grow)(list, 1);
137
6.25k
  if (
!list || 6.25k
!el6.25k
)
138
0
    goto error;
139
6.25k
  list->p[list->n] = el;
140
6.25k
  list->n++;
141
6.25k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
6.25k
}
isl_union_set_list_add
Line
Count
Source
135
1.47k
{
136
1.47k
  list = FN(LIST(EL),grow)(list, 1);
137
1.47k
  if (
!list || 1.47k
!el1.47k
)
138
0
    goto error;
139
1.47k
  list->p[list->n] = el;
140
1.47k
  list->n++;
141
1.47k
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
1.47k
}
isl_val_list_add
Line
Count
Source
135
21
{
136
21
  list = FN(LIST(EL),grow)(list, 1);
137
21
  if (
!list || 21
!el21
)
138
0
    goto error;
139
21
  list->p[list->n] = el;
140
21
  list->n++;
141
21
  return list;
142
0
error:
143
0
  FN(EL,free)(el);
144
0
  FN(LIST(EL),free)(list);
145
0
  return NULL;
146
21
}
147
148
/* Remove the "n" elements starting at "first" from "list".
149
 */
150
__isl_give LIST(EL) *FN(LIST(EL),drop)(__isl_take LIST(EL) *list,
151
  unsigned first, unsigned n)
152
32.6k
{
153
32.6k
  int i;
154
32.6k
155
32.6k
  if (!list)
156
0
    return NULL;
157
32.6k
  
if (32.6k
first + n > list->n || 32.6k
first + n < first32.6k
)
158
0
    isl_die(list->ctx, isl_error_invalid,
159
32.6k
      "index out of bounds", return FN(LIST(EL),free)(list));
160
32.6k
  
if (32.6k
n == 032.6k
)
161
584
    return list;
162
32.1k
  
list = 32.1k
FN32.1k
(LIST(EL),cow)(list);
163
32.1k
  if (!list)
164
0
    return NULL;
165
91.6k
  
for (i = 0; 32.1k
i < n91.6k
;
++i59.5k
)
166
59.5k
    
FN59.5k
(EL,free)(list->p[first + i])59.5k
;
167
33.6k
  for (i = first; 
i + n < list->n33.6k
;
++i1.53k
)
168
1.53k
    list->p[i] = list->p[i + n];
169
32.1k
  list->n -= n;
170
32.1k
  return list;
171
32.1k
}
Unexecuted instantiation: isl_aff_list_drop
Unexecuted instantiation: isl_pw_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
Unexecuted instantiation: isl_band_list_drop
isl_constraint_list_drop
Line
Count
Source
152
1.88k
{
153
1.88k
  int i;
154
1.88k
155
1.88k
  if (!list)
156
0
    return NULL;
157
1.88k
  
if (1.88k
first + n > list->n || 1.88k
first + n < first1.88k
)
158
0
    isl_die(list->ctx, isl_error_invalid,
159
1.88k
      "index out of bounds", return FN(LIST(EL),free)(list));
160
1.88k
  
if (1.88k
n == 01.88k
)
161
584
    return list;
162
1.29k
  
list = 1.29k
FN1.29k
(LIST(EL),cow)(list);
163
1.29k
  if (!list)
164
0
    return NULL;
165
2.66k
  
for (i = 0; 1.29k
i < n2.66k
;
++i1.36k
)
166
1.36k
    
FN1.36k
(EL,free)(list->p[first + i])1.36k
;
167
2.06k
  for (i = first; 
i + n < list->n2.06k
;
++i768
)
168
768
    list->p[i] = list->p[i + n];
169
1.29k
  list->n -= n;
170
1.29k
  return list;
171
1.29k
}
isl_id_list_drop
Line
Count
Source
152
1
{
153
1
  int i;
154
1
155
1
  if (!list)
156
0
    return NULL;
157
1
  
if (1
first + n > list->n || 1
first + n < first1
)
158
0
    isl_die(list->ctx, isl_error_invalid,
159
1
      "index out of bounds", return FN(LIST(EL),free)(list));
160
1
  
if (1
n == 01
)
161
0
    return list;
162
1
  
list = 1
FN1
(LIST(EL),cow)(list);
163
1
  if (!list)
164
0
    return NULL;
165
2
  
for (i = 0; 1
i < n2
;
++i1
)
166
1
    
FN1
(EL,free)(list->p[first + i])1
;
167
3
  for (i = first; 
i + n < list->n3
;
++i2
)
168
2
    list->p[i] = list->p[i + n];
169
1
  list->n -= n;
170
1
  return list;
171
1
}
Unexecuted instantiation: isl_basic_map_list_drop
Unexecuted instantiation: isl_map_list_drop
isl_union_map_list_drop
Line
Count
Source
152
4
{
153
4
  int i;
154
4
155
4
  if (!list)
156
0
    return NULL;
157
4
  
if (4
first + n > list->n || 4
first + n < first4
)
158
0
    isl_die(list->ctx, isl_error_invalid,
159
4
      "index out of bounds", return FN(LIST(EL),free)(list));
160
4
  
if (4
n == 04
)
161
0
    return list;
162
4
  
list = 4
FN4
(LIST(EL),cow)(list);
163
4
  if (!list)
164
0
    return NULL;
165
8
  
for (i = 0; 4
i < n8
;
++i4
)
166
4
    
FN4
(EL,free)(list->p[first + i])4
;
167
4
  for (i = first; 
i + n < list->n4
;
++i0
)
168
0
    list->p[i] = list->p[i + n];
169
4
  list->n -= n;
170
4
  return list;
171
4
}
isl_schedule_tree_list_drop
Line
Count
Source
152
29.7k
{
153
29.7k
  int i;
154
29.7k
155
29.7k
  if (!list)
156
0
    return NULL;
157
29.7k
  
if (29.7k
first + n > list->n || 29.7k
first + n < first29.7k
)
158
0
    isl_die(list->ctx, isl_error_invalid,
159
29.7k
      "index out of bounds", return FN(LIST(EL),free)(list));
160
29.7k
  
if (29.7k
n == 029.7k
)
161
0
    return list;
162
29.7k
  
list = 29.7k
FN29.7k
(LIST(EL),cow)(list);
163
29.7k
  if (!list)
164
0
    return NULL;
165
86.9k
  
for (i = 0; 29.7k
i < n86.9k
;
++i57.1k
)
166
57.1k
    
FN57.1k
(EL,free)(list->p[first + i])57.1k
;
167
30.5k
  for (i = first; 
i + n < list->n30.5k
;
++i760
)
168
760
    list->p[i] = list->p[i + n];
169
29.7k
  list->n -= n;
170
29.7k
  return list;
171
29.7k
}
isl_basic_set_list_drop
Line
Count
Source
152
4
{
153
4
  int i;
154
4
155
4
  if (!list)
156
0
    return NULL;
157
4
  
if (4
first + n > list->n || 4
first + n < first4
)
158
0
    isl_die(list->ctx, isl_error_invalid,
159
4
      "index out of bounds", return FN(LIST(EL),free)(list));
160
4
  
if (4
n == 04
)
161
0
    return list;
162
4
  
list = 4
FN4
(LIST(EL),cow)(list);
163
4
  if (!list)
164
0
    return NULL;
165
12
  
for (i = 0; 4
i < n12
;
++i8
)
166
8
    
FN8
(EL,free)(list->p[first + i])8
;
167
4
  for (i = first; 
i + n < list->n4
;
++i0
)
168
0
    list->p[i] = list->p[i + n];
169
4
  list->n -= n;
170
4
  return list;
171
4
}
Unexecuted instantiation: isl_set_list_drop
isl_union_set_list_drop
Line
Count
Source
152
1.00k
{
153
1.00k
  int i;
154
1.00k
155
1.00k
  if (!list)
156
0
    return NULL;
157
1.00k
  
if (1.00k
first + n > list->n || 1.00k
first + n < first1.00k
)
158
0
    isl_die(list->ctx, isl_error_invalid,
159
1.00k
      "index out of bounds", return FN(LIST(EL),free)(list));
160
1.00k
  
if (1.00k
n == 01.00k
)
161
0
    return list;
162
1.00k
  
list = 1.00k
FN1.00k
(LIST(EL),cow)(list);
163
1.00k
  if (!list)
164
0
    return NULL;
165
2.01k
  
for (i = 0; 1.00k
i < n2.01k
;
++i1.00k
)
166
1.00k
    
FN1.00k
(EL,free)(list->p[first + i])1.00k
;
167
1.00k
  for (i = first; 
i + n < list->n1.00k
;
++i0
)
168
0
    list->p[i] = list->p[i + n];
169
1.00k
  list->n -= n;
170
1.00k
  return list;
171
1.00k
}
Unexecuted instantiation: isl_val_list_drop
172
173
/* Insert "el" at position "pos" in "list".
174
 *
175
 * If there is only one reference to "list" and if it already has space
176
 * for one extra element, we insert it directly into "list".
177
 * Otherwise, we create a new list consisting of "el" and copied
178
 * elements from "list".
179
 */
180
__isl_give LIST(EL) *FN(LIST(EL),insert)(__isl_take LIST(EL) *list,
181
  unsigned pos, __isl_take struct EL *el)
182
19
{
183
19
  int i;
184
19
  isl_ctx *ctx;
185
19
  LIST(EL) *res;
186
19
187
19
  if (
!list || 19
!el19
)
188
0
    goto error;
189
19
  
ctx = 19
FN19
(LIST(EL),get_ctx)(list);
190
19
  if (pos > list->n)
191
0
    isl_die(ctx, isl_error_invalid,
192
19
      "index out of bounds", goto error);
193
19
194
19
  
if (19
list->ref == 1 && 19
list->size > list->n16
)
{1
195
2
    for (i = list->n; 
i > pos2
;
--i1
)
196
1
      list->p[i] = list->p[i - 1];
197
1
    list->n++;
198
1
    list->p[pos] = el;
199
1
    return list;
200
1
  }
201
19
202
18
  
res = 18
FN18
(LIST(EL),alloc)(ctx, list->n + 1);
203
41
  for (i = 0; 
i < pos41
;
++i23
)
204
23
    
res = 23
FN23
(LIST(EL),add)(res,
FN23
(EL,copy)(list->p[i]));
205
18
  res = FN(LIST(EL),add)(res, el);
206
21
  for (i = pos; 
i < list->n21
;
++i3
)
207
3
    
res = 3
FN3
(LIST(EL),add)(res,
FN3
(EL,copy)(list->p[i]));
208
18
  FN(LIST(EL),free)(list);
209
18
210
18
  return res;
211
0
error:
212
0
  FN(EL,free)(el);
213
0
  FN(LIST(EL),free)(list);
214
0
  return NULL;
215
19
}
Unexecuted instantiation: isl_pw_aff_list_insert
Unexecuted instantiation: isl_val_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
182
15
{
183
15
  int i;
184
15
  isl_ctx *ctx;
185
15
  LIST(EL) *res;
186
15
187
15
  if (
!list || 15
!el15
)
188
0
    goto error;
189
15
  
ctx = 15
FN15
(LIST(EL),get_ctx)(list);
190
15
  if (pos > list->n)
191
0
    isl_die(ctx, isl_error_invalid,
192
15
      "index out of bounds", goto error);
193
15
194
15
  
if (15
list->ref == 1 && 15
list->size > list->n15
)
{0
195
0
    for (i = list->n; 
i > pos0
;
--i0
)
196
0
      list->p[i] = list->p[i - 1];
197
0
    list->n++;
198
0
    list->p[pos] = el;
199
0
    return list;
200
0
  }
201
15
202
15
  
res = 15
FN15
(LIST(EL),alloc)(ctx, list->n + 1);
203
35
  for (i = 0; 
i < pos35
;
++i20
)
204
20
    
res = 20
FN20
(LIST(EL),add)(res,
FN20
(EL,copy)(list->p[i]));
205
15
  res = FN(LIST(EL),add)(res, el);
206
18
  for (i = pos; 
i < list->n18
;
++i3
)
207
3
    
res = 3
FN3
(LIST(EL),add)(res,
FN3
(EL,copy)(list->p[i]));
208
15
  FN(LIST(EL),free)(list);
209
15
210
15
  return res;
211
0
error:
212
0
  FN(EL,free)(el);
213
0
  FN(LIST(EL),free)(list);
214
0
  return NULL;
215
15
}
Unexecuted instantiation: isl_band_list_insert
Unexecuted instantiation: isl_aff_list_insert
Unexecuted instantiation: isl_constraint_list_insert
isl_id_list_insert
Line
Count
Source
182
4
{
183
4
  int i;
184
4
  isl_ctx *ctx;
185
4
  LIST(EL) *res;
186
4
187
4
  if (
!list || 4
!el4
)
188
0
    goto error;
189
4
  
ctx = 4
FN4
(LIST(EL),get_ctx)(list);
190
4
  if (pos > list->n)
191
0
    isl_die(ctx, isl_error_invalid,
192
4
      "index out of bounds", goto error);
193
4
194
4
  
if (4
list->ref == 1 && 4
list->size > list->n1
)
{1
195
2
    for (i = list->n; 
i > pos2
;
--i1
)
196
1
      list->p[i] = list->p[i - 1];
197
1
    list->n++;
198
1
    list->p[pos] = el;
199
1
    return list;
200
1
  }
201
4
202
3
  
res = 3
FN3
(LIST(EL),alloc)(ctx, list->n + 1);
203
6
  for (i = 0; 
i < pos6
;
++i3
)
204
3
    
res = 3
FN3
(LIST(EL),add)(res,
FN3
(EL,copy)(list->p[i]));
205
3
  res = FN(LIST(EL),add)(res, el);
206
3
  for (i = pos; 
i < list->n3
;
++i0
)
207
0
    
res = 0
FN0
(LIST(EL),add)(res,
FN0
(EL,copy)(list->p[i]));
208
3
  FN(LIST(EL),free)(list);
209
3
210
3
  return res;
211
0
error:
212
0
  FN(EL,free)(el);
213
0
  FN(LIST(EL),free)(list);
214
0
  return NULL;
215
4
}
Unexecuted instantiation: isl_basic_map_list_insert
Unexecuted instantiation: isl_map_list_insert
Unexecuted instantiation: isl_union_map_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
216
217
__isl_null LIST(EL) *FN(LIST(EL),free)(__isl_take LIST(EL) *list)
218
145k
{
219
145k
  int i;
220
145k
221
145k
  if (!list)
222
23.9k
    return NULL;
223
145k
224
121k
  
if (121k
--list->ref > 0121k
)
225
35.6k
    return NULL;
226
121k
227
85.8k
  isl_ctx_deref(list->ctx);
228
203k
  for (i = 0; 
i < list->n203k
;
++i117k
)
229
117k
    
FN117k
(EL,free)(list->p[i])117k
;
230
85.8k
  free(list);
231
85.8k
232
85.8k
  return NULL;
233
121k
}
isl_val_list_free
Line
Count
Source
218
11
{
219
11
  int i;
220
11
221
11
  if (!list)
222
0
    return NULL;
223
11
224
11
  
if (11
--list->ref > 011
)
225
0
    return NULL;
226
11
227
11
  isl_ctx_deref(list->ctx);
228
32
  for (i = 0; 
i < list->n32
;
++i21
)
229
21
    
FN21
(EL,free)(list->p[i])21
;
230
11
  free(list);
231
11
232
11
  return NULL;
233
11
}
isl_aff_list_free
Line
Count
Source
218
9.26k
{
219
9.26k
  int i;
220
9.26k
221
9.26k
  if (!list)
222
4.52k
    return NULL;
223
9.26k
224
4.74k
  
if (4.74k
--list->ref > 04.74k
)
225
0
    return NULL;
226
4.74k
227
4.74k
  isl_ctx_deref(list->ctx);
228
9.48k
  for (i = 0; 
i < list->n9.48k
;
++i4.74k
)
229
4.74k
    
FN4.74k
(EL,free)(list->p[i])4.74k
;
230
4.74k
  free(list);
231
4.74k
232
4.74k
  return NULL;
233
4.74k
}
isl_pw_aff_list_free
Line
Count
Source
218
23.3k
{
219
23.3k
  int i;
220
23.3k
221
23.3k
  if (!list)
222
0
    return NULL;
223
23.3k
224
23.3k
  
if (23.3k
--list->ref > 023.3k
)
225
9.84k
    return NULL;
226
23.3k
227
13.4k
  isl_ctx_deref(list->ctx);
228
29.0k
  for (i = 0; 
i < list->n29.0k
;
++i15.5k
)
229
15.5k
    
FN15.5k
(EL,free)(list->p[i])15.5k
;
230
13.4k
  free(list);
231
13.4k
232
13.4k
  return NULL;
233
23.3k
}
isl_union_pw_aff_list_free
Line
Count
Source
218
15
{
219
15
  int i;
220
15
221
15
  if (!list)
222
0
    return NULL;
223
15
224
15
  
if (15
--list->ref > 015
)
225
0
    return NULL;
226
15
227
15
  isl_ctx_deref(list->ctx);
228
42
  for (i = 0; 
i < list->n42
;
++i27
)
229
27
    
FN27
(EL,free)(list->p[i])27
;
230
15
  free(list);
231
15
232
15
  return NULL;
233
15
}
isl_union_pw_multi_aff_list_free
Line
Count
Source
218
7
{
219
7
  int i;
220
7
221
7
  if (!list)
222
0
    return NULL;
223
7
224
7
  
if (7
--list->ref > 07
)
225
0
    return NULL;
226
7
227
7
  isl_ctx_deref(list->ctx);
228
14
  for (i = 0; 
i < list->n14
;
++i7
)
229
7
    
FN7
(EL,free)(list->p[i])7
;
230
7
  free(list);
231
7
232
7
  return NULL;
233
7
}
Unexecuted instantiation: isl_ast_expr_list_free
isl_ast_node_list_free
Line
Count
Source
218
2.45k
{
219
2.45k
  int i;
220
2.45k
221
2.45k
  if (!list)
222
0
    return NULL;
223
2.45k
224
2.45k
  
if (2.45k
--list->ref > 02.45k
)
225
96
    return NULL;
226
2.45k
227
2.36k
  isl_ctx_deref(list->ctx);
228
5.41k
  for (i = 0; 
i < list->n5.41k
;
++i3.05k
)
229
3.05k
    
FN3.05k
(EL,free)(list->p[i])3.05k
;
230
2.36k
  free(list);
231
2.36k
232
2.36k
  return NULL;
233
2.45k
}
isl_ast_graft_list_free
Line
Count
Source
218
11.2k
{
219
11.2k
  int i;
220
11.2k
221
11.2k
  if (!list)
222
0
    return NULL;
223
11.2k
224
11.2k
  
if (11.2k
--list->ref > 011.2k
)
225
0
    return NULL;
226
11.2k
227
11.2k
  isl_ctx_deref(list->ctx);
228
22.2k
  for (i = 0; 
i < list->n22.2k
;
++i11.0k
)
229
11.0k
    
FN11.0k
(EL,free)(list->p[i])11.0k
;
230
11.2k
  free(list);
231
11.2k
232
11.2k
  return NULL;
233
11.2k
}
isl_band_list_free
Line
Count
Source
218
3.76k
{
219
3.76k
  int i;
220
3.76k
221
3.76k
  if (!list)
222
3.74k
    return NULL;
223
3.76k
224
16
  
if (16
--list->ref > 016
)
225
0
    return NULL;
226
16
227
16
  isl_ctx_deref(list->ctx);
228
34
  for (i = 0; 
i < list->n34
;
++i18
)
229
18
    
FN18
(EL,free)(list->p[i])18
;
230
16
  free(list);
231
16
232
16
  return NULL;
233
16
}
isl_constraint_list_free
Line
Count
Source
218
2.09k
{
219
2.09k
  int i;
220
2.09k
221
2.09k
  if (!list)
222
0
    return NULL;
223
2.09k
224
2.09k
  
if (2.09k
--list->ref > 02.09k
)
225
0
    return NULL;
226
2.09k
227
2.09k
  isl_ctx_deref(list->ctx);
228
4.00k
  for (i = 0; 
i < list->n4.00k
;
++i1.91k
)
229
1.91k
    
FN1.91k
(EL,free)(list->p[i])1.91k
;
230
2.09k
  free(list);
231
2.09k
232
2.09k
  return NULL;
233
2.09k
}
isl_id_list_free
Line
Count
Source
218
20.4k
{
219
20.4k
  int i;
220
20.4k
221
20.4k
  if (!list)
222
0
    return NULL;
223
20.4k
224
20.4k
  
if (20.4k
--list->ref > 020.4k
)
225
18.7k
    return NULL;
226
20.4k
227
1.65k
  isl_ctx_deref(list->ctx);
228
3.61k
  for (i = 0; 
i < list->n3.61k
;
++i1.95k
)
229
1.95k
    
FN1.95k
(EL,free)(list->p[i])1.95k
;
230
1.65k
  free(list);
231
1.65k
232
1.65k
  return NULL;
233
20.4k
}
isl_basic_map_list_free
Line
Count
Source
218
1.75k
{
219
1.75k
  int i;
220
1.75k
221
1.75k
  if (!list)
222
0
    return NULL;
223
1.75k
224
1.75k
  
if (1.75k
--list->ref > 01.75k
)
225
0
    return NULL;
226
1.75k
227
1.75k
  isl_ctx_deref(list->ctx);
228
5.49k
  for (i = 0; 
i < list->n5.49k
;
++i3.73k
)
229
3.73k
    
FN3.73k
(EL,free)(list->p[i])3.73k
;
230
1.75k
  free(list);
231
1.75k
232
1.75k
  return NULL;
233
1.75k
}
isl_map_list_free
Line
Count
Source
218
439
{
219
439
  int i;
220
439
221
439
  if (!list)
222
0
    return NULL;
223
439
224
439
  
if (439
--list->ref > 0439
)
225
0
    return NULL;
226
439
227
439
  isl_ctx_deref(list->ctx);
228
1.34k
  for (i = 0; 
i < list->n1.34k
;
++i907
)
229
907
    
FN907
(EL,free)(list->p[i])907
;
230
439
  free(list);
231
439
232
439
  return NULL;
233
439
}
isl_union_map_list_free
Line
Count
Source
218
1
{
219
1
  int i;
220
1
221
1
  if (!list)
222
0
    return NULL;
223
1
224
1
  
if (1
--list->ref > 01
)
225
0
    return NULL;
226
1
227
1
  isl_ctx_deref(list->ctx);
228
2
  for (i = 0; 
i < list->n2
;
++i1
)
229
1
    
FN1
(EL,free)(list->p[i])1
;
230
1
  free(list);
231
1
232
1
  return NULL;
233
1
}
isl_schedule_tree_list_free
Line
Count
Source
218
57.3k
{
219
57.3k
  int i;
220
57.3k
221
57.3k
  if (!list)
222
11.1k
    return NULL;
223
57.3k
224
46.2k
  
if (46.2k
--list->ref > 046.2k
)
225
6.88k
    return NULL;
226
46.2k
227
39.3k
  isl_ctx_deref(list->ctx);
228
102k
  for (i = 0; 
i < list->n102k
;
++i63.4k
)
229
63.4k
    
FN63.4k
(EL,free)(list->p[i])63.4k
;
230
39.3k
  free(list);
231
39.3k
232
39.3k
  return NULL;
233
46.2k
}
isl_basic_set_list_free
Line
Count
Source
218
2.63k
{
219
2.63k
  int i;
220
2.63k
221
2.63k
  if (!list)
222
0
    return NULL;
223
2.63k
224
2.63k
  
if (2.63k
--list->ref > 02.63k
)
225
13
    return NULL;
226
2.63k
227
2.62k
  isl_ctx_deref(list->ctx);
228
7.05k
  for (i = 0; 
i < list->n7.05k
;
++i4.42k
)
229
4.42k
    
FN4.42k
(EL,free)(list->p[i])4.42k
;
230
2.62k
  free(list);
231
2.62k
232
2.62k
  return NULL;
233
2.63k
}
isl_set_list_free
Line
Count
Source
218
10.1k
{
219
10.1k
  int i;
220
10.1k
221
10.1k
  if (!list)
222
4.52k
    return NULL;
223
10.1k
224
5.65k
  
if (5.65k
--list->ref > 05.65k
)
225
0
    return NULL;
226
5.65k
227
5.65k
  isl_ctx_deref(list->ctx);
228
11.7k
  for (i = 0; 
i < list->n11.7k
;
++i6.14k
)
229
6.14k
    
FN6.14k
(EL,free)(list->p[i])6.14k
;
230
5.65k
  free(list);
231
5.65k
232
5.65k
  return NULL;
233
5.65k
}
isl_union_set_list_free
Line
Count
Source
218
387
{
219
387
  int i;
220
387
221
387
  if (!list)
222
0
    return NULL;
223
387
224
387
  
if (387
--list->ref > 0387
)
225
0
    return NULL;
226
387
227
387
  isl_ctx_deref(list->ctx);
228
858
  for (i = 0; 
i < list->n858
;
++i471
)
229
471
    
FN471
(EL,free)(list->p[i])471
;
230
387
  free(list);
231
387
232
387
  return NULL;
233
387
}
234
235
int FN(FN(LIST(EL),n),BASE)(__isl_keep LIST(EL) *list)
236
441k
{
237
434k
  return list ? 
list->n434k
:
07.56k
;
238
441k
}
isl_val_list_n_val
Line
Count
Source
236
11
{
237
11
  return list ? 
list->n11
:
00
;
238
11
}
isl_union_set_list_n_union_set
Line
Count
Source
236
2.05k
{
237
2.05k
  return list ? 
list->n2.05k
:
00
;
238
2.05k
}
isl_set_list_n_set
Line
Count
Source
236
4.55k
{
237
4.55k
  return list ? 
list->n4.55k
:
00
;
238
4.55k
}
isl_basic_set_list_n_basic_set
Line
Count
Source
236
4.21k
{
237
4.21k
  return list ? 
list->n4.21k
:
00
;
238
4.21k
}
isl_schedule_tree_list_n_schedule_tree
Line
Count
Source
236
393k
{
237
385k
  return list ? 
list->n385k
:
07.56k
;
238
393k
}
isl_union_map_list_n_union_map
Line
Count
Source
236
13
{
237
13
  return list ? 
list->n13
:
00
;
238
13
}
isl_map_list_n_map
Line
Count
Source
236
429
{
237
429
  return list ? 
list->n429
:
00
;
238
429
}
isl_basic_map_list_n_basic_map
Line
Count
Source
236
1.71k
{
237
1.71k
  return list ? 
list->n1.71k
:
00
;
238
1.71k
}
isl_id_list_n_id
Line
Count
Source
236
963
{
237
963
  return list ? 
list->n963
:
00
;
238
963
}
isl_constraint_list_n_constraint
Line
Count
Source
236
3.34k
{
237
3.34k
  return list ? 
list->n3.34k
:
00
;
238
3.34k
}
isl_band_list_n_band
Line
Count
Source
236
4
{
237
4
  return list ? 
list->n4
:
00
;
238
4
}
isl_ast_graft_list_n_ast_graft
Line
Count
Source
236
14.2k
{
237
14.2k
  return list ? 
list->n14.2k
:
00
;
238
14.2k
}
isl_ast_node_list_n_ast_node
Line
Count
Source
236
2.63k
{
237
2.63k
  return list ? 
list->n2.63k
:
00
;
238
2.63k
}
Unexecuted instantiation: isl_ast_expr_list_n_ast_expr
isl_union_pw_multi_aff_list_n_union_pw_multi_aff
Line
Count
Source
236
7
{
237
7
  return list ? 
list->n7
:
00
;
238
7
}
isl_union_pw_aff_list_n_union_pw_aff
Line
Count
Source
236
15
{
237
15
  return list ? 
list->n15
:
00
;
238
15
}
isl_pw_aff_list_n_pw_aff
Line
Count
Source
236
13.7k
{
237
13.7k
  return list ? 
list->n13.7k
:
00
;
238
13.7k
}
isl_aff_list_n_aff
Line
Count
Source
236
361
{
237
361
  return list ? 
list->n361
:
00
;
238
361
}
239
240
__isl_give EL *FN(FN(LIST(EL),get),BASE)(__isl_keep LIST(EL) *list, int index)
241
301k
{
242
301k
  if (!list)
243
0
    return NULL;
244
301k
  
if (301k
index < 0 || 301k
index >= list->n301k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
301k
      "index out of bounds", return NULL);
247
301k
  
return 301k
FN301k
(EL,copy)(list->p[index]);
248
301k
}
isl_union_set_list_get_union_set
Line
Count
Source
241
2.13k
{
242
2.13k
  if (!list)
243
0
    return NULL;
244
2.13k
  
if (2.13k
index < 0 || 2.13k
index >= list->n2.13k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
2.13k
      "index out of bounds", return NULL);
247
2.13k
  
return 2.13k
FN2.13k
(EL,copy)(list->p[index]);
248
2.13k
}
isl_id_list_get_id
Line
Count
Source
241
9.83k
{
242
9.83k
  if (!list)
243
0
    return NULL;
244
9.83k
  
if (9.83k
index < 0 || 9.83k
index >= list->n9.83k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
9.83k
      "index out of bounds", return NULL);
247
9.83k
  
return 9.83k
FN9.83k
(EL,copy)(list->p[index]);
248
9.83k
}
isl_set_list_get_set
Line
Count
Source
241
7.51k
{
242
7.51k
  if (!list)
243
0
    return NULL;
244
7.51k
  
if (7.51k
index < 0 || 7.51k
index >= list->n7.51k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
7.51k
      "index out of bounds", return NULL);
247
7.51k
  
return 7.51k
FN7.51k
(EL,copy)(list->p[index]);
248
7.51k
}
isl_basic_set_list_get_basic_set
Line
Count
Source
241
6.43k
{
242
6.43k
  if (!list)
243
0
    return NULL;
244
6.43k
  
if (6.43k
index < 0 || 6.43k
index >= list->n6.43k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
6.43k
      "index out of bounds", return NULL);
247
6.43k
  
return 6.43k
FN6.43k
(EL,copy)(list->p[index]);
248
6.43k
}
isl_schedule_tree_list_get_schedule_tree
Line
Count
Source
241
232k
{
242
232k
  if (!list)
243
0
    return NULL;
244
232k
  
if (232k
index < 0 || 232k
index >= list->n232k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
232k
      "index out of bounds", return NULL);
247
232k
  
return 232k
FN232k
(EL,copy)(list->p[index]);
248
232k
}
isl_union_map_list_get_union_map
Line
Count
Source
241
9
{
242
9
  if (!list)
243
0
    return NULL;
244
9
  
if (9
index < 0 || 9
index >= list->n9
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
9
      "index out of bounds", return NULL);
247
9
  
return 9
FN9
(EL,copy)(list->p[index]);
248
9
}
isl_map_list_get_map
Line
Count
Source
241
878
{
242
878
  if (!list)
243
0
    return NULL;
244
878
  
if (878
index < 0 || 878
index >= list->n878
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
878
      "index out of bounds", return NULL);
247
878
  
return 878
FN878
(EL,copy)(list->p[index]);
248
878
}
isl_basic_map_list_get_basic_map
Line
Count
Source
241
6.82k
{
242
6.82k
  if (!list)
243
0
    return NULL;
244
6.82k
  
if (6.82k
index < 0 || 6.82k
index >= list->n6.82k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
6.82k
      "index out of bounds", return NULL);
247
6.82k
  
return 6.82k
FN6.82k
(EL,copy)(list->p[index]);
248
6.82k
}
isl_constraint_list_get_constraint
Line
Count
Source
241
1.89k
{
242
1.89k
  if (!list)
243
0
    return NULL;
244
1.89k
  
if (1.89k
index < 0 || 1.89k
index >= list->n1.89k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
1.89k
      "index out of bounds", return NULL);
247
1.89k
  
return 1.89k
FN1.89k
(EL,copy)(list->p[index]);
248
1.89k
}
isl_val_list_get_val
Line
Count
Source
241
21
{
242
21
  if (!list)
243
0
    return NULL;
244
21
  
if (21
index < 0 || 21
index >= list->n21
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
21
      "index out of bounds", return NULL);
247
21
  
return 21
FN21
(EL,copy)(list->p[index]);
248
21
}
isl_band_list_get_band
Line
Count
Source
241
6
{
242
6
  if (!list)
243
0
    return NULL;
244
6
  
if (6
index < 0 || 6
index >= list->n6
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
6
      "index out of bounds", return NULL);
247
6
  
return 6
FN6
(EL,copy)(list->p[index]);
248
6
}
isl_ast_graft_list_get_ast_graft
Line
Count
Source
241
16.5k
{
242
16.5k
  if (!list)
243
0
    return NULL;
244
16.5k
  
if (16.5k
index < 0 || 16.5k
index >= list->n16.5k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
16.5k
      "index out of bounds", return NULL);
247
16.5k
  
return 16.5k
FN16.5k
(EL,copy)(list->p[index]);
248
16.5k
}
isl_ast_node_list_get_ast_node
Line
Count
Source
241
2.34k
{
242
2.34k
  if (!list)
243
0
    return NULL;
244
2.34k
  
if (2.34k
index < 0 || 2.34k
index >= list->n2.34k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
2.34k
      "index out of bounds", return NULL);
247
2.34k
  
return 2.34k
FN2.34k
(EL,copy)(list->p[index]);
248
2.34k
}
Unexecuted instantiation: isl_ast_expr_list_get_ast_expr
isl_union_pw_multi_aff_list_get_union_pw_multi_aff
Line
Count
Source
241
7
{
242
7
  if (!list)
243
0
    return NULL;
244
7
  
if (7
index < 0 || 7
index >= list->n7
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
7
      "index out of bounds", return NULL);
247
7
  
return 7
FN7
(EL,copy)(list->p[index]);
248
7
}
isl_union_pw_aff_list_get_union_pw_aff
Line
Count
Source
241
27
{
242
27
  if (!list)
243
0
    return NULL;
244
27
  
if (27
index < 0 || 27
index >= list->n27
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
27
      "index out of bounds", return NULL);
247
27
  
return 27
FN27
(EL,copy)(list->p[index]);
248
27
}
isl_pw_aff_list_get_pw_aff
Line
Count
Source
241
9.87k
{
242
9.87k
  if (!list)
243
0
    return NULL;
244
9.87k
  
if (9.87k
index < 0 || 9.87k
index >= list->n9.87k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
9.87k
      "index out of bounds", return NULL);
247
9.87k
  
return 9.87k
FN9.87k
(EL,copy)(list->p[index]);
248
9.87k
}
isl_aff_list_get_aff
Line
Count
Source
241
4.94k
{
242
4.94k
  if (!list)
243
0
    return NULL;
244
4.94k
  
if (4.94k
index < 0 || 4.94k
index >= list->n4.94k
)
245
0
    isl_die(list->ctx, isl_error_invalid,
246
4.94k
      "index out of bounds", return NULL);
247
4.94k
  
return 4.94k
FN4.94k
(EL,copy)(list->p[index]);
248
4.94k
}
249
250
/* Replace the element at position "index" in "list" by "el".
251
 */
252
__isl_give LIST(EL) *FN(FN(LIST(EL),set),BASE)(__isl_take LIST(EL) *list,
253
  int index, __isl_take EL *el)
254
29.9k
{
255
29.9k
  if (
!list || 29.9k
!el29.9k
)
256
0
    goto error;
257
29.9k
  
if (29.9k
index < 0 || 29.9k
index >= list->n29.9k
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
29.9k
      "index out of bounds", goto error);
260
29.9k
  
if (29.9k
list->p[index] == el29.9k
)
{5.88k
261
5.88k
    FN(EL,free)(el);
262
5.88k
    return list;
263
5.88k
  }
264
24.0k
  
list = 24.0k
FN24.0k
(LIST(EL),cow)(list);
265
24.0k
  if (!list)
266
0
    goto error;
267
24.0k
  
FN24.0k
(EL,free)(list->p[index]);24.0k
268
24.0k
  list->p[index] = el;
269
24.0k
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
24.0k
}
isl_pw_aff_list_set_pw_aff
Line
Count
Source
254
2.54k
{
255
2.54k
  if (
!list || 2.54k
!el2.54k
)
256
0
    goto error;
257
2.54k
  
if (2.54k
index < 0 || 2.54k
index >= list->n2.54k
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
2.54k
      "index out of bounds", goto error);
260
2.54k
  
if (2.54k
list->p[index] == el2.54k
)
{0
261
0
    FN(EL,free)(el);
262
0
    return list;
263
0
  }
264
2.54k
  
list = 2.54k
FN2.54k
(LIST(EL),cow)(list);
265
2.54k
  if (!list)
266
0
    goto error;
267
2.54k
  
FN2.54k
(EL,free)(list->p[index]);2.54k
268
2.54k
  list->p[index] = el;
269
2.54k
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
2.54k
}
isl_aff_list_set_aff
Line
Count
Source
254
2
{
255
2
  if (
!list || 2
!el2
)
256
0
    goto error;
257
2
  
if (2
index < 0 || 2
index >= list->n2
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
2
      "index out of bounds", goto error);
260
2
  
if (2
list->p[index] == el2
)
{0
261
0
    FN(EL,free)(el);
262
0
    return list;
263
0
  }
264
2
  
list = 2
FN2
(LIST(EL),cow)(list);
265
2
  if (!list)
266
0
    goto error;
267
2
  
FN2
(EL,free)(list->p[index]);2
268
2
  list->p[index] = el;
269
2
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
2
}
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
254
3.37k
{
255
3.37k
  if (
!list || 3.37k
!el3.37k
)
256
0
    goto error;
257
3.37k
  
if (3.37k
index < 0 || 3.37k
index >= list->n3.37k
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
3.37k
      "index out of bounds", goto error);
260
3.37k
  
if (3.37k
list->p[index] == el3.37k
)
{3.36k
261
3.36k
    FN(EL,free)(el);
262
3.36k
    return list;
263
3.36k
  }
264
16
  
list = 16
FN16
(LIST(EL),cow)(list);
265
16
  if (!list)
266
0
    goto error;
267
16
  
FN16
(EL,free)(list->p[index]);16
268
16
  list->p[index] = el;
269
16
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
16
}
Unexecuted instantiation: isl_band_list_set_band
Unexecuted instantiation: isl_constraint_list_set_constraint
Unexecuted instantiation: isl_id_list_set_id
isl_basic_map_list_set_basic_map
Line
Count
Source
254
2.13k
{
255
2.13k
  if (
!list || 2.13k
!el2.13k
)
256
0
    goto error;
257
2.13k
  
if (2.13k
index < 0 || 2.13k
index >= list->n2.13k
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
2.13k
      "index out of bounds", goto error);
260
2.13k
  
if (2.13k
list->p[index] == el2.13k
)
{2.07k
261
2.07k
    FN(EL,free)(el);
262
2.07k
    return list;
263
2.07k
  }
264
55
  
list = 55
FN55
(LIST(EL),cow)(list);
265
55
  if (!list)
266
0
    goto error;
267
55
  
FN55
(EL,free)(list->p[index]);55
268
55
  list->p[index] = el;
269
55
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
55
}
Unexecuted instantiation: isl_map_list_set_map
isl_union_map_list_set_union_map
Line
Count
Source
254
2
{
255
2
  if (
!list || 2
!el2
)
256
0
    goto error;
257
2
  
if (2
index < 0 || 2
index >= list->n2
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
2
      "index out of bounds", goto error);
260
2
  
if (2
list->p[index] == el2
)
{0
261
0
    FN(EL,free)(el);
262
0
    return list;
263
0
  }
264
2
  
list = 2
FN2
(LIST(EL),cow)(list);
265
2
  if (!list)
266
0
    goto error;
267
2
  
FN2
(EL,free)(list->p[index]);2
268
2
  list->p[index] = el;
269
2
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
2
}
isl_schedule_tree_list_set_schedule_tree
Line
Count
Source
254
18.4k
{
255
18.4k
  if (
!list || 18.4k
!el18.4k
)
256
0
    goto error;
257
18.4k
  
if (18.4k
index < 0 || 18.4k
index >= list->n18.4k
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
18.4k
      "index out of bounds", goto error);
260
18.4k
  
if (18.4k
list->p[index] == el18.4k
)
{3
261
3
    FN(EL,free)(el);
262
3
    return list;
263
3
  }
264
18.4k
  
list = 18.4k
FN18.4k
(LIST(EL),cow)(list);
265
18.4k
  if (!list)
266
0
    goto error;
267
18.4k
  
FN18.4k
(EL,free)(list->p[index]);18.4k
268
18.4k
  list->p[index] = el;
269
18.4k
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
18.4k
}
isl_basic_set_list_set_basic_set
Line
Count
Source
254
2.13k
{
255
2.13k
  if (
!list || 2.13k
!el2.13k
)
256
0
    goto error;
257
2.13k
  
if (2.13k
index < 0 || 2.13k
index >= list->n2.13k
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
2.13k
      "index out of bounds", goto error);
260
2.13k
  
if (2.13k
list->p[index] == el2.13k
)
{0
261
0
    FN(EL,free)(el);
262
0
    return list;
263
0
  }
264
2.13k
  
list = 2.13k
FN2.13k
(LIST(EL),cow)(list);
265
2.13k
  if (!list)
266
0
    goto error;
267
2.13k
  
FN2.13k
(EL,free)(list->p[index]);2.13k
268
2.13k
  list->p[index] = el;
269
2.13k
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
2.13k
}
isl_set_list_set_set
Line
Count
Source
254
1.28k
{
255
1.28k
  if (
!list || 1.28k
!el1.28k
)
256
0
    goto error;
257
1.28k
  
if (1.28k
index < 0 || 1.28k
index >= list->n1.28k
)
258
0
    isl_die(list->ctx, isl_error_invalid,
259
1.28k
      "index out of bounds", goto error);
260
1.28k
  
if (1.28k
list->p[index] == el1.28k
)
{447
261
447
    FN(EL,free)(el);
262
447
    return list;
263
447
  }
264
839
  
list = 839
FN839
(LIST(EL),cow)(list);
265
839
  if (!list)
266
0
    goto error;
267
839
  
FN839
(EL,free)(list->p[index]);839
268
839
  list->p[index] = el;
269
839
  return list;
270
0
error:
271
0
  FN(EL,free)(el);
272
0
  FN(LIST(EL),free)(list);
273
0
  return NULL;
274
839
}
Unexecuted instantiation: isl_union_set_list_set_union_set
Unexecuted instantiation: isl_val_list_set_val
275
276
isl_stat FN(LIST(EL),foreach)(__isl_keep LIST(EL) *list,
277
  isl_stat (*fn)(__isl_take EL *el, void *user), void *user)
278
1.25k
{
279
1.25k
  int i;
280
1.25k
281
1.25k
  if (!list)
282
0
    return isl_stat_error;
283
1.25k
284
2.77k
  
for (i = 0; 1.25k
i < list->n2.77k
;
++i1.52k
)
{2.00k
285
2.00k
    
EL2.00k
*el =
FN2.00k
(EL,copy(list->p[i]));
286
2.00k
    if (!el)
287
0
      return isl_stat_error;
288
2.00k
    
if (2.00k
fn(el, user) < 02.00k
)
289
478
      return isl_stat_error;
290
2.00k
  }
291
1.25k
292
776
  return isl_stat_ok;
293
1.25k
}
isl_pw_aff_list_foreach
Line
Count
Source
278
627
{
279
627
  int i;
280
627
281
627
  if (!list)
282
0
    return isl_stat_error;
283
627
284
786
  
for (i = 0; 627
i < list->n786
;
++i159
)
{637
285
637
    
EL637
*el =
FN637
(EL,copy(list->p[i]));
286
637
    if (!el)
287
0
      return isl_stat_error;
288
637
    
if (637
fn(el, user) < 0637
)
289
478
      return isl_stat_error;
290
637
  }
291
627
292
149
  return isl_stat_ok;
293
627
}
Unexecuted instantiation: isl_val_list_foreach
Unexecuted instantiation: isl_union_set_list_foreach
Unexecuted instantiation: isl_set_list_foreach
Unexecuted instantiation: isl_basic_set_list_foreach
Unexecuted instantiation: isl_schedule_tree_list_foreach
Unexecuted instantiation: isl_union_map_list_foreach
Unexecuted instantiation: isl_map_list_foreach
Unexecuted instantiation: isl_basic_map_list_foreach
Unexecuted instantiation: isl_aff_list_foreach
isl_constraint_list_foreach
Line
Count
Source
278
627
{
279
627
  int i;
280
627
281
627
  if (!list)
282
0
    return isl_stat_error;
283
627
284
1.99k
  
for (i = 0; 627
i < list->n1.99k
;
++i1.36k
)
{1.36k
285
1.36k
    
EL1.36k
*el =
FN1.36k
(EL,copy(list->p[i]));
286
1.36k
    if (!el)
287
0
      return isl_stat_error;
288
1.36k
    
if (1.36k
fn(el, user) < 01.36k
)
289
0
      return isl_stat_error;
290
1.36k
  }
291
627
292
627
  return isl_stat_ok;
293
627
}
Unexecuted instantiation: isl_band_list_foreach
Unexecuted instantiation: isl_ast_graft_list_foreach
Unexecuted instantiation: isl_ast_node_list_foreach
Unexecuted instantiation: isl_ast_expr_list_foreach
Unexecuted instantiation: isl_union_pw_multi_aff_list_foreach
Unexecuted instantiation: isl_union_pw_aff_list_foreach
Unexecuted instantiation: isl_id_list_foreach
294
295
/* Internal data structure for isl_*_list_sort.
296
 *
297
 * "cmp" is the original comparison function.
298
 * "user" is a user provided pointer that should be passed to "cmp".
299
 */
300
S(LIST(EL),sort_data) {
301
  int (*cmp)(__isl_keep EL *a, __isl_keep EL *b, void *user);
302
  void *user;
303
};
304
305
/* Compare two entries of an isl_*_list based on the user provided
306
 * comparison function on pairs of isl_* objects.
307
 */
308
static int FN(LIST(EL),cmp)(const void *a, const void *b, void *user)
309
1.01k
{
310
1.01k
  S(LIST(EL),sort_data) *data = user;
311
1.01k
  EL * const *el1 = a;
312
1.01k
  EL * const *el2 = b;
313
1.01k
314
1.01k
  return data->cmp(*el1, *el2, data->user);
315
1.01k
}
Unexecuted instantiation: isl_val.c:isl_val_list_cmp
Unexecuted instantiation: isl_aff.c:isl_aff_list_cmp
Unexecuted instantiation: isl_set_list.c:isl_union_set_list_cmp
Unexecuted instantiation: isl_set_list.c:isl_set_list_cmp
Unexecuted instantiation: isl_set_list.c:isl_basic_set_list_cmp
Unexecuted instantiation: isl_schedule_tree.c:isl_schedule_tree_list_cmp
Unexecuted instantiation: isl_map_list.c:isl_union_map_list_cmp
Unexecuted instantiation: isl_map_list.c:isl_map_list_cmp
Unexecuted instantiation: isl_map_list.c:isl_basic_map_list_cmp
Unexecuted instantiation: isl_id.c:isl_id_list_cmp
isl_constraint.c:isl_constraint_list_cmp
Line
Count
Source
309
933
{
310
933
  S(LIST(EL),sort_data) *data = user;
311
933
  EL * const *el1 = a;
312
933
  EL * const *el2 = b;
313
933
314
933
  return data->cmp(*el1, *el2, data->user);
315
933
}
Unexecuted instantiation: isl_band.c:isl_band_list_cmp
isl_ast_graft.c:isl_ast_graft_list_cmp
Line
Count
Source
309
18
{
310
18
  S(LIST(EL),sort_data) *data = user;
311
18
  EL * const *el1 = a;
312
18
  EL * const *el2 = b;
313
18
314
18
  return data->cmp(*el1, *el2, data->user);
315
18
}
Unexecuted instantiation: isl_ast.c:isl_ast_node_list_cmp
Unexecuted instantiation: isl_ast.c:isl_ast_expr_list_cmp
Unexecuted instantiation: isl_aff.c:isl_union_pw_multi_aff_list_cmp
Unexecuted instantiation: isl_aff.c:isl_union_pw_aff_list_cmp
isl_aff.c:isl_pw_aff_list_cmp
Line
Count
Source
309
65
{
310
65
  S(LIST(EL),sort_data) *data = user;
311
65
  EL * const *el1 = a;
312
65
  EL * const *el2 = b;
313
65
314
65
  return data->cmp(*el1, *el2, data->user);
315
65
}
316
317
/* Sort the elements of "list" in ascending order according to
318
 * comparison function "cmp".
319
 */
320
__isl_give LIST(EL) *FN(LIST(EL),sort)(__isl_take LIST(EL) *list,
321
  int (*cmp)(__isl_keep EL *a, __isl_keep EL *b, void *user), void *user)
322
1.47k
{
323
1.47k
  S(LIST(EL),sort_data) data = { cmp, user };
324
1.47k
325
1.47k
  if (!list)
326
0
    return NULL;
327
1.47k
  
if (1.47k
list->n <= 11.47k
)
328
707
    return list;
329
769
  
list = 769
FN769
(LIST(EL),cow)(list);
330
769
  if (!list)
331
0
    return NULL;
332
769
333
769
  
if (769
isl_sort(list->p, list->n, sizeof(list->p[0]),769
334
769
      &FN(LIST(EL),cmp), &data) < 0)
335
0
    
return 0
FN0
(LIST(EL),free)(list);
336
769
337
769
  return list;
338
769
}
Unexecuted instantiation: isl_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
322
18
{
323
18
  S(LIST(EL),sort_data) data = { cmp, user };
324
18
325
18
  if (!list)
326
0
    return NULL;
327
18
  
if (18
list->n <= 118
)
328
0
    return list;
329
18
  
list = 18
FN18
(LIST(EL),cow)(list);
330
18
  if (!list)
331
0
    return NULL;
332
18
333
18
  
if (18
isl_sort(list->p, list->n, sizeof(list->p[0]),18
334
18
      &FN(LIST(EL),cmp), &data) < 0)
335
0
    
return 0
FN0
(LIST(EL),free)(list);
336
18
337
18
  return list;
338
18
}
Unexecuted instantiation: isl_band_list_sort
isl_constraint_list_sort
Line
Count
Source
322
1.39k
{
323
1.39k
  S(LIST(EL),sort_data) data = { cmp, user };
324
1.39k
325
1.39k
  if (!list)
326
0
    return NULL;
327
1.39k
  
if (1.39k
list->n <= 11.39k
)
328
696
    return list;
329
696
  
list = 696
FN696
(LIST(EL),cow)(list);
330
696
  if (!list)
331
0
    return NULL;
332
696
333
696
  
if (696
isl_sort(list->p, list->n, sizeof(list->p[0]),696
334
696
      &FN(LIST(EL),cmp), &data) < 0)
335
0
    
return 0
FN0
(LIST(EL),free)(list);
336
696
337
696
  return list;
338
696
}
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_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
isl_pw_aff_list_sort
Line
Count
Source
322
66
{
323
66
  S(LIST(EL),sort_data) data = { cmp, user };
324
66
325
66
  if (!list)
326
0
    return NULL;
327
66
  
if (66
list->n <= 166
)
328
11
    return list;
329
55
  
list = 55
FN55
(LIST(EL),cow)(list);
330
55
  if (!list)
331
0
    return NULL;
332
55
333
55
  
if (55
isl_sort(list->p, list->n, sizeof(list->p[0]),55
334
55
      &FN(LIST(EL),cmp), &data) < 0)
335
0
    
return 0
FN0
(LIST(EL),free)(list);
336
55
337
55
  return list;
338
55
}
339
340
/* Internal data structure for isl_*_list_foreach_scc.
341
 *
342
 * "list" is the original list.
343
 * "follows" is the user provided callback that defines the edges of the graph.
344
 */
345
S(LIST(EL),foreach_scc_data) {
346
  LIST(EL) *list;
347
  isl_bool (*follows)(__isl_keep EL *a, __isl_keep EL *b, void *user);
348
  void *follows_user;
349
};
350
351
/* Does element i of data->list follow element j?
352
 *
353
 * Use the user provided callback to find out.
354
 */
355
static isl_bool FN(LIST(EL),follows)(int i, int j, void *user)
356
106
{
357
106
  S(LIST(EL),foreach_scc_data) *data = user;
358
106
359
106
  return data->follows(data->list->p[i], data->list->p[j],
360
106
        data->follows_user);
361
106
}
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_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_band.c:isl_band_list_follows
Unexecuted instantiation: isl_constraint.c:isl_constraint_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_schedule_tree.c:isl_schedule_tree_list_follows
isl_set_list.c:isl_basic_set_list_follows
Line
Count
Source
356
106
{
357
106
  S(LIST(EL),foreach_scc_data) *data = user;
358
106
359
106
  return data->follows(data->list->p[i], data->list->p[j],
360
106
        data->follows_user);
361
106
}
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
Unexecuted instantiation: isl_id.c:isl_id_list_follows
362
363
/* Call "fn" on the sublist of "list" that consists of the elements
364
 * with indices specified by the "n" elements of "pos".
365
 */
366
static isl_stat FN(LIST(EL),call_on_scc)(__isl_keep LIST(EL) *list, int *pos,
367
  int n, isl_stat (*fn)(__isl_take LIST(EL) *scc, void *user), void *user)
368
68
{
369
68
  int i;
370
68
  isl_ctx *ctx;
371
68
  LIST(EL) *slice;
372
68
373
68
  ctx = FN(LIST(EL),get_ctx)(list);
374
68
  slice = FN(LIST(EL),alloc)(ctx, n);
375
136
  for (i = 0; 
i < n136
;
++i68
)
{68
376
68
    EL *el;
377
68
378
68
    el = FN(EL,copy)(list->p[pos[i]]);
379
68
    slice = FN(LIST(EL),add)(slice, el);
380
68
  }
381
68
382
68
  return fn(slice, user);
383
68
}
Unexecuted instantiation: isl_val.c:isl_val_list_call_on_scc
Unexecuted instantiation: isl_aff.c:isl_pw_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_band.c:isl_band_list_call_on_scc
Unexecuted instantiation: isl_constraint.c:isl_constraint_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_schedule_tree.c:isl_schedule_tree_list_call_on_scc
isl_set_list.c:isl_basic_set_list_call_on_scc
Line
Count
Source
368
68
{
369
68
  int i;
370
68
  isl_ctx *ctx;
371
68
  LIST(EL) *slice;
372
68
373
68
  ctx = FN(LIST(EL),get_ctx)(list);
374
68
  slice = FN(LIST(EL),alloc)(ctx, n);
375
136
  for (i = 0; 
i < n136
;
++i68
)
{68
376
68
    EL *el;
377
68
378
68
    el = FN(EL,copy)(list->p[pos[i]]);
379
68
    slice = FN(LIST(EL),add)(slice, el);
380
68
  }
381
68
382
68
  return fn(slice, user);
383
68
}
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_aff.c:isl_aff_list_call_on_scc
384
385
/* Call "fn" on each of the strongly connected components (SCCs) of
386
 * the graph with as vertices the elements of "list" and
387
 * a directed edge from node b to node a iff follows(a, b)
388
 * returns 1.  follows should return -1 on error.
389
 *
390
 * If SCC a contains a node i that follows a node j in another SCC b
391
 * (i.e., follows(i, j, user) returns 1), then fn will be called on SCC a
392
 * after being called on SCC b.
393
 *
394
 * We simply call isl_tarjan_graph_init, extract the SCCs from the result and
395
 * call fn on each of them.
396
 */
397
isl_stat FN(LIST(EL),foreach_scc)(__isl_keep LIST(EL) *list,
398
  isl_bool (*follows)(__isl_keep EL *a, __isl_keep EL *b, void *user),
399
  void *follows_user,
400
  isl_stat (*fn)(__isl_take LIST(EL) *scc, void *user), void *fn_user)
401
44
{
402
44
  S(LIST(EL),foreach_scc_data) data = { list, follows, follows_user };
403
44
  int i, n;
404
44
  isl_ctx *ctx;
405
44
  struct isl_tarjan_graph *g;
406
44
407
44
  if (!list)
408
0
    return isl_stat_error;
409
44
  
if (44
list->n == 044
)
410
0
    return isl_stat_ok;
411
44
  
if (44
list->n == 144
)
412
0
    
return fn(0
FN0
(LIST(EL),copy)(list), fn_user);
413
44
414
44
  
ctx = 44
FN44
(LIST(EL),get_ctx)(list);
415
44
  n = list->n;
416
44
  g = isl_tarjan_graph_init(ctx, n, &FN(LIST(EL),follows), &data);
417
44
  if (!g)
418
0
    return isl_stat_error;
419
44
420
44
  i = 0;
421
81
  do {
422
81
    int first;
423
81
424
81
    if (g->order[i] == -1)
425
0
      isl_die(ctx, isl_error_internal, "cannot happen",
426
81
        break);
427
81
    first = i;
428
181
    while (
g->order[i] != -1181
)
{100
429
100
      ++i; --n;
430
100
    }
431
81
    if (
first == 0 && 81
n == 044
)
{13
432
13
      isl_tarjan_graph_free(g);
433
13
      return fn(FN(LIST(EL),copy)(list), fn_user);
434
13
    }
435
68
    
if (68
FN68
(LIST(EL),call_on_scc)(list, g->order + first, i - first,68
436
68
              fn, fn_user) < 0)
437
0
      break;
438
68
    ++i;
439
68
  } while (n);
440
44
441
31
  isl_tarjan_graph_free(g);
442
31
443
31
  return n > 0 ? 
isl_stat_error0
:
isl_stat_ok31
;
444
44
}
Unexecuted instantiation: isl_val_list_foreach_scc
Unexecuted instantiation: isl_aff_list_foreach_scc
Unexecuted instantiation: isl_pw_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_band_list_foreach_scc
Unexecuted instantiation: isl_constraint_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_schedule_tree_list_foreach_scc
isl_basic_set_list_foreach_scc
Line
Count
Source
401
44
{
402
44
  S(LIST(EL),foreach_scc_data) data = { list, follows, follows_user };
403
44
  int i, n;
404
44
  isl_ctx *ctx;
405
44
  struct isl_tarjan_graph *g;
406
44
407
44
  if (!list)
408
0
    return isl_stat_error;
409
44
  
if (44
list->n == 044
)
410
0
    return isl_stat_ok;
411
44
  
if (44
list->n == 144
)
412
0
    
return fn(0
FN0
(LIST(EL),copy)(list), fn_user);
413
44
414
44
  
ctx = 44
FN44
(LIST(EL),get_ctx)(list);
415
44
  n = list->n;
416
44
  g = isl_tarjan_graph_init(ctx, n, &FN(LIST(EL),follows), &data);
417
44
  if (!g)
418
0
    return isl_stat_error;
419
44
420
44
  i = 0;
421
81
  do {
422
81
    int first;
423
81
424
81
    if (g->order[i] == -1)
425
0
      isl_die(ctx, isl_error_internal, "cannot happen",
426
81
        break);
427
81
    first = i;
428
181
    while (
g->order[i] != -1181
)
{100
429
100
      ++i; --n;
430
100
    }
431
81
    if (
first == 0 && 81
n == 044
)
{13
432
13
      isl_tarjan_graph_free(g);
433
13
      return fn(FN(LIST(EL),copy)(list), fn_user);
434
13
    }
435
68
    
if (68
FN68
(LIST(EL),call_on_scc)(list, g->order + first, i - first,68
436
68
              fn, fn_user) < 0)
437
0
      break;
438
68
    ++i;
439
68
  } while (n);
440
44
441
31
  isl_tarjan_graph_free(g);
442
31
443
31
  return n > 0 ? 
isl_stat_error0
:
isl_stat_ok31
;
444
44
}
Unexecuted instantiation: isl_set_list_foreach_scc
Unexecuted instantiation: isl_union_set_list_foreach_scc
445
446
__isl_give LIST(EL) *FN(FN(LIST(EL),from),BASE)(__isl_take EL *el)
447
21.4k
{
448
21.4k
  isl_ctx *ctx;
449
21.4k
  LIST(EL) *list;
450
21.4k
451
21.4k
  if (!el)
452
0
    return NULL;
453
21.4k
  
ctx = 21.4k
FN21.4k
(EL,get_ctx)(el);
454
21.4k
  list = FN(LIST(EL),alloc)(ctx, 1);
455
21.4k
  if (!list)
456
0
    goto error;
457
21.4k
  
list = 21.4k
FN21.4k
(LIST(EL),add)(list, el);
458
21.4k
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
21.4k
}
isl_val_list_from_val
Line
Count
Source
447
4
{
448
4
  isl_ctx *ctx;
449
4
  LIST(EL) *list;
450
4
451
4
  if (!el)
452
0
    return NULL;
453
4
  
ctx = 4
FN4
(EL,get_ctx)(el);
454
4
  list = FN(LIST(EL),alloc)(ctx, 1);
455
4
  if (!list)
456
0
    goto error;
457
4
  
list = 4
FN4
(LIST(EL),add)(list, el);
458
4
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
4
}
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
447
7
{
448
7
  isl_ctx *ctx;
449
7
  LIST(EL) *list;
450
7
451
7
  if (!el)
452
0
    return NULL;
453
7
  
ctx = 7
FN7
(EL,get_ctx)(el);
454
7
  list = FN(LIST(EL),alloc)(ctx, 1);
455
7
  if (!list)
456
0
    goto error;
457
7
  
list = 7
FN7
(LIST(EL),add)(list, el);
458
7
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
7
}
Unexecuted instantiation: isl_ast_expr_list_from_ast_expr
isl_ast_node_list_from_ast_node
Line
Count
Source
447
18
{
448
18
  isl_ctx *ctx;
449
18
  LIST(EL) *list;
450
18
451
18
  if (!el)
452
0
    return NULL;
453
18
  
ctx = 18
FN18
(EL,get_ctx)(el);
454
18
  list = FN(LIST(EL),alloc)(ctx, 1);
455
18
  if (!list)
456
0
    goto error;
457
18
  
list = 18
FN18
(LIST(EL),add)(list, el);
458
18
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
18
}
isl_ast_graft_list_from_ast_graft
Line
Count
Source
447
1.15k
{
448
1.15k
  isl_ctx *ctx;
449
1.15k
  LIST(EL) *list;
450
1.15k
451
1.15k
  if (!el)
452
0
    return NULL;
453
1.15k
  
ctx = 1.15k
FN1.15k
(EL,get_ctx)(el);
454
1.15k
  list = FN(LIST(EL),alloc)(ctx, 1);
455
1.15k
  if (!list)
456
0
    goto error;
457
1.15k
  
list = 1.15k
FN1.15k
(LIST(EL),add)(list, el);
458
1.15k
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
1.15k
}
isl_band_list_from_band
Line
Count
Source
447
6
{
448
6
  isl_ctx *ctx;
449
6
  LIST(EL) *list;
450
6
451
6
  if (!el)
452
0
    return NULL;
453
6
  
ctx = 6
FN6
(EL,get_ctx)(el);
454
6
  list = FN(LIST(EL),alloc)(ctx, 1);
455
6
  if (!list)
456
0
    goto error;
457
6
  
list = 6
FN6
(LIST(EL),add)(list, el);
458
6
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
6
}
Unexecuted instantiation: isl_constraint_list_from_constraint
Unexecuted instantiation: isl_id_list_from_id
isl_aff_list_from_aff
Line
Count
Source
447
4.50k
{
448
4.50k
  isl_ctx *ctx;
449
4.50k
  LIST(EL) *list;
450
4.50k
451
4.50k
  if (!el)
452
0
    return NULL;
453
4.50k
  
ctx = 4.50k
FN4.50k
(EL,get_ctx)(el);
454
4.50k
  list = FN(LIST(EL),alloc)(ctx, 1);
455
4.50k
  if (!list)
456
0
    goto error;
457
4.50k
  
list = 4.50k
FN4.50k
(LIST(EL),add)(list, el);
458
4.50k
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
4.50k
}
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
447
1
{
448
1
  isl_ctx *ctx;
449
1
  LIST(EL) *list;
450
1
451
1
  if (!el)
452
0
    return NULL;
453
1
  
ctx = 1
FN1
(EL,get_ctx)(el);
454
1
  list = FN(LIST(EL),alloc)(ctx, 1);
455
1
  if (!list)
456
0
    goto error;
457
1
  
list = 1
FN1
(LIST(EL),add)(list, el);
458
1
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
1
}
isl_schedule_tree_list_from_schedule_tree
Line
Count
Source
447
2.80k
{
448
2.80k
  isl_ctx *ctx;
449
2.80k
  LIST(EL) *list;
450
2.80k
451
2.80k
  if (!el)
452
0
    return NULL;
453
2.80k
  
ctx = 2.80k
FN2.80k
(EL,get_ctx)(el);
454
2.80k
  list = FN(LIST(EL),alloc)(ctx, 1);
455
2.80k
  if (!list)
456
0
    goto error;
457
2.80k
  
list = 2.80k
FN2.80k
(LIST(EL),add)(list, el);
458
2.80k
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
2.80k
}
isl_basic_set_list_from_basic_set
Line
Count
Source
447
517
{
448
517
  isl_ctx *ctx;
449
517
  LIST(EL) *list;
450
517
451
517
  if (!el)
452
0
    return NULL;
453
517
  
ctx = 517
FN517
(EL,get_ctx)(el);
454
517
  list = FN(LIST(EL),alloc)(ctx, 1);
455
517
  if (!list)
456
0
    goto error;
457
517
  
list = 517
FN517
(LIST(EL),add)(list, el);
458
517
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
517
}
isl_set_list_from_set
Line
Count
Source
447
4.50k
{
448
4.50k
  isl_ctx *ctx;
449
4.50k
  LIST(EL) *list;
450
4.50k
451
4.50k
  if (!el)
452
0
    return NULL;
453
4.50k
  
ctx = 4.50k
FN4.50k
(EL,get_ctx)(el);
454
4.50k
  list = FN(LIST(EL),alloc)(ctx, 1);
455
4.50k
  if (!list)
456
0
    goto error;
457
4.50k
  
list = 4.50k
FN4.50k
(LIST(EL),add)(list, el);
458
4.50k
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
4.50k
}
isl_union_set_list_from_union_set
Line
Count
Source
447
320
{
448
320
  isl_ctx *ctx;
449
320
  LIST(EL) *list;
450
320
451
320
  if (!el)
452
0
    return NULL;
453
320
  
ctx = 320
FN320
(EL,get_ctx)(el);
454
320
  list = FN(LIST(EL),alloc)(ctx, 1);
455
320
  if (!list)
456
0
    goto error;
457
320
  
list = 320
FN320
(LIST(EL),add)(list, el);
458
320
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
320
}
isl_pw_aff_list_from_pw_aff
Line
Count
Source
447
7.66k
{
448
7.66k
  isl_ctx *ctx;
449
7.66k
  LIST(EL) *list;
450
7.66k
451
7.66k
  if (!el)
452
0
    return NULL;
453
7.66k
  
ctx = 7.66k
FN7.66k
(EL,get_ctx)(el);
454
7.66k
  list = FN(LIST(EL),alloc)(ctx, 1);
455
7.66k
  if (!list)
456
0
    goto error;
457
7.66k
  
list = 7.66k
FN7.66k
(LIST(EL),add)(list, el);
458
7.66k
  return list;
459
0
error:
460
0
  FN(EL,free)(el);
461
0
  return NULL;
462
7.66k
}
463
464
__isl_give LIST(EL) *FN(LIST(EL),concat)(__isl_take LIST(EL) *list1,
465
  __isl_take LIST(EL) *list2)
466
4.86k
{
467
4.86k
  int i;
468
4.86k
  isl_ctx *ctx;
469
4.86k
  LIST(EL) *res;
470
4.86k
471
4.86k
  if (
!list1 || 4.86k
!list24.86k
)
472
0
    goto error;
473
4.86k
474
4.86k
  
ctx = 4.86k
FN4.86k
(LIST(EL),get_ctx)(list1);
475
4.86k
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
476
9.39k
  for (i = 0; 
i < list1->n9.39k
;
++i4.53k
)
477
4.53k
    
res = 4.53k
FN4.53k
(LIST(EL),add)(res,
FN4.53k
(EL,copy)(list1->p[i]));
478
10.4k
  for (i = 0; 
i < list2->n10.4k
;
++i5.60k
)
479
5.60k
    
res = 5.60k
FN5.60k
(LIST(EL),add)(res,
FN5.60k
(EL,copy)(list2->p[i]));
480
4.86k
481
4.86k
  FN(LIST(EL),free)(list1);
482
4.86k
  FN(LIST(EL),free)(list2);
483
4.86k
  return res;
484
0
error:
485
0
  FN(LIST(EL),free)(list1);
486
0
  FN(LIST(EL),free)(list2);
487
0
  return NULL;
488
4.86k
}
Unexecuted instantiation: isl_union_set_list_concat
Unexecuted instantiation: isl_set_list_concat
isl_basic_set_list_concat
Line
Count
Source
466
75
{
467
75
  int i;
468
75
  isl_ctx *ctx;
469
75
  LIST(EL) *res;
470
75
471
75
  if (
!list1 || 75
!list275
)
472
0
    goto error;
473
75
474
75
  
ctx = 75
FN75
(LIST(EL),get_ctx)(list1);
475
75
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
476
95
  for (i = 0; 
i < list1->n95
;
++i20
)
477
20
    
res = 20
FN20
(LIST(EL),add)(res,
FN20
(EL,copy)(list1->p[i]));
478
149
  for (i = 0; 
i < list2->n149
;
++i74
)
479
74
    
res = 74
FN74
(LIST(EL),add)(res,
FN74
(EL,copy)(list2->p[i]));
480
75
481
75
  FN(LIST(EL),free)(list1);
482
75
  FN(LIST(EL),free)(list2);
483
75
  return res;
484
0
error:
485
0
  FN(LIST(EL),free)(list1);
486
0
  FN(LIST(EL),free)(list2);
487
0
  return NULL;
488
75
}
Unexecuted instantiation: isl_schedule_tree_list_concat
Unexecuted instantiation: isl_union_map_list_concat
Unexecuted instantiation: isl_map_list_concat
isl_basic_map_list_concat
Line
Count
Source
466
878
{
467
878
  int i;
468
878
  isl_ctx *ctx;
469
878
  LIST(EL) *res;
470
878
471
878
  if (
!list1 || 878
!list2878
)
472
0
    goto error;
473
878
474
878
  
ctx = 878
FN878
(LIST(EL),get_ctx)(list1);
475
878
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
476
2.48k
  for (i = 0; 
i < list1->n2.48k
;
++i1.60k
)
477
1.60k
    
res = 1.60k
FN1.60k
(LIST(EL),add)(res,
FN1.60k
(EL,copy)(list1->p[i]));
478
3.01k
  for (i = 0; 
i < list2->n3.01k
;
++i2.13k
)
479
2.13k
    
res = 2.13k
FN2.13k
(LIST(EL),add)(res,
FN2.13k
(EL,copy)(list2->p[i]));
480
878
481
878
  FN(LIST(EL),free)(list1);
482
878
  FN(LIST(EL),free)(list2);
483
878
  return res;
484
0
error:
485
0
  FN(LIST(EL),free)(list1);
486
0
  FN(LIST(EL),free)(list2);
487
0
  return NULL;
488
878
}
isl_id_list_concat
Line
Count
Source
466
553
{
467
553
  int i;
468
553
  isl_ctx *ctx;
469
553
  LIST(EL) *res;
470
553
471
553
  if (
!list1 || 553
!list2553
)
472
0
    goto error;
473
553
474
553
  
ctx = 553
FN553
(LIST(EL),get_ctx)(list1);
475
553
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
476
988
  for (i = 0; 
i < list1->n988
;
++i435
)
477
435
    
res = 435
FN435
(LIST(EL),add)(res,
FN435
(EL,copy)(list1->p[i]));
478
1.30k
  for (i = 0; 
i < list2->n1.30k
;
++i756
)
479
756
    
res = 756
FN756
(LIST(EL),add)(res,
FN756
(EL,copy)(list2->p[i]));
480
553
481
553
  FN(LIST(EL),free)(list1);
482
553
  FN(LIST(EL),free)(list2);
483
553
  return res;
484
0
error:
485
0
  FN(LIST(EL),free)(list1);
486
0
  FN(LIST(EL),free)(list2);
487
0
  return NULL;
488
553
}
Unexecuted instantiation: isl_constraint_list_concat
isl_band_list_concat
Line
Count
Source
466
4
{
467
4
  int i;
468
4
  isl_ctx *ctx;
469
4
  LIST(EL) *res;
470
4
471
4
  if (
!list1 || 4
!list24
)
472
0
    goto error;
473
4
474
4
  
ctx = 4
FN4
(LIST(EL),get_ctx)(list1);
475
4
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
476
6
  for (i = 0; 
i < list1->n6
;
++i2
)
477
2
    
res = 2
FN2
(LIST(EL),add)(res,
FN2
(EL,copy)(list1->p[i]));
478
8
  for (i = 0; 
i < list2->n8
;
++i4
)
479
4
    
res = 4
FN4
(LIST(EL),add)(res,
FN4
(EL,copy)(list2->p[i]));
480
4
481
4
  FN(LIST(EL),free)(list1);
482
4
  FN(LIST(EL),free)(list2);
483
4
  return res;
484
0
error:
485
0
  FN(LIST(EL),free)(list1);
486
0
  FN(LIST(EL),free)(list2);
487
0
  return NULL;
488
4
}
isl_ast_graft_list_concat
Line
Count
Source
466
3.23k
{
467
3.23k
  int i;
468
3.23k
  isl_ctx *ctx;
469
3.23k
  LIST(EL) *res;
470
3.23k
471
3.23k
  if (
!list1 || 3.23k
!list23.23k
)
472
0
    goto error;
473
3.23k
474
3.23k
  
ctx = 3.23k
FN3.23k
(LIST(EL),get_ctx)(list1);
475
3.23k
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
476
5.57k
  for (i = 0; 
i < list1->n5.57k
;
++i2.34k
)
477
2.34k
    
res = 2.34k
FN2.34k
(LIST(EL),add)(res,
FN2.34k
(EL,copy)(list1->p[i]));
478
5.75k
  for (i = 0; 
i < list2->n5.75k
;
++i2.52k
)
479
2.52k
    
res = 2.52k
FN2.52k
(LIST(EL),add)(res,
FN2.52k
(EL,copy)(list2->p[i]));
480
3.23k
481
3.23k
  FN(LIST(EL),free)(list1);
482
3.23k
  FN(LIST(EL),free)(list2);
483
3.23k
  return res;
484
0
error:
485
0
  FN(LIST(EL),free)(list1);
486
0
  FN(LIST(EL),free)(list2);
487
0
  return NULL;
488
3.23k
}
Unexecuted instantiation: isl_ast_node_list_concat
Unexecuted instantiation: isl_ast_expr_list_concat
Unexecuted instantiation: isl_union_pw_multi_aff_list_concat
Unexecuted instantiation: isl_union_pw_aff_list_concat
isl_pw_aff_list_concat
Line
Count
Source
466
119
{
467
119
  int i;
468
119
  isl_ctx *ctx;
469
119
  LIST(EL) *res;
470
119
471
119
  if (
!list1 || 119
!list2119
)
472
0
    goto error;
473
119
474
119
  
ctx = 119
FN119
(LIST(EL),get_ctx)(list1);
475
119
  res = FN(LIST(EL),alloc)(ctx, list1->n + list2->n);
476
249
  for (i = 0; 
i < list1->n249
;
++i130
)
477
130
    
res = 130
FN130
(LIST(EL),add)(res,
FN130
(EL,copy)(list1->p[i]));
478
238
  for (i = 0; 
i < list2->n238
;
++i119
)
479
119
    
res = 119
FN119
(LIST(EL),add)(res,
FN119
(EL,copy)(list2->p[i]));
480
119
481
119
  FN(LIST(EL),free)(list1);
482
119
  FN(LIST(EL),free)(list2);
483
119
  return res;
484
0
error:
485
0
  FN(LIST(EL),free)(list1);
486
0
  FN(LIST(EL),free)(list2);
487
0
  return NULL;
488
119
}
Unexecuted instantiation: isl_aff_list_concat
Unexecuted instantiation: isl_val_list_concat
489
490
__isl_give isl_printer *CAT(isl_printer_print_,LIST(BASE))(
491
  __isl_take isl_printer *p, __isl_keep LIST(EL) *list)
492
0
{
493
0
  int i;
494
0
495
0
  if (
!p || 0
!list0
)
496
0
    goto error;
497
0
  p = isl_printer_print_str(p, "(");
498
0
  for (i = 0; 
i < list->n0
;
++i0
)
{0
499
0
    if (i)
500
0
      p = isl_printer_print_str(p, ",");
501
0
    p = CAT(isl_printer_print_,BASE)(p, list->p[i]);
502
0
  }
503
0
  p = isl_printer_print_str(p, ")");
504
0
  return p;
505
0
error:
506
0
  isl_printer_free(p);
507
0
  return NULL;
508
0
}
Unexecuted instantiation: isl_printer_print_aff_list
Unexecuted instantiation: isl_printer_print_val_list
Unexecuted instantiation: isl_printer_print_union_set_list
Unexecuted instantiation: isl_printer_print_set_list
Unexecuted instantiation: isl_printer_print_basic_set_list
Unexecuted instantiation: isl_printer_print_schedule_tree_list
Unexecuted instantiation: isl_printer_print_union_map_list
Unexecuted instantiation: isl_printer_print_map_list
Unexecuted instantiation: isl_printer_print_basic_map_list
Unexecuted instantiation: isl_printer_print_id_list
Unexecuted instantiation: isl_printer_print_constraint_list
Unexecuted instantiation: isl_printer_print_band_list
Unexecuted instantiation: isl_printer_print_ast_graft_list
Unexecuted instantiation: isl_printer_print_ast_node_list
Unexecuted instantiation: isl_printer_print_ast_expr_list
Unexecuted instantiation: isl_printer_print_union_pw_multi_aff_list
Unexecuted instantiation: isl_printer_print_union_pw_aff_list
Unexecuted instantiation: isl_printer_print_pw_aff_list
509
510
void FN(LIST(EL),dump)(__isl_keep LIST(EL) *list)
511
0
{
512
0
  isl_printer *printer;
513
0
514
0
  if (!list)
515
0
    return;
516
0
517
0
  
printer = isl_printer_to_file(0
FN0
(LIST(EL),get_ctx)(list), stderr);
518
0
  printer = CAT(isl_printer_print_,LIST(BASE))(printer, list);
519
0
  printer = isl_printer_end_line(printer);
520
0
521
0
  isl_printer_free(printer);
522
0
}
Unexecuted instantiation: isl_union_set_list_dump
Unexecuted instantiation: isl_val_list_dump
Unexecuted instantiation: isl_pw_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_band_list_dump
Unexecuted instantiation: isl_constraint_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_schedule_tree_list_dump
Unexecuted instantiation: isl_basic_set_list_dump
Unexecuted instantiation: isl_set_list_dump
Unexecuted instantiation: isl_aff_list_dump