Index: src/trusted/validator/x86/ncval_reg_sfi/nc_jumps.h |
diff --git a/src/trusted/validator/x86/ncval_reg_sfi/nc_jumps.h b/src/trusted/validator/x86/ncval_reg_sfi/nc_jumps.h |
deleted file mode 100644 |
index 0fb51f8988acc897f9105a39f0e9dc83a37fcd4f..0000000000000000000000000000000000000000 |
--- a/src/trusted/validator/x86/ncval_reg_sfi/nc_jumps.h |
+++ /dev/null |
@@ -1,109 +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. |
- */ |
- |
-#ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVAL_REG_SFI_NC_JUMPS_H__ |
-#define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVAL_REG_SFI_NC_JUMPS_H__ |
- |
-/* |
- * nc_jumps.h - Implements set of possible jump points, and set of |
- * actual jump points, and the verification that the possible |
- * (explicit) jumps only apply to valid actual jumps. |
- */ |
- |
-#include <stdio.h> |
- |
-#include "native_client/src/shared/utils/types.h" |
-#include "native_client/src/trusted/validator/x86/ncval_reg_sfi/address_sets.h" |
- |
-/* The model of a validator state. */ |
-struct NaClValidatorState; |
- |
-/* The model of an iterator through instructions in a code segment. */ |
-struct NaClInstIter; |
- |
-/* The model of a parsed instruction. */ |
-struct NaClInstState; |
- |
-/* Holds information collected about each instruction, and the |
- * targets of possible jumps. Then, after the code has been processed, |
- * this information is processed to see if there are any invalid jumps. |
- */ |
-typedef struct NaClJumpSets { |
- /* Holds the set of possible target addresses that can be the result of |
- * a jump. |
- */ |
- NaClAddressSet actual_targets; |
- /* Holds the set of valid instruction entry points (whenever a pattern of |
- * multiple instructions are used, the sequence will be treated as atomic, |
- * only having the first address in the set). |
- */ |
- NaClAddressSet possible_targets; |
- /* Removed targets, due to instruction being in the middle of an atomic |
- * sequence. Note: This is needed so that we can allow validators to |
- * run in any order. If we didn't do this, then we are very timing dependent |
- * on calls to NaClMarkInstructionJumpIllegal, which must appear after |
- * the call to NaClJumpValidator. |
- */ |
- NaClAddressSet removed_targets; |
- /* Holds the (array) size of each set above. */ |
- size_t set_array_size; |
-} NaClJumpSets; |
- |
-/* When true, changes the behaviour of NcAddJump to use mask 0xFF for |
- * indirect jumps (which is a nop). This allows performance tests for |
- * compiled libraries without having to hand tweak the source code. |
- */ |
-extern Bool NACL_FLAGS_identity_mask; |
- |
-/* Initializes jump sets to track the set of possible and actual (explicit) |
- * address. Returns true if successful. |
- */ |
-Bool NaClJumpValidatorInitialize(struct NaClValidatorState* state); |
- |
-/* Collects information on instruction addresses, and where explicit jumps |
- * go to. |
- */ |
-void NaClJumpValidator(struct NaClValidatorState* state); |
- |
-/* Don't record anything but the instruction address, in order to validate |
- * basic block alignment at the end of validation. |
- */ |
-void NaClJumpValidatorRememberIpOnly(struct NaClValidatorState* state); |
- |
-/* Compares the collected actual jumps and the set of possible jump points, |
- * and reports any descrepancies that don't follow NACL rules. |
- */ |
-void NaClJumpValidatorSummarize(struct NaClValidatorState* state); |
- |
-/* Cleans up memory used by the jump validator. */ |
-void NaClJumpValidatorCleanUp(struct NaClValidatorState* state); |
- |
-/* Record that the given instruction can't be a possible target of a jump, |
- * because it appears as the non-first |
- * instruciton in a NACL pattern. This should be called on all such non-first |
- * instructions (for NACL patterns) so that the instuction sequence is |
- * checked to be atomic. |
- */ |
-void NaClMarkInstructionJumpIllegal(struct NaClValidatorState* state, |
- struct NaClInstState* inst); |
- |
-/* Records that the given sequence of distance instructions (starting with the |
- * current instruction, and proceeding backwards) can't be a possible target |
- * of a jump, because they appear as the non-first instruction of a NACL |
- * pattern. |
- */ |
-void NaClMarkInstructionsJumpRangeIllegal(struct NaClValidatorState* vstate, |
- int distance); |
- |
-/* Same as NaClMarkInstructionJumpIllegal, except that it marks the |
- * n-th instruction back from the current instruction. |
- */ |
-void NaClMarkInstructionJumpIllegalLookback( |
- struct NaClInstIter* iter, |
- struct NaClValidatorState* state, |
- size_t n); |
- |
-#endif /* NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NCVAL_REG_SFI_NC_JUMPS_H__ */ |