summaryrefslogtreecommitdiff
path: root/ghc/runtime/regex/test/malloc-test.c
blob: 7e27a15a8905ad4d1b02f0e518e08be6195338fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47


typedef struct {
   unsigned *bits;
   unsigned size;
} bits_list_type;

#define BYTEWIDTH  8
#define NULL 0

#define BITS_BLOCK_SIZE (sizeof (unsigned) * BYTEWIDTH)
#define BITS_BLOCK(position) ((position) / BITS_BLOCK_SIZE)
#define BITS_MASK(position) (1 << ((position) % BITS_BLOCK_SIZE))

static unsigned
init_bits_list (bits_list_ptr)
  bits_list_type *bits_list_ptr;
{
  bits_list_ptr->bits = NULL;
  bits_list_ptr->bits = (unsigned *) malloc (sizeof (unsigned));

  if (bits_list_ptr->bits == NULL)
    return 0;

  bits_list_ptr->bits[0] = (unsigned)0;
  bits_list_ptr->size = BITS_BLOCK_SIZE;

  return 1;
}


main()
{
  bits_list_type dummy;
  bits_list_type dummy_1;
  bits_list_type dummy_2;
  bits_list_type dummy_3;

  init_bits_list (&dummy);
printf("init 1\n");
  init_bits_list (&dummy_1);
printf("init 2\n");
  init_bits_list (&dummy_2);
printf("init 3\n");
  init_bits_list (&dummy_3);
printf("init 4\n");
}