dcache.h revision 1.6
1/* Declarations for caching. Typically used by remote back ends for 2 caching remote memory. 3 4 Copyright (C) 1992-2016 Free Software Foundation, Inc. 5 6 This file is part of GDB. 7 8 This program is free software; you can redistribute it and/or modify 9 it under the terms of the GNU General Public License as published by 10 the Free Software Foundation; either version 3 of the License, or 11 (at your option) any later version. 12 13 This program is distributed in the hope that it will be useful, 14 but WITHOUT ANY WARRANTY; without even the implied warranty of 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License 19 along with this program. If not, see <http://www.gnu.org/licenses/>. */ 20 21#ifndef DCACHE_H 22#define DCACHE_H 23 24#include "target.h" /* for enum target_xfer_status */ 25 26typedef struct dcache_struct DCACHE; 27 28/* Invalidate DCACHE. */ 29void dcache_invalidate (DCACHE *dcache); 30 31/* Initialize DCACHE. */ 32DCACHE *dcache_init (void); 33 34/* Free a DCACHE. */ 35void dcache_free (DCACHE *); 36 37enum target_xfer_status 38 dcache_read_memory_partial (struct target_ops *ops, DCACHE *dcache, 39 CORE_ADDR memaddr, gdb_byte *myaddr, 40 ULONGEST len, ULONGEST *xfered_len); 41 42void dcache_update (DCACHE *dcache, enum target_xfer_status status, 43 CORE_ADDR memaddr, const gdb_byte *myaddr, 44 ULONGEST len); 45 46#endif /* DCACHE_H */ 47