Upstream version 11.39.266.0
[platform/framework/web/crosswalk.git] / src / native_client / src / trusted / validator / x86 / decoder / generator / nacl_regsgen.h
1 /*
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 be
4  * found in the LICENSE file.
5  */
6
7 #ifndef NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_DECODER_GENERATOR_NACL_REGSREG_H_
8 #define NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_DECODER_GENERATOR_NACL_REGSREG_H_
9
10 /*
11  * Generates file nc_subregs.h, which contains the the following:
12  *
13  * static int NaClGpSubregIndex[NaClOpKindEnumSize];
14  *
15  *    Contains mapping from nacl operand kind, to the
16  *    the corresponding general purpose 64 bit register index
17  *    that it is a subpart of.
18  *    That is, the index into NaClRegTable64, or NACL_REGISTER_UNDEFINED
19  *    if not a general purpose register.
20  *
21  * static int NaClGpReg64Index[NaClOpKindEnumSize];
22  *
23  *    Contains the mapping from nacl operand kind, to the
24  *    corresponding general purpose 64 bit register index.
25  *    That is, the index into NaClRegTable64, or NACL_REGISTERED_UNDEFIND
26  *    if not a general purpose 64 bit register.
27  */
28
29 struct Gio;
30
31 /* Build the arrays NaClGpSubregIndex and NaClGpReg64Index into
32  * the file defined by the argument, for the 32-bit architecture
33  */
34 void NaClPrintGpRegisterIndexes_32(struct Gio* f);
35
36 /* Build the arrays NaClGpSubregIndex and NaClGpReg64Index into
37  * the file defined by the argument, for the 64-bit architecture
38  */
39 void NaClPrintGpRegisterIndexes_64(struct Gio* f);
40
41
42 #endif  /* NATIVE_CLIENT_SRC_TRUSTED_VALIDATOR_X86_DECODER_GENERATOR_NACL_REGSREG_H_ */