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

Side by Side Diff: src/trusted/validator_x86/nc_inst_iter.h

Issue 6883091: Start unit testing for functions in nc_inst_state.c (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: '' Created 9 years, 8 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright 2009 The Native Client Authors. All rights reserved. 2 * Copyright (c) 2011 The Native Client Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can 3 * Use of this source code is governed by a BSD-style license that can be
4 * be found in the LICENSE file. 4 * found in the LICENSE file.
5 */ 5 */
6 6
7 /* 7 /*
8 * Defines an instruction (decoder) iterator that processes code segments. 8 * Defines an instruction (decoder) iterator that processes code segments.
9 * 9 *
10 * The typical use is of the form: 10 * The typical use is of the form:
11 * 11 *
12 * NaClSegment segment; 12 * NaClSegment segment;
13 * NaClInstIter* iter; 13 * NaClInstIter* iter;
14 * ... 14 * ...
15 * for (iter = NaClInstIterCreate(&segment); NaClInstIterHasNext(iter); 15 * for (iter = NaClInstIterCreate(&segment); NaClInstIterHasNext(iter);
16 * NaClInstIterAdvance(iter)) { 16 * NaClInstIterAdvance(iter)) {
17 * NaClInstState* state = NaClInstIterGetState(iter); 17 * NaClInstState* state = NaClInstIterGetState(iter);
18 * ... 18 * ...
19 * } 19 * }
20 * NaClInstIterDestroy(iter); 20 * NaClInstIterDestroy(iter);
21 */ 21 */
22 22
23 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NC_INST_ITER_h_ 23 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NC_INST_ITER_h_
24 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NC_INST_ITER_h_ 24 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NC_INST_ITER_h_
25 25
26 #include "native_client/src/trusted/validator_x86/ncopcode_desc.h" 26 #include "native_client/src/trusted/validator_x86/ncopcode_desc.h"
27 #include "native_client/src/shared/utils/types.h" 27 #include "native_client/src/shared/utils/types.h"
28 28
29 EXTERN_C_BEGIN
30
29 /* Defines a code segment in the elf file. */ 31 /* Defines a code segment in the elf file. */
30 struct NaClSegment; 32 struct NaClSegment;
31 33
32 /* Defines the internal state associated with a parsed instruction.*/ 34 /* Defines the internal state associated with a parsed instruction.*/
33 struct NaClInstState; 35 struct NaClInstState;
34 36
35 /* Defines the structure of an instruction iterator, which walks 37 /* Defines the structure of an instruction iterator, which walks
36 * the code segment, one instruction at a time. 38 * the code segment, one instruction at a time.
37 */ 39 */
38 typedef struct NaClInstIter NaClInstIter; 40 typedef struct NaClInstIter NaClInstIter;
(...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 NaClInstIter* iter, size_t distance); 79 NaClInstIter* iter, size_t distance);
78 80
79 /* Advance the iterator past the current instruction. */ 81 /* Advance the iterator past the current instruction. */
80 void NaClInstIterAdvance(NaClInstIter* iter); 82 void NaClInstIterAdvance(NaClInstIter* iter);
81 83
82 /* Returns the memory address of the beginning of the currently 84 /* Returns the memory address of the beginning of the currently
83 * matched instruction. 85 * matched instruction.
84 */ 86 */
85 uint8_t* NaClInstIterGetInstMemory(NaClInstIter* iter); 87 uint8_t* NaClInstIterGetInstMemory(NaClInstIter* iter);
86 88
89 EXTERN_C_END
90
87 #endif /* NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NC_INST_ITER_h_ */ 91 #endif /* NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_NC_INST_ITER_h_ */
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698