def creates_unusable_value(self):
    '\n        :return boolean: Returns True if the gadget creates a value in segment or extension registers, or are\n                         RIP-relative, or are constant memory locations; False otherwise.\n        '
    first_instr = self.instructions[0]
    if ((first_instr.opcode in ['cmp', 'test', 'push']) or (first_instr.op1 is None)):
        return False
    if ((not Instruction.is_constant(first_instr.op1)) and (Instruction.get_operand_register_family(first_instr.op1) is None)):
        return True
    return False
:return boolean: Returns True if the gadget creates a value in segment or extension registers, or are
                 RIP-relative, or are constant memory locations; False otherwise.
def creates_unusable_value(self):
    '\n        :return boolean: Returns True if the gadget creates a value in segment or extension registers, or are\n                         RIP-relative, or are constant memory locations; False otherwise.\n        '
    first_instr = self.instructions[0]
    if ((first_instr.opcode in ['cmp', 'test', 'push']) or (first_instr.op1 is None)):
        return False
    if ((not Instruction.is_constant(first_instr.op1)) and (Instruction.get_operand_register_family(first_instr.op1) is None)):
        return True
    return False