2 * Copyright (C) 2024 Mikulas Patocka
4 * This file is part of Ajla.
6 * Ajla is free software: you can redistribute it and/or modify it under the
7 * terms of the GNU General Public License as published by the Free Software
8 * Foundation, either version 3 of the License, or (at your option) any later
11 * Ajla is distributed in the hope that it will be useful, but WITHOUT ANY
12 * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
13 * A PARTICULAR PURPOSE. See the GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License along with
16 * Ajla. If not, see <https://www.gnu.org/licenses/>.
19 #ifndef HAVE_DEBUGLEVEL
20 #define HAVE_DEBUGLEVEL 1
23 /*#define DEBUG_BIST*/
24 /*#define DEBUG_INFO*/
27 #if HAVE_DEBUGLEVEL >= 1
28 #define DEBUG_TRACK_FILE_LINE
29 #define DEBUG_MEMORY_POSSIBLE
30 #define DEBUG_OBJECT_POSSIBLE
31 #define DEBUG_LOW_OVERHEAD
33 #if HAVE_DEBUGLEVEL >= 2
34 #define DEBUG_REFCOUNTS
40 #if HAVE_DEBUGLEVEL >= 3
41 /*#define DEBUG_ALLOC_INSIDE_LOCKS currently, this doesn't work */
42 #define DEBUG_ARRAY_INDICES
45 /*#define DEBUG_THREAD_NONE*/
46 /*#define DEBUG_TRACE*/
47 /*#define DEBUG_NOINLINE*/
49 /*#define UNUSUAL_NO_TAGGED_POINTERS*/
50 /*#define UNUSUAL_DISABLE_INT128_T
51 #define UNUSUAL_ARITHMETICS
52 #define UNUSUAL_UNKNOWN_ENDIAN
53 #define UNUSUAL_REFCOUNTS
54 #define UNUSUAL_NO_ASSEMBLER
55 #define UNUSUAL_NO_ASSEMBLER_GOTO
57 #define UNUSUAL_THREAD
58 #define UNUSUAL_NO_MEMALIGN
59 #define UNUSUAL_NO_ARCH_TAGGED_POINTERS
60 #define UNUSUAL_MPINT_ARRAY_INDICES
61 #define UNUSUAL_NO_POINTER_COMPRESSION
62 #define UNUSUAL_SPINLOCK
63 #define UNUSUAL_NO_DIR_HANDLES*/