aboutsummaryrefslogtreecommitdiff
path: root/gold/output.h
diff options
context:
space:
mode:
authorIan Lance Taylor <iant@google.com>2007-12-04 23:42:28 +0000
committerIan Lance Taylor <iant@google.com>2007-12-04 23:42:28 +0000
commitc420411fe81ad583b2154fd9338fd0076761d99d (patch)
treeeb2c820750d18834ce12a96361b56bf1c2f43882 /gold/output.h
parent6ccb916229b6180c23485cc27d06acd1715efbdd (diff)
downloadgdb-c420411fe81ad583b2154fd9338fd0076761d99d.zip
gdb-c420411fe81ad583b2154fd9338fd0076761d99d.tar.gz
gdb-c420411fe81ad583b2154fd9338fd0076761d99d.tar.bz2
From Craig Silverstein: Support irregular output files.
Diffstat (limited to 'gold/output.h')
-rw-r--r--gold/output.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/gold/output.h b/gold/output.h
index fafd62b..fe42112 100644
--- a/gold/output.h
+++ b/gold/output.h
@@ -2117,7 +2117,8 @@ class Output_file
void
resize(off_t file_size);
- // Close the output file and make sure there are no error.
+ // Close the output file (flushing all buffered data) and make sure
+ // there are no errors.
void
close();
@@ -2167,10 +2168,15 @@ class Output_file
{ }
private:
- // Map the file into memory.
+ // Map the file into memory and return a pointer to the map.
void
map();
+ // Unmap the file from memory (and flush to disk buffers).
+ void
+ unmap();
+
+
// General options.
const General_options& options_;
// Target.
@@ -2183,6 +2189,8 @@ class Output_file
off_t file_size_;
// Base of file mapped into memory.
unsigned char* base_;
+ // True iff base_ points to a memory buffer rather than an output file.
+ bool map_is_anonymous_;
};
} // End namespace gold.