diff options
author | Mike Frysinger <vapier@gentoo.org> | 2021-04-24 14:40:43 -0400 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2021-05-14 21:16:40 -0400 |
commit | 2fbe9507bfba58a6a000d231fe735bad1f245b55 (patch) | |
tree | 8b4709489be830480eae1d98a37b2df8af5d60d1 /sim/common | |
parent | 00330cd18a4ba83beabad4cb9f4215170828cd29 (diff) | |
download | gdb-2fbe9507bfba58a6a000d231fe735bad1f245b55.zip gdb-2fbe9507bfba58a6a000d231fe735bad1f245b55.tar.gz gdb-2fbe9507bfba58a6a000d231fe735bad1f245b55.tar.bz2 |
sim: callback: convert FS interfaces to 64-bit
Rather than rely on off_t being the right size between the host &
target, have the interface always be 64-bit. We can figure out if
we need to truncate when actually outputting it to the right target.
Diffstat (limited to 'sim/common')
-rw-r--r-- | sim/common/ChangeLog | 8 | ||||
-rw-r--r-- | sim/common/callback.c | 10 | ||||
-rw-r--r-- | sim/common/sim-io.c | 4 | ||||
-rw-r--r-- | sim/common/sim-io.h | 2 |
4 files changed, 16 insertions, 8 deletions
diff --git a/sim/common/ChangeLog b/sim/common/ChangeLog index 879aac9..b360ebd 100644 --- a/sim/common/ChangeLog +++ b/sim/common/ChangeLog @@ -1,5 +1,13 @@ 2021-05-14 Mike Frysinger <vapier@gentoo.org> + * callback.c (os_lseek): Change return and 3rd arg to int64_t. + (os_ftruncate): Change 3rd arg to int64_t. + (os_truncate): Change 3rd arg to int64_t. + * sim-io.c (sim_io_lseek): Change return and 3rd arg to int64_t. + * sim-io.h (sim_io_lseek): Likewise. + +2021-05-14 Mike Frysinger <vapier@gentoo.org> + * callback.c (os_time): Change return to int64_t. Delete 2nd arg. (os_fstat): Delete 2nd arg to time callback. * sim-io.c (sim_io_time): Change return to int64_t. Delete 2nd arg diff --git a/sim/common/callback.c b/sim/common/callback.c index fb5e864..24ea470 100644 --- a/sim/common/callback.c +++ b/sim/common/callback.c @@ -205,10 +205,10 @@ os_isatty (host_callback *p, int fd) return result; } -static int -os_lseek (host_callback *p, int fd, long off, int way) +static int64_t +os_lseek (host_callback *p, int fd, int64_t off, int way) { - int result; + int64_t result; result = fdbad (p, fd); if (result) @@ -519,7 +519,7 @@ os_lstat (host_callback *p, const char *file, struct stat *buf) } static int -os_ftruncate (host_callback *p, int fd, long len) +os_ftruncate (host_callback *p, int fd, int64_t len) { int result; @@ -542,7 +542,7 @@ os_ftruncate (host_callback *p, int fd, long len) } static int -os_truncate (host_callback *p, const char *file, long len) +os_truncate (host_callback *p, const char *file, int64_t len) { #ifdef HAVE_TRUNCATE int result; diff --git a/sim/common/sim-io.c b/sim/common/sim-io.c index e5da7f1..edef26e 100644 --- a/sim/common/sim-io.c +++ b/sim/common/sim-io.c @@ -211,10 +211,10 @@ sim_io_open (SIM_DESC sd, } -int +int64_t sim_io_lseek (SIM_DESC sd, int fd, - long off, + int64_t off, int way) { return STATE_CALLBACK (sd)->lseek (STATE_CALLBACK (sd), fd, off, way); diff --git a/sim/common/sim-io.h b/sim/common/sim-io.h index a091fd0..a78e8f5 100644 --- a/sim/common/sim-io.h +++ b/sim/common/sim-io.h @@ -53,7 +53,7 @@ int sim_io_read (SIM_DESC sd, int, char *, int); int sim_io_open (SIM_DESC sd, const char *, int); -int sim_io_lseek (SIM_DESC sd, int, long, int); +int64_t sim_io_lseek (SIM_DESC sd, int, int64_t, int); int sim_io_isatty (SIM_DESC sd, int); |