Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(406)

Unified Diff: src/trusted/validator_ragel/validator.h

Issue 1234393005: A mechanism to identify/forbid/"rewrite" non-temporal instructions (and other) (Closed) Base URL: https://chromium.googlesource.com/native_client/src/native_client.git@master
Patch Set: Fixing nits Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: src/trusted/validator_ragel/validator.h
diff --git a/src/trusted/validator_ragel/validator.h b/src/trusted/validator_ragel/validator.h
index 633195e3641150820f5167810867339ad3ef7c4c..30029a68abe4ce7c1e36fc88709f8dbba07d9ce0 100644
--- a/src/trusted/validator_ragel/validator.h
+++ b/src/trusted/validator_ragel/validator.h
@@ -64,7 +64,7 @@ enum validation_callback_info {
/* Was restricted_register from previous instruction used in this one? */
RESTRICTED_REGISTER_USED = 0x00002000,
/* Mask to select all validation errors. */
- VALIDATION_ERRORS_MASK = 0x01ffc000,
+ VALIDATION_ERRORS_MASK = 0x05ffc000,
/* Unrecognized instruction: fatal error, processing stops here. */
UNRECOGNIZED_INSTRUCTION = 0x00004000,
/* Direct jump to unaligned address outside of given region. */
@@ -95,6 +95,8 @@ enum validation_callback_info {
SP_MODIFIED = 0x01000000,
/* Bad call alignment: "call" must end at the end of the bundle. */
BAD_CALL_ALIGNMENT = 0x02000000,
+ /* The instruction should be either forbidden or rewritten. */
+ UNSUPPORTED_INSTRUCTION = 0x04000000,
/* Instruction is modifiable by nacl_dyncode_modify. */
MODIFIABLE_INSTRUCTION = 0x08000000,
/* Special instruction. Uses different, non-standard validation rules. */

Powered by Google App Engine
This is Rietveld 408576698