init
This commit is contained in:
commit
38355d2442
9083 changed files with 1225834 additions and 0 deletions
|
|
@ -0,0 +1,119 @@
|
|||
[case testIntNeq]
|
||||
def f(x: int, y: int) -> bool:
|
||||
return x != y
|
||||
[out]
|
||||
def f(x, y):
|
||||
x, y :: int
|
||||
r0 :: native_int
|
||||
r1, r2 :: bit
|
||||
r3 :: bool
|
||||
r4, r5 :: bit
|
||||
L0:
|
||||
r0 = x & 1
|
||||
r1 = r0 == 0
|
||||
if r1 goto L1 else goto L2 :: bool
|
||||
L1:
|
||||
r2 = x != y
|
||||
r3 = r2
|
||||
goto L3
|
||||
L2:
|
||||
r4 = CPyTagged_IsEq_(x, y)
|
||||
r5 = r4 ^ 1
|
||||
r3 = r5
|
||||
L3:
|
||||
return r3
|
||||
|
||||
[case testShortIntComparisons]
|
||||
def f(x: int) -> int:
|
||||
if x == 3:
|
||||
return 1
|
||||
elif x != 4:
|
||||
return 2
|
||||
elif 5 == x:
|
||||
return 3
|
||||
elif 6 != x:
|
||||
return 4
|
||||
elif x < 4:
|
||||
return 5
|
||||
return 6
|
||||
[out]
|
||||
def f(x):
|
||||
x :: int
|
||||
r0, r1, r2, r3 :: bit
|
||||
r4 :: native_int
|
||||
r5, r6, r7 :: bit
|
||||
L0:
|
||||
r0 = x == 6
|
||||
if r0 goto L1 else goto L2 :: bool
|
||||
L1:
|
||||
return 2
|
||||
L2:
|
||||
r1 = x != 8
|
||||
if r1 goto L3 else goto L4 :: bool
|
||||
L3:
|
||||
return 4
|
||||
L4:
|
||||
r2 = 10 == x
|
||||
if r2 goto L5 else goto L6 :: bool
|
||||
L5:
|
||||
return 6
|
||||
L6:
|
||||
r3 = 12 != x
|
||||
if r3 goto L7 else goto L8 :: bool
|
||||
L7:
|
||||
return 8
|
||||
L8:
|
||||
r4 = x & 1
|
||||
r5 = r4 != 0
|
||||
if r5 goto L9 else goto L10 :: bool
|
||||
L9:
|
||||
r6 = CPyTagged_IsLt_(x, 8)
|
||||
if r6 goto L11 else goto L12 :: bool
|
||||
L10:
|
||||
r7 = x < 8 :: signed
|
||||
if r7 goto L11 else goto L12 :: bool
|
||||
L11:
|
||||
return 10
|
||||
L12:
|
||||
L13:
|
||||
L14:
|
||||
L15:
|
||||
L16:
|
||||
return 12
|
||||
|
||||
[case testIntMin]
|
||||
def f(x: int, y: int) -> int:
|
||||
return min(x, y)
|
||||
[out]
|
||||
def f(x, y):
|
||||
x, y :: int
|
||||
r0 :: native_int
|
||||
r1 :: bit
|
||||
r2 :: native_int
|
||||
r3, r4, r5 :: bit
|
||||
r6 :: bool
|
||||
r7 :: bit
|
||||
r8 :: int
|
||||
L0:
|
||||
r0 = y & 1
|
||||
r1 = r0 == 0
|
||||
r2 = x & 1
|
||||
r3 = r2 == 0
|
||||
r4 = r1 & r3
|
||||
if r4 goto L1 else goto L2 :: bool
|
||||
L1:
|
||||
r5 = y < x :: signed
|
||||
r6 = r5
|
||||
goto L3
|
||||
L2:
|
||||
r7 = CPyTagged_IsLt_(y, x)
|
||||
r6 = r7
|
||||
L3:
|
||||
if r6 goto L4 else goto L5 :: bool
|
||||
L4:
|
||||
r8 = y
|
||||
goto L6
|
||||
L5:
|
||||
r8 = x
|
||||
L6:
|
||||
return r8
|
||||
Loading…
Add table
Add a link
Reference in a new issue