MCPcopy Create free account
hub / github.com/Vector35/binaryninja-api / shift_left

Method shift_left

python/lowlevelil.py:4649–4665  ·  view source on GitHub ↗

``shift_left`` shifts left expression ``a`` by expression ``b`` from expression ``a`` potentially setting flags ``flags`` and returning an expression of ``size`` bytes. :param int size: the size of the result in bytes :param ExpressionIndex a: LHS expression :param ExpressionIndex b: RHS

(
	    self, size: int, a: ExpressionIndex, b: ExpressionIndex, flags: Optional['architecture.FlagType'] = None,
	    loc: Optional['ILSourceLocation'] = None
	)

Source from the content-addressed store, hash-verified

4647 return self.expr(LowLevelILOperation.LLIL_XOR, a, b, size=size, flags=flags, source_location=loc)
4648
4649 def shift_left(
4650 self, size: int, a: ExpressionIndex, b: ExpressionIndex, flags: Optional['architecture.FlagType'] = None,
4651 loc: Optional['ILSourceLocation'] = None
4652 ) -> ExpressionIndex:
4653 """
4654 ``shift_left`` shifts left expression ``a`` by expression ``b`` from expression ``a`` potentially setting flags ``flags``
4655 and returning an expression of ``size`` bytes.
4656
4657 :param int size: the size of the result in bytes
4658 :param ExpressionIndex a: LHS expression
4659 :param ExpressionIndex b: RHS expression
4660 :param str flags: optional, flags to set
4661 :param ILSourceLocation loc: location of returned expression
4662 :return: The expression ``lsl.<size>{<flags>}(a, b)``
4663 :rtype: ExpressionIndex
4664 """
4665 return self.expr(LowLevelILOperation.LLIL_LSL, a, b, size=size, flags=flags, source_location=loc)
4666
4667 def logical_shift_right(
4668 self, size: int, a: ExpressionIndex, b: ExpressionIndex, flags: Optional['architecture.FlagType'] = None,

Callers 3

M6502Class · 0.45
load_zero_page_16Method · 0.45
indirect_loadMethod · 0.45

Calls 1

exprMethod · 0.95

Tested by

no test coverage detected