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

Unified Diff: src/trusted/validator/x86/ncval_reg_sfi/nc_postconds.c

Issue 625923004: Delete old x86 validator. (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client
Patch Set: rebase master Created 6 years, 2 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/x86/ncval_reg_sfi/nc_postconds.c
diff --git a/src/trusted/validator/x86/ncval_reg_sfi/nc_postconds.c b/src/trusted/validator/x86/ncval_reg_sfi/nc_postconds.c
deleted file mode 100644
index a89efffd8ca63c04978ea2b1df6ec5e757263c21..0000000000000000000000000000000000000000
--- a/src/trusted/validator/x86/ncval_reg_sfi/nc_postconds.c
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (c) 2012 The Native Client Authors. All rights reserved.
- * Use of this source code is governed by a BSD-style license that can be
- * found in the LICENSE file.
- */
-
-#include "native_client/src/trusted/validator/x86/ncval_reg_sfi/nc_postconds.h"
-
-#include "native_client/src/include/portability_io.h"
-#include "native_client/src/shared/platform/nacl_log.h"
-#include "native_client/src/trusted/validator/x86/decoder/ncop_exps.h"
-#include "native_client/src/trusted/validator/x86/decoder/nc_inst_state.h"
-#include "native_client/src/trusted/validator/x86/decoder/nc_inst_trans.h"
-#include "native_client/src/trusted/validator/x86/ncval_reg_sfi/ncvalidate_iter.h"
-#include "native_client/src/trusted/validator/x86/ncval_reg_sfi/ncvalidate_iter_internal.h"
-#include "native_client/src/trusted/validator/x86/ncval_reg_sfi/ncvalidate_utils.h"
-#include "native_client/src/trusted/validator/x86/ncval_reg_sfi/nc_memory_protect.h"
-
-/* To turn on debugging of instruction decoding, change value of
- * DEBUGGING to 1.
- */
-#define DEBUGGING 0
-
-#include "native_client/src/shared/utils/debugging.h"
-
-#include "native_client/src/trusted/validator/x86/decoder/ncop_exps_inl.c"
-
-/* Maximum character buffer size to use for generating messages. */
-static const size_t kMaxBufferSize = 1024;
-
-#ifdef NCVAL_TESTING
-void NaClAddAssignsRegisterWithZeroExtendsPostconds(
- struct NaClValidatorState* state) {
- uint32_t i;
- NaClExpVector* vector = state->cur_inst_vector;
-
- DEBUG(NaClValidatorInstMessage(
- LOG_INFO, state, state->cur_inst_state,
- "-> Checking ZeroExtends postconditions...\n"));
-
- /* Look for assignments to 32-bit registers for instructions that
- * zero extend.
- */
- for (i = 0; i < vector->number_expr_nodes; ++i) {
- NaClExp* node = &vector->node[i];
- NaClOpKind node_reg;
- if (ExprRegister != node->kind) continue;
- if (!NaClHasBit(node->flags, NACL_EFLAG(ExprSet))) continue;
- if (!NaClHasBit(node->flags, NACL_EFLAG(ExprSize32))) continue;
- node_reg = NaClGetExpRegisterInline(node);
- if (node_reg == RegUnknown) continue;
- if (NaClAssignsRegisterWithZeroExtends32(state, 0, node_reg)) {
- char* buffer;
- size_t buffer_size;
- char reg_name[kMaxBufferSize];
- NaClOpRegName(node_reg, reg_name, kMaxBufferSize);
- NaClConditionAppend(state->postcond, &buffer, &buffer_size);
- SNPRINTF(buffer, buffer_size, "ZeroExtends(%s)", reg_name);
- }
- }
- DEBUG(NaClValidatorMessage(
- LOG_INFO, state, "<- Finished ZeroExtends postconditions...\n"));
-}
-
-void NaClAddLeaSafeAddressPostconds(
- struct NaClValidatorState* state) {
- uint32_t i;
- NaClExpVector* vector = state->cur_inst_vector;
- DEBUG(NaClValidatorInstMessage(
- LOG_INFO, state, state->cur_inst_state,
- "Checking SafeAddress postconditions...\n"));
-
- /* Look for assignments to registers. */
- for (i = 0; i < vector->number_expr_nodes; ++i) {
- NaClOpKind reg;
- NaClExp* node = &vector->node[i];
- if (ExprRegister != node->kind) continue;
- if (!NaClHasBit(node->flags, NACL_EFLAG(ExprSet))) continue;
- if (!NaClHasBit(node->flags, NACL_EFLAG(ExprSize64))) continue;
- reg = NaClGetExpRegisterInline(node);
- if (RegUnknown == reg) continue;
- if ((reg == RegRSP) || (reg == RegRBP)) {
- /* Note: Do not need to check safe addresses computed
- * by "LEA Rsp/Rbp ...". Currently, these two registers
- * are already checked.. See NaClCheckRspAssignments and
- * NaClCheckRbpAssignments in nc_protect_base.c for more
- * information on how such LEA instructions are checked.
- */
- if (InstLea != NaClInstStateInst(state->cur_inst_state)->name) {
- NaClAcceptLeaWithMoveLea32To64(state, reg);
- }
- } else if (NaClAcceptLeaSafeAddress(state)) {
- char* buffer;
- size_t buffer_size;
- char reg_name[kMaxBufferSize];
- NaClOpRegName(reg, reg_name, kMaxBufferSize);
- NaClConditionAppend(state->postcond, &buffer, &buffer_size);
- SNPRINTF(buffer, buffer_size, "SafeAddress(%s)", reg_name);
- }
- }
- DEBUG(NaClValidatorMessage(
- LOG_INFO, state, "Finished SafeAddress postconditions...\n"));
-}
-
-#endif
« no previous file with comments | « src/trusted/validator/x86/ncval_reg_sfi/nc_postconds.h ('k') | src/trusted/validator/x86/ncval_reg_sfi/nc_protect_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698