summaryrefslogtreecommitdiffstats
path: root/src/oat_writer.h
diff options
context:
space:
mode:
authorBrian Carlstrom <bdc@google.com>2011-12-07 22:05:07 -0800
committerBrian Carlstrom <bdc@google.com>2012-01-04 00:23:07 -0800
commit89521898b56f2ebc3fb68acfb6bc6dde9b6f5c38 (patch)
tree6811878efd4490f78ae099ec7e14c1a1ffe4d868 /src/oat_writer.h
parentc74a6971fb9a65dbee337d51e7981a37be208a00 (diff)
downloadart-89521898b56f2ebc3fb68acfb6bc6dde9b6f5c38.zip
art-89521898b56f2ebc3fb68acfb6bc6dde9b6f5c38.tar.gz
art-89521898b56f2ebc3fb68acfb6bc6dde9b6f5c38.tar.bz2
Merge art-cache dex files into oat files
Change-Id: I5a327a4e0b678bd9dabb12de4e21ef05e3fefd0b
Diffstat (limited to 'src/oat_writer.h')
-rw-r--r--src/oat_writer.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/oat_writer.h b/src/oat_writer.h
index 97cdb50..7d454a7 100644
--- a/src/oat_writer.h
+++ b/src/oat_writer.h
@@ -20,11 +20,16 @@ namespace art {
// OatHeader fixed length with count of D OatDexFiles
//
-// OatDexFile[0] each fixed length with offset to variable sized OatClasses
+// OatDexFile[0] one variable sized OatDexFile with offsets to Dex and OatClasses
// OatDexFile[1]
// ...
// OatDexFile[D]
//
+// Dex[0] one variable sized DexFile for each OatDexFile.
+// Dex[1] these are literal copies of the input .dex files.
+// ...
+// Dex[D]
+//
// OatClasses[0] one variable sized OatClasses for each OatDexFile
// OatClasses[1] contains DexFile::NumClassDefs offsets to OatMethods for each ClassDef
// ...
@@ -60,6 +65,7 @@ class OatWriter {
size_t InitOatHeader();
size_t InitOatDexFiles(size_t offset);
+ size_t InitDexFiles(size_t offset);
size_t InitOatClasses(size_t offset);
size_t InitOatMethods(size_t offset);
size_t InitOatCode(size_t offset);
@@ -100,6 +106,7 @@ class OatWriter {
uint32_t dex_file_location_size_;
const uint8_t* dex_file_location_data_;
uint32_t dex_file_checksum_;
+ uint32_t dex_file_offset_;
uint32_t classes_offset_;
private: