| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. | 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. |
| 3 * Use of this source code is governed by a BSD-style license that can be | 3 * Use of this source code is governed by a BSD-style license that can be |
| 4 * found in the LICENSE file. | 4 * found in the LICENSE file. |
| 5 */ | 5 */ |
| 6 | 6 |
| 7 #include "native_client/src/shared/platform/nacl_log.h" | 7 #include "native_client/src/shared/platform/nacl_log.h" |
| 8 #include "native_client/src/trusted/validator/ncvalidate.h" | 8 #include "native_client/src/trusted/validator/ncvalidate.h" |
| 9 | 9 |
| 10 | 10 |
| 11 /* The function is not static to avoid compiler error on platforms where it is | 11 /* The function is not static to avoid compiler error on platforms where it is |
| 12 * not used. | 12 * not used. |
| 13 */ | 13 */ |
| 14 void EmitExperimentalValidatorWarning() { | 14 void EmitExperimentalValidatorWarning() { |
| 15 NaClLog(LOG_WARNING, "DANGER! USING THE EXPERIMENTAL DFA VALIDATOR!\n"); | 15 NaClLog(LOG_WARNING, "DANGER! USING THE EXPERIMENTAL DFA VALIDATOR!\n"); |
| 16 } | 16 } |
| 17 | 17 |
| 18 const struct NaClValidatorInterface *NaClCreateValidator() { | 18 const struct NaClValidatorInterface *NaClCreateValidator() { |
| 19 #if NACL_ARCH(NACL_BUILD_ARCH) == NACL_arm | 19 #if NACL_ARCH(NACL_BUILD_ARCH) == NACL_arm |
| 20 return NaClValidatorCreateArm(); | 20 return NaClValidatorCreateArm(); |
| 21 #elif NACL_ARCH(NACL_BUILD_ARCH) == NACL_mips |
| 22 return NaClValidatorCreateMips(); |
| 21 #elif NACL_ARCH(NACL_TARGET_ARCH) == NACL_x86 | 23 #elif NACL_ARCH(NACL_TARGET_ARCH) == NACL_x86 |
| 22 # if NACL_TARGET_SUBARCH == 64 | 24 # if NACL_TARGET_SUBARCH == 64 |
| 23 # if defined(NACL_VALIDATOR_RAGEL) | 25 # if defined(NACL_VALIDATOR_RAGEL) |
| 24 EmitExperimentalValidatorWarning(); | 26 EmitExperimentalValidatorWarning(); |
| 25 return NaClDfaValidatorCreate_x86_64(); | 27 return NaClDfaValidatorCreate_x86_64(); |
| 26 # else | 28 # else |
| 27 return NaClValidatorCreate_x86_64(); | 29 return NaClValidatorCreate_x86_64(); |
| 28 # endif /* defined(NACL_VALIDATOR_RAGEL) */ | 30 # endif /* defined(NACL_VALIDATOR_RAGEL) */ |
| 29 # elif NACL_TARGET_SUBARCH == 32 | 31 # elif NACL_TARGET_SUBARCH == 32 |
| 30 # if defined(NACL_VALIDATOR_RAGEL) | 32 # if defined(NACL_VALIDATOR_RAGEL) |
| 31 EmitExperimentalValidatorWarning(); | 33 EmitExperimentalValidatorWarning(); |
| 32 return NaClDfaValidatorCreate_x86_32(); | 34 return NaClDfaValidatorCreate_x86_32(); |
| 33 # else | 35 # else |
| 34 return NaClValidatorCreate_x86_32(); | 36 return NaClValidatorCreate_x86_32(); |
| 35 # endif /* defined(NACL_VALIDATOR_RAGEL) */ | 37 # endif /* defined(NACL_VALIDATOR_RAGEL) */ |
| 36 # else | 38 # else |
| 37 # error "Invalid sub-architecture!" | 39 # error "Invalid sub-architecture!" |
| 38 # endif | 40 # endif |
| 39 #else /* NACL_x86 */ | 41 #else /* NACL_x86 */ |
| 40 # error "There is no validator for this architecture!" | 42 # error "There is no validator for this architecture!" |
| 41 #endif | 43 #endif |
| 42 } | 44 } |
| OLD | NEW |