diff options
author | sra@google.com <sra@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-18 03:28:40 +0000 |
---|---|---|
committer | sra@google.com <sra@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-07-18 03:28:40 +0000 |
commit | 54f1b829fe53c48b82440e7c8482e2b6ca397995 (patch) | |
tree | 5600358a8d8fac77ea4a7730fca9c4b6cbe09108 /courgette/encoded_program.h | |
parent | 4efe77c3fd39df0dc03b0d73ca0ba24c6e66ff28 (diff) | |
download | chromium_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.h | 15 |
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_ |