diff options
author | Richard Guenther <rguenther@suse.de> | 2009-10-01 15:32:01 +0000 |
---|---|---|
committer | Richard Guenther <rguenther@suse.de> | 2009-10-01 15:32:01 +0000 |
commit | 39bf68892ddfebeff7e7685e56315783de40c52e (patch) | |
tree | 6dab98fa9f1b50d99db611b7c4cb7bcd646cf872 | |
parent | 9c3274ee04040a4fd82bfab6f2c2f22b5786527c (diff) |
2009-10-01 Richard Guenther <rguenther@suse.de>
* lto.c (lto_read_section_data): Use plain lseek/read.
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/lto@152376 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/lto/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/lto/lto.c | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog index cee91d08f28..07901dd9b34 100644 --- a/gcc/lto/ChangeLog +++ b/gcc/lto/ChangeLog @@ -1,5 +1,9 @@ 2009-10-01 Richard Guenther <rguenther@suse.de> + * lto.c (lto_read_section_data): Use plain lseek/read. + +2009-10-01 Richard Guenther <rguenther@suse.de> + * lto.c (LTO_MMAP_IO): Define if we can mmap files and use sysconf to query the system page size. (lto_file_read): Implement fallback using stdio. diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c index 999965f79fa..312cc979440 100644 --- a/gcc/lto/lto.c +++ b/gcc/lto/lto.c @@ -357,8 +357,6 @@ lto_read_section_data (struct lto_file_decl_data *file_data, intptr_t computed_len; intptr_t computed_offset; intptr_t diff; -#else - FILE *file; #endif if (file_data->fd == -1) @@ -394,10 +392,8 @@ lto_read_section_data (struct lto_file_decl_data *file_data, close (file_data->fd); return NULL; } - file = fdopen (file_data->fd, "r"); - if (file == NULL - || fseek (file, offset, SEEK_SET) != 0 - || fread (result, 1, len, file) != len) + if (lseek (file_data->fd, offset, SEEK_SET) != offset + || read (file_data->fd, result, len) != (ssize_t) len) { free (result); close (file_data->fd); |