void NaClAddRepPrefixFlagsIfApplicable() { if (NaClInInstructionSet(kAllowableRepMnemonic, NACL_ARRAY_SIZE(kAllowableRepMnemonic), kAllowableRepMnemonicOpseq, NACL_ARRAY_SIZE(kAllowableRepMnemonicOpseq))) { NaClAddIFlags(NACL_IFLAG(OpcodeAllowsRep)); } if (NaClInInstructionSet(kAllowableRepneMnemonic, NACL_ARRAY_SIZE(kAllowableRepneMnemonic), NULL, 0)) { NaClAddIFlags(NACL_IFLAG(OpcodeAllowsRepne)); } }
/* Add OperandZeroExtends_v instruction flag if applicable. */ void NaClAddZeroExtend32FlagIfApplicable(void) { if ((X86_64 == NACL_FLAGS_run_mode) && NaClInInstructionSet(kZeroExtend32Op, NACL_ARRAY_SIZE(kZeroExtend32Op), kZeroExtend32Opseq, NACL_ARRAY_SIZE(kZeroExtend32Opseq))) { AddZeroExtendToOpDestArgs(NaClGetDefInst()); } }
/* Add LongMode instruction flag if applicable. */ void NaClAddLongModeIfApplicable() { if (NaClInInstructionSet(kLongModeOp, NACL_ARRAY_SIZE(kLongModeOp), NULL, 0)) { NaClAddIFlags(NACL_IFLAG(LongMode)); } }
static void NaClAddJumpFlags(NaClIFlag flag, const NaClMnemonic* name, size_t name_size) { if (NaClInInstructionSet(name, name_size, NULL, 0)) { NaClGetDefInst()->flags |= NACL_IFLAG(flag); } }