]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm-project/lldb/tools/lldb-mi/MIDataTypes.h
Unbreak DRM KMS build by adding the needed compatibility field in the LinuxKPI.
[FreeBSD/FreeBSD.git] / contrib / llvm-project / lldb / tools / lldb-mi / MIDataTypes.h
1 //===-- MIDataTypes.h -------------------------------------------*- C++ -*-===//
2 //
3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4 // See https://llvm.org/LICENSE.txt for license information.
5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6 //
7 //===----------------------------------------------------------------------===//
8
9 // Overview:    Common global switches, macros, etc.
10 //
11 //              This file contains common data types required by applications
12 //              generally. If supported by the compiler, this file should be
13 //              #include'd as part of the project's PCH (precompiled header).
14
15 #pragma once
16
17 // Windows headers:
18 #ifdef _WIN32
19
20 // Debugging:
21 #ifdef _DEBUG
22 #include <crtdbg.h>
23 #endif              // _DEBUG
24
25 #endif // _WIN32
26
27 // Common definitions:
28
29 // Function return status
30 namespace MIstatus {
31 const bool success = true;
32 const bool failure = false;
33 }
34
35 // Use to avoid "unused parameter" compiler warnings:
36 #define MIunused(x) (void)x;
37
38 // Portability issues
39 #ifdef _WIN64
40 typedef unsigned __int64 size_t;
41 typedef __int64 MIint;
42 typedef unsigned __int64 MIuint;
43 #else
44 #ifdef _WIN32
45 typedef unsigned int size_t;
46 typedef int MIint;
47 typedef unsigned int MIuint;
48 #else
49 typedef int MIint;
50 typedef unsigned int MIuint;
51
52 #define MAX_PATH 4096
53 #endif // _WIN32
54 #endif // _WIN64
55
56 // Common types:
57
58 // Fundamentals:
59 typedef long long MIint64;           // 64bit signed integer.
60 typedef unsigned long long MIuint64; // 64bit unsigned integer.