]>
Commit | Line | Data |
---|---|---|
56dea35f | 1 | /* Internals of libgccjit: implementation of gcc_jit_result |
8d9254fc | 2 | Copyright (C) 2013-2020 Free Software Foundation, Inc. |
56dea35f DM |
3 | Contributed by David Malcolm <dmalcolm@redhat.com>. |
4 | ||
5 | This file is part of GCC. | |
6 | ||
7 | GCC is free software; you can redistribute it and/or modify it | |
8 | under the terms of the GNU General Public License as published by | |
9 | the Free Software Foundation; either version 3, or (at your option) | |
10 | any later version. | |
11 | ||
12 | GCC is distributed in the hope that it will be useful, but | |
13 | WITHOUT ANY WARRANTY; without even the implied warranty of | |
14 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
15 | General Public License for more details. | |
16 | ||
17 | You should have received a copy of the GNU General Public License | |
18 | along with GCC; see the file COPYING3. If not see | |
19 | <http://www.gnu.org/licenses/>. */ | |
20 | ||
21 | #ifndef JIT_RESULT_H | |
22 | #define JIT_RESULT_H | |
23 | ||
c83027f3 NB |
24 | #ifdef _WIN32 |
25 | #include <minwindef.h> | |
26 | #endif | |
27 | ||
56dea35f DM |
28 | namespace gcc { |
29 | ||
30 | namespace jit { | |
31 | ||
32 | /* The result of JIT-compilation. */ | |
eb4c16eb | 33 | class result : public log_user |
56dea35f DM |
34 | { |
35 | public: | |
c83027f3 NB |
36 | #ifdef _WIN32 |
37 | typedef HMODULE handle; | |
38 | #else | |
39 | typedef void* handle; | |
40 | #endif | |
41 | ||
42 | result(logger *logger, handle dso_handle, tempdir *tempdir_); | |
56dea35f DM |
43 | |
44 | virtual ~result(); | |
45 | ||
46 | void * | |
47 | get_code (const char *funcname); | |
48 | ||
791cfef8 DM |
49 | void * |
50 | get_global (const char *name); | |
51 | ||
56dea35f | 52 | private: |
c83027f3 | 53 | handle m_dso_handle; |
d2286af3 | 54 | tempdir *m_tempdir; |
56dea35f DM |
55 | }; |
56 | ||
57 | } // namespace gcc::jit | |
58 | ||
59 | } // namespace gcc | |
60 | ||
61 | #endif /* JIT_RESULT_H */ |