memry.cpp 1.7 KB
Newer Older
T
tmbdev 已提交
1
/**********************************************************************
2
 * File:        memry.cpp  (Formerly memory.c)
T
tmbdev 已提交
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
 * Description: Memory allocation with builtin safety checks.
 * Author:					Ray Smith
 * Created:					Wed Jan 22 09:43:33 GMT 1992
 *
 * (C) Copyright 1992, Hewlett-Packard Ltd.
 ** Licensed under the Apache License, Version 2.0 (the "License");
 ** you may not use this file except in compliance with the License.
 ** You may obtain a copy of the License at
 ** http://www.apache.org/licenses/LICENSE-2.0
 ** Unless required by applicable law or agreed to in writing, software
 ** distributed under the License is distributed on an "AS IS" BASIS,
 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 ** See the License for the specific language governing permissions and
 ** limitations under the License.
 *
 **********************************************************************/

#include          "memry.h"
21
#include          <stdlib.h>
T
tmbdev 已提交
22

23 24 25
// With improvements in OS memory allocators, internal memory management
// is no longer required, so all these functions now map to their malloc
// family equivalents.
T
tmbdev 已提交
26

27 28
// TODO(rays) further cleanup by redirecting calls to new and creating proper
// constructors.
T
tmbdev 已提交
29

30
char *alloc_string(inT32 count) {
31 32
  // Round up the amount allocated to a multiple of 4
  return static_cast<char*>(malloc((count + 3) & ~3));
T
tmbdev 已提交
33 34
}

35
void free_string(char *string) {
T
tmbdev 已提交
36 37 38
  free(string);
}

39 40
void *alloc_mem(inT32 count) {
  return malloc(static_cast<size_t>(count));
T
tmbdev 已提交
41 42
}

43 44
void *alloc_big_zeros(inT32 count) {
  return calloc(static_cast<size_t>(count), 1);
T
tmbdev 已提交
45 46
}

47
void free_mem(void *oldchunk) {
T
tmbdev 已提交
48 49 50
  free(oldchunk);
}

51
void free_big_mem(void *oldchunk) {
T
tmbdev 已提交
52 53
  free(oldchunk);
}