summaryrefslogtreecommitdiffstats
path: root/courgette/encoded_program.h
diff options
context:
space:
mode:
authorsra@google.com <sra@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-18 03:28:40 +0000
committersra@google.com <sra@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-18 03:28:40 +0000
commit54f1b829fe53c48b82440e7c8482e2b6ca397995 (patch)
tree5600358a8d8fac77ea4a7730fca9c4b6cbe09108 /courgette/encoded_program.h
parent4efe77c3fd39df0dc03b0d73ca0ba24c6e66ff28 (diff)
downloadchromium_src-54f1b829fe53c48b82440e7c8482e2b6ca397995.zip
chromium_src-54f1b829fe53c48b82440e7c8482e2b6ca397995.tar.gz
chromium_src-54f1b829fe53c48b82440e7c8482e2b6ca397995.tar.bz2
Code changes to get the code to compile under GCC.
Courgette still only knows how to compress Windows x86 executables. But now you can compress them on linux. BUG=none TEST=none Review URL: http://codereview.chromium.org/149597 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21042 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'courgette/encoded_program.h')
-rw-r--r--courgette/encoded_program.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/courgette/encoded_program.h b/courgette/encoded_program.h
index df1119c..25bc075 100644
--- a/courgette/encoded_program.h
+++ b/courgette/encoded_program.h
@@ -54,7 +54,18 @@ class EncodedProgram {
bool AssembleTo(SinkStream *buffer);
private:
- enum OP; // Binary assembly language operations.
+ // Binary assembly language operations.
+ enum OP {
+ ORIGIN, // ORIGIN <rva> - set address for subsequent assembly.
+ COPY, // COPY <count> <bytes> - copy bytes to output.
+ COPY1, // COPY1 <byte> - same as COPY 1 <byte>.
+ REL32, // REL32 <index> - emit rel32 encoded reference to address at
+ // address table offset <index>
+ ABS32, // ABS32 <index> - emit abs32 encoded reference to address at
+ // address table offset <index>
+ MAKE_BASE_RELOCATION_TABLE, // Emit base relocation table blocks.
+ OP_LAST
+ };
void DebuggingSummary();
void GenerateBaseRelocations(SinkStream *buffer);
@@ -80,4 +91,4 @@ class EncodedProgram {
};
} // namespace courgette
-#endif // COURGETTE_ENCODED_FORMAT_H_
+#endif // COURGETTE_ENCODED_PROGRAM_H_