1e5ceadffSPhilippe Mathieu-Daudé /* 2e5ceadffSPhilippe Mathieu-Daudé * Internal structs that QEMU exports to TCG 3e5ceadffSPhilippe Mathieu-Daudé * 4e5ceadffSPhilippe Mathieu-Daudé * Copyright (c) 2003 Fabrice Bellard 5e5ceadffSPhilippe Mathieu-Daudé * 6e5ceadffSPhilippe Mathieu-Daudé * This library is free software; you can redistribute it and/or 7e5ceadffSPhilippe Mathieu-Daudé * modify it under the terms of the GNU Lesser General Public 8e5ceadffSPhilippe Mathieu-Daudé * License as published by the Free Software Foundation; either 9e5ceadffSPhilippe Mathieu-Daudé * version 2.1 of the License, or (at your option) any later version. 10e5ceadffSPhilippe Mathieu-Daudé * 11e5ceadffSPhilippe Mathieu-Daudé * This library is distributed in the hope that it will be useful, 12e5ceadffSPhilippe Mathieu-Daudé * but WITHOUT ANY WARRANTY; without even the implied warranty of 13e5ceadffSPhilippe Mathieu-Daudé * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14e5ceadffSPhilippe Mathieu-Daudé * Lesser General Public License for more details. 15e5ceadffSPhilippe Mathieu-Daudé * 16e5ceadffSPhilippe Mathieu-Daudé * You should have received a copy of the GNU Lesser General Public 17e5ceadffSPhilippe Mathieu-Daudé * License along with this library; if not, see <http://www.gnu.org/licenses/>. 18e5ceadffSPhilippe Mathieu-Daudé */ 19e5ceadffSPhilippe Mathieu-Daudé 20e5ceadffSPhilippe Mathieu-Daudé #ifndef QEMU_TB_CONTEXT_H 21e5ceadffSPhilippe Mathieu-Daudé #define QEMU_TB_CONTEXT_H 22e5ceadffSPhilippe Mathieu-Daudé 23e5ceadffSPhilippe Mathieu-Daudé #include "qemu/thread.h" 24e5ceadffSPhilippe Mathieu-Daudé #include "qemu/qht.h" 25e5ceadffSPhilippe Mathieu-Daudé 26e5ceadffSPhilippe Mathieu-Daudé #define CODE_GEN_HTABLE_BITS 15 27e5ceadffSPhilippe Mathieu-Daudé #define CODE_GEN_HTABLE_SIZE (1 << CODE_GEN_HTABLE_BITS) 28e5ceadffSPhilippe Mathieu-Daudé 29e5ceadffSPhilippe Mathieu-Daudé typedef struct TBContext TBContext; 30e5ceadffSPhilippe Mathieu-Daudé 31e5ceadffSPhilippe Mathieu-Daudé struct TBContext { 32e5ceadffSPhilippe Mathieu-Daudé 33e5ceadffSPhilippe Mathieu-Daudé struct qht htable; 34e5ceadffSPhilippe Mathieu-Daudé 35e5ceadffSPhilippe Mathieu-Daudé /* statistics */ 36e5ceadffSPhilippe Mathieu-Daudé unsigned tb_flush_count; 37*a4390647SRichard Henderson unsigned tb_phys_invalidate_count; 38e5ceadffSPhilippe Mathieu-Daudé }; 39e5ceadffSPhilippe Mathieu-Daudé 40e5ceadffSPhilippe Mathieu-Daudé extern TBContext tb_ctx; 41e5ceadffSPhilippe Mathieu-Daudé 42e5ceadffSPhilippe Mathieu-Daudé #endif 43