Fix library segment-address for 64bit values
[deliverable/binutils-gdb.git] / gdb / dcache.h
CommitLineData
c906108c
SS
1/* Declarations for caching. Typically used by remote back ends for
2 caching remote memory.
3
11bc5fe4 4 Copyright (C) 1992-2020 Free Software Foundation, Inc.
c906108c 5
c5aa993b 6 This file is part of GDB.
c906108c 7
c5aa993b
JM
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
a9762ec7 10 the Free Software Foundation; either version 3 of the License, or
c5aa993b 11 (at your option) any later version.
c906108c 12
c5aa993b
JM
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.
c906108c 17
c5aa993b 18 You should have received a copy of the GNU General Public License
a9762ec7 19 along with this program. If not, see <http://www.gnu.org/licenses/>. */
c906108c
SS
20
21#ifndef DCACHE_H
22#define DCACHE_H
23
4de283e4 24#include "target.h" /* for enum target_xfer_status */
cb039ba4 25
c906108c
SS
26typedef struct dcache_struct DCACHE;
27
0963b4bd 28/* Invalidate DCACHE. */
4930751a 29void dcache_invalidate (DCACHE *dcache);
c906108c 30
0963b4bd 31/* Initialize DCACHE. */
4930751a 32DCACHE *dcache_init (void);
c906108c 33
0963b4bd 34/* Free a DCACHE. */
e99586d5
C
35void dcache_free (DCACHE *);
36
35632941
TT
37/* A deletion adapter that calls dcache_free. */
38struct dcache_deleter
39{
40 void operator() (DCACHE *d) const
41 {
42 dcache_free (d);
43 }
44};
45
0f26cec1
PA
46enum target_xfer_status
47 dcache_read_memory_partial (struct target_ops *ops, DCACHE *dcache,
48 CORE_ADDR memaddr, gdb_byte *myaddr,
49 ULONGEST len, ULONGEST *xfered_len);
50
51void dcache_update (DCACHE *dcache, enum target_xfer_status status,
52 CORE_ADDR memaddr, const gdb_byte *myaddr,
53 ULONGEST len);
4e5d721f 54
c906108c 55#endif /* DCACHE_H */
This page took 1.321193 seconds and 4 git commands to generate.