Coverage for /pythoncovmergedfiles/medio/medio/usr/local/lib/python3.9/dist-packages/pyvex/__init__.py: 100%

Shortcuts on this page

r m x   toggle line displays

j k   next/prev highlighted chunk

0   (zero) top of page

1   (one) first highlighted chunk

14 statements  

1""" 

2PyVEX provides an interface that translates binary code into the VEX intermediate representation (IR). 

3For an introduction to VEX, take a look here: https://docs.angr.io/advanced-topics/ir 

4""" 

5 

6__version__ = "9.2.102.dev0" 

7 

8from . import const, expr, stmt 

9from .arches import ( 

10 ARCH_AMD64, 

11 ARCH_ARM64_BE, 

12 ARCH_ARM64_LE, 

13 ARCH_ARM_BE, 

14 ARCH_ARM_BE_LE, 

15 ARCH_ARM_LE, 

16 ARCH_MIPS32_BE, 

17 ARCH_MIPS32_LE, 

18 ARCH_MIPS64_BE, 

19 ARCH_MIPS64_LE, 

20 ARCH_PPC32, 

21 ARCH_PPC64_BE, 

22 ARCH_PPC64_LE, 

23 ARCH_RISCV64_LE, 

24 ARCH_S390X, 

25 ARCH_X86, 

26) 

27from .block import IRSB, IRTypeEnv 

28from .const import get_type_size, get_type_spec_size, tag_to_const_class 

29from .enums import ( 

30 IRCallee, 

31 IRRegArray, 

32 VEXObject, 

33 default_vex_archinfo, 

34 get_enum_from_int, 

35 get_int_from_enum, 

36 irop_enums_to_ints, 

37 vex_endness_from_string, 

38) 

39from .errors import PyVEXError 

40from .expr import get_op_retty 

41from .lifting import lift, lifters 

42from .native import ffi, pvc 

43 

44# aliases.... 

45IRStmt = stmt 

46IRExpr = expr 

47IRConst = const 

48 

49 

50__all__ = [ 

51 "const", 

52 "expr", 

53 "stmt", 

54 "IRSB", 

55 "IRTypeEnv", 

56 "get_type_size", 

57 "get_type_spec_size", 

58 "irop_enums_to_ints", 

59 "tag_to_const_class", 

60 "IRCallee", 

61 "IRRegArray", 

62 "VEXObject", 

63 "default_vex_archinfo", 

64 "get_enum_from_int", 

65 "get_int_from_enum", 

66 "vex_endness_from_string", 

67 "PyVEXError", 

68 "get_op_retty", 

69 "lift", 

70 "lifters", 

71 "ffi", 

72 "pvc", 

73 "IRStmt", 

74 "IRExpr", 

75 "IRConst", 

76 "ARCH_X86", 

77 "ARCH_AMD64", 

78 "ARCH_ARM_BE", 

79 "ARCH_ARM_BE_LE", 

80 "ARCH_ARM_LE", 

81 "ARCH_ARM64_LE", 

82 "ARCH_ARM64_BE", 

83 "ARCH_PPC32", 

84 "ARCH_PPC64_BE", 

85 "ARCH_PPC64_LE", 

86 "ARCH_S390X", 

87 "ARCH_MIPS32_BE", 

88 "ARCH_MIPS32_LE", 

89 "ARCH_MIPS64_BE", 

90 "ARCH_MIPS64_LE", 

91 "ARCH_RISCV64_LE", 

92]