Index: src/trusted/validator_ragel/decoder_x86_32.rl |
=================================================================== |
--- src/trusted/validator_ragel/decoder_x86_32.rl (revision 10976) |
+++ src/trusted/validator_ragel/decoder_x86_32.rl (working copy) |
@@ -20,7 +20,7 @@ |
#include <string.h> |
#include "native_client/src/shared/utils/types.h" |
-#include "native_client/src/trusted/validator_ragel/unreviewed/decoder_internal.h" |
+#include "native_client/src/trusted/validator_ragel/decoder_internal.h" |
/* |
* These prefixes are not useful in IA32 mode, but they will "cleaned up" by |
@@ -86,6 +86,10 @@ |
main := decoder; |
}%% |
+/* |
+ * The "write data" statement causes Ragel to emit the constant static data |
+ * needed by the ragel machine. |
+ */ |
%% write data; |
int DecodeChunkIA32(const uint8_t *data, size_t size, |
@@ -120,7 +124,15 @@ |
instruction.prefix.rex_r_spurious = FALSE; |
instruction.prefix.rex_w_spurious = FALSE; |
+ /* |
+ * The "write init" statement causes Ragel to emit initialization code. |
+ * This should be executed once before the ragel machine is started. |
+ */ |
%% write init; |
+ /* |
+ * The "write exec" statement causes Ragel to emit the ragel machine's |
+ * execution code. |
+ */ |
%% write exec; |
error_detected: |