Import Debian changes 20180207-1
[hcoop/debian/mlton.git] / runtime / gc / object-size.h
1 /* Copyright (C) 2016-2017 Matthew Fluet.
2 * Copyright (C) 1999-2007 Henry Cejtin, Matthew Fluet, Suresh
3 * Jagannathan, and Stephen Weeks.
4 * Copyright (C) 1997-2000 NEC Research Institute.
5 *
6 * MLton is released under a BSD-style license.
7 * See the file MLton-LICENSE for details.
8 */
9
10 #if (defined (MLTON_GC_INTERNAL_FUNCS))
11
12 static inline size_t sizeofArrayNoMetaData (GC_state s, GC_arrayLength numElements,
13 uint16_t bytesNonObjptrs, uint16_t numObjptrs);
14 static inline size_t sizeofStackNoMetaData (GC_state s, GC_stack stack);
15
16 static inline void sizeofObjectAux (GC_state s, pointer p,
17 size_t* metaDataBytes, size_t* objectBytes);
18
19 static inline size_t sizeofObject (GC_state s, pointer p);
20
21 static inline size_t sizeofObjectNoMetaData (GC_state s, pointer p);
22
23 #endif /* (defined (MLTON_GC_INTERNAL_FUNCS)) */