init
This commit is contained in:
commit
38355d2442
9083 changed files with 1225834 additions and 0 deletions
|
|
@ -0,0 +1,69 @@
|
|||
[case testIsinstanceInt]
|
||||
def is_int(value: object) -> bool:
|
||||
return isinstance(value, int)
|
||||
|
||||
[out]
|
||||
def is_int(value):
|
||||
value, r0 :: object
|
||||
r1 :: int32
|
||||
r2 :: bit
|
||||
r3 :: bool
|
||||
L0:
|
||||
r0 = load_address PyLong_Type
|
||||
r1 = PyObject_IsInstance(value, r0)
|
||||
r2 = r1 >= 0 :: signed
|
||||
r3 = truncate r1: int32 to builtins.bool
|
||||
return r3
|
||||
|
||||
[case testIsinstanceNotBool1]
|
||||
def is_not_bool(value: object) -> bool:
|
||||
return not isinstance(value, bool)
|
||||
|
||||
[out]
|
||||
def is_not_bool(value):
|
||||
value, r0 :: object
|
||||
r1 :: int32
|
||||
r2 :: bit
|
||||
r3, r4 :: bool
|
||||
L0:
|
||||
r0 = load_address PyBool_Type
|
||||
r1 = PyObject_IsInstance(value, r0)
|
||||
r2 = r1 >= 0 :: signed
|
||||
r3 = truncate r1: int32 to builtins.bool
|
||||
r4 = r3 ^ 1
|
||||
return r4
|
||||
|
||||
[case testIsinstanceIntAndNotBool]
|
||||
# This test is to ensure that 'value' doesn't get coerced to int when we are
|
||||
# checking if it's a bool, since an int can never be an instance of a bool
|
||||
def is_not_bool_and_is_int(value: object) -> bool:
|
||||
return isinstance(value, int) and not isinstance(value, bool)
|
||||
|
||||
[out]
|
||||
def is_not_bool_and_is_int(value):
|
||||
value, r0 :: object
|
||||
r1 :: int32
|
||||
r2 :: bit
|
||||
r3, r4 :: bool
|
||||
r5 :: object
|
||||
r6 :: int32
|
||||
r7 :: bit
|
||||
r8, r9 :: bool
|
||||
L0:
|
||||
r0 = load_address PyLong_Type
|
||||
r1 = PyObject_IsInstance(value, r0)
|
||||
r2 = r1 >= 0 :: signed
|
||||
r3 = truncate r1: int32 to builtins.bool
|
||||
if r3 goto L2 else goto L1 :: bool
|
||||
L1:
|
||||
r4 = r3
|
||||
goto L3
|
||||
L2:
|
||||
r5 = load_address PyBool_Type
|
||||
r6 = PyObject_IsInstance(value, r5)
|
||||
r7 = r6 >= 0 :: signed
|
||||
r8 = truncate r6: int32 to builtins.bool
|
||||
r9 = r8 ^ 1
|
||||
r4 = r9
|
||||
L3:
|
||||
return r4
|
||||
Loading…
Add table
Add a link
Reference in a new issue