Skip to content

Commit 7609c43

Browse files
committed
[GR-69854] Improve quickening footprint
PullRequest: graalpython/4016
2 parents 1fa36d5 + be4f01d commit 7609c43

File tree

89 files changed

+641
-567
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

89 files changed

+641
-567
lines changed

graalpython/com.oracle.graal.python.test/testData/goldenFiles/CompilerTests/testAnnAssignment.co

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Disassembly of <module>:
22
1:0 - 1:11 0 SETUP_ANNOTATIONS
3-
1:9 - 1:11 1 LOAD_BYTE_O 12
3+
1:9 - 1:11 1 LOAD_BYTE 12
44
1:0 - 1:1 3 STORE_NAME 0 (a)
55
1:3 - 1:6 5 LOAD_NAME 1 (int)
66
1:0 - 1:11 7 LOAD_NAME 2 (__annotations__)

graalpython/com.oracle.graal.python.test/testData/goldenFiles/CompilerTests/testArgAnnotations.co

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
Disassembly of <module>:
22
1:0 - 2:22 0 LOAD_STRING 0 ('b')
3-
1:18 - 1:19 2 LOAD_BYTE_O 2
3+
1:18 - 1:19 2 LOAD_BYTE 2
44
1:0 - 2:22 4 LOAD_STRING 1 ('a')
5-
1:10 - 1:11 6 LOAD_BYTE_O 1
5+
1:10 - 1:11 6 LOAD_BYTE 1
66
1:0 - 2:22 8 LOAD_STRING 2 ('c')
7-
1:24 - 1:25 10 LOAD_BYTE_O 3
7+
1:24 - 1:25 10 LOAD_BYTE 3
88
1:0 - 2:22 12 LOAD_STRING 3 ('d')
9-
1:29 - 1:30 14 LOAD_BYTE_O 4
9+
1:29 - 1:30 14 LOAD_BYTE 4
1010
1:0 - 2:22 16 LOAD_STRING 4 ('e')
11-
1:36 - 1:37 18 LOAD_BYTE_O 5
11+
1:36 - 1:37 18 LOAD_BYTE 5
1212
1:0 - 2:22 20 COLLECTION_FROM_STACK 10 (dict)
1313
1:0 - 2:22 22 MAKE_FUNCTION 4 (foo)
1414
1:0 - 2:22 25 STORE_NAME 0 (foo)
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Disassembly of <module>:
2-
1:4 - 1:6 0 LOAD_BYTE_O 12
2+
1:4 - 1:6 0 LOAD_BYTE 12
33
1:0 - 1:1 2 STORE_NAME 0 (a)
44
1:0 - 1:6 4 LOAD_NONE
55
1:0 - 1:6 5 RETURN_VALUE

graalpython/com.oracle.graal.python.test/testData/goldenFiles/CompilerTests/testAugAssignment.co

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Disassembly of <module>:
22
1:0 - 1:1 0 LOAD_NAME 0 (a)
3-
1:5 - 1:9 2 LOAD_DOUBLE_O 0 (12.0)
3+
1:5 - 1:9 2 LOAD_DOUBLE 0 (12.0)
44
1:0 - 1:9 4 BINARY_OP 1 (INPLACE_ADD)
55
1:0 - 1:1 6 STORE_NAME 0 (a)
66
1:0 - 1:1 8 LOAD_NONE

graalpython/com.oracle.graal.python.test/testData/goldenFiles/CompilerTests/testAugAssignmentAttr.co

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ Disassembly of <module>:
22
1:0 - 1:1 0 LOAD_NAME 0 (a)
33
1:0 - 1:3 2 DUP_TOP
44
1:0 - 1:3 3 LOAD_ATTR 1 (b)
5-
1:7 - 1:11 5 LOAD_DOUBLE_O 0 (12.0)
5+
1:7 - 1:11 5 LOAD_DOUBLE 0 (12.0)
66
1:0 - 1:11 7 BINARY_OP 1 (INPLACE_ADD)
77
1:0 - 1:3 9 ROT_TWO
88
1:0 - 1:3 10 STORE_ATTR 1 (b)

graalpython/com.oracle.graal.python.test/testData/goldenFiles/CompilerTests/testAugAssignmentSubscr.co

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,8 @@ Disassembly of <module>:
44
1:2 - 1:3 3 LOAD_NAME 1 (b)
55
1:0 - 1:4 5 DUP_TOP
66
1:0 - 1:4 6 ROT_THREE
7-
1:0 - 1:4 7 BINARY_SUBSCR can quicken
8-
1:8 - 1:12 8 LOAD_DOUBLE_D 0 (12.0) can quicken
7+
1:0 - 1:4 7 BINARY_SUBSCR
8+
1:8 - 1:12 8 LOAD_DOUBLE 0 (12.0)
99
1:0 - 1:12 10 BINARY_OP 1 (INPLACE_ADD) generalizes: 8, 7
1010
1:0 - 1:4 12 ROT_THREE
1111
1:0 - 1:4 13 STORE_SUBSCR

graalpython/com.oracle.graal.python.test/testData/goldenFiles/CompilerTests/testBenchmark.co

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ Disassembly of <module>:
33
1:0 - 9:15 3 STORE_NAME 0 (docompute)
44
12:0 - 15:22 5 MAKE_FUNCTION 0 (measure)
55
12:0 - 15:22 8 STORE_NAME 1 (measure)
6-
18:22 - 18:23 10 LOAD_BYTE_O 5
6+
18:22 - 18:23 10 LOAD_BYTE 5
77
18:0 - 19:16 12 COLLECTION_FROM_STACK 1 (Object[])
88
18:0 - 19:16 14 MAKE_FUNCTION 1 (__benchmark__)
99
18:0 - 19:16 17 STORE_NAME 2 (__benchmark__)
@@ -15,39 +15,39 @@ Disassembly of docompute:
1515
2:19 - 2:22 2 LOAD_FAST 0 (num)
1616
2:13 - 2:23 4 CALL_FUNCTION 1
1717
2:4 - 7:18 6 GET_ITER
18-
2:4 - 7:18 >> 7 FOR_ITER 74 (to 81) can quicken
18+
2:4 - 7:18 >> 7 FOR_ITER 74 (to 81)
1919
2:8 - 2:9 9 STORE_FAST 1 (i) generalizes: 7
20-
3:15 - 3:18 11 LOAD_DOUBLE_D 0 (0.0) can quicken
20+
3:15 - 3:18 11 LOAD_DOUBLE 0 (0.0)
2121
3:8 - 3:12 13 STORE_FAST 2 (sum_) generalizes: 11
22-
4:12 - 4:13 15 LOAD_BYTE_I 0 can quicken
22+
4:12 - 4:13 15 LOAD_BYTE 0
2323
4:8 - 4:9 17 STORE_FAST 3 (j) generalizes: 15
24-
5:14 - 5:15 >> 19 LOAD_FAST 3 (j) can quicken
25-
5:18 - 5:21 21 LOAD_FAST 0 (num) can quicken
26-
5:14 - 5:21 23 BINARY_OP 14 (LT) can quicken, generalizes: 21, 19
24+
5:14 - 5:15 >> 19 LOAD_FAST 3 (j)
25+
5:18 - 5:21 21 LOAD_FAST 0 (num)
26+
5:14 - 5:21 23 BINARY_OP 14 (LT) generalizes: 21, 19
2727
5:8 - 7:18 25 POP_AND_JUMP_IF_FALSE 54 (to 79) generalizes: 23
28-
6:12 - 6:16 29 LOAD_FAST 2 (sum_) can quicken
29-
6:20 - 6:23 31 LOAD_DOUBLE_D 1 (1.0) can quicken
30-
6:29 - 6:30 33 LOAD_FAST 1 (i) can quicken
31-
6:33 - 6:34 35 LOAD_FAST 3 (j) can quicken
32-
6:29 - 6:34 37 BINARY_OP 0 (ADD) can quicken, generalizes: 35, 33
33-
6:39 - 6:40 39 LOAD_FAST 1 (i) can quicken
34-
6:43 - 6:44 41 LOAD_FAST 3 (j) can quicken
35-
6:39 - 6:44 43 BINARY_OP 0 (ADD) can quicken, generalizes: 41, 39
36-
6:47 - 6:48 45 LOAD_BYTE_I 1 can quicken
37-
6:39 - 6:48 47 BINARY_OP 0 (ADD) can quicken, generalizes: 45, 43
38-
6:28 - 6:49 49 BINARY_OP 4 (MUL) can quicken, generalizes: 47, 37
39-
6:53 - 6:54 51 LOAD_BYTE_I 1 can quicken
40-
6:28 - 6:54 53 BINARY_OP 20 (RSHIFT) can quicken, generalizes: 51, 49
41-
6:58 - 6:59 55 LOAD_FAST 1 (i) can quicken
42-
6:27 - 6:59 57 BINARY_OP 0 (ADD) can quicken, generalizes: 55, 53
43-
6:62 - 6:63 59 LOAD_BYTE_I 1 can quicken
44-
6:27 - 6:63 61 BINARY_OP 0 (ADD) can quicken, generalizes: 59, 57
45-
6:20 - 6:64 63 BINARY_OP 8 (TRUEDIV) can quicken, generalizes: 61, 31
46-
6:12 - 6:64 65 BINARY_OP 1 (INPLACE_ADD) can quicken, generalizes: 63, 29
28+
6:12 - 6:16 29 LOAD_FAST 2 (sum_)
29+
6:20 - 6:23 31 LOAD_DOUBLE 1 (1.0)
30+
6:29 - 6:30 33 LOAD_FAST 1 (i)
31+
6:33 - 6:34 35 LOAD_FAST 3 (j)
32+
6:29 - 6:34 37 BINARY_OP 0 (ADD) generalizes: 35, 33
33+
6:39 - 6:40 39 LOAD_FAST 1 (i)
34+
6:43 - 6:44 41 LOAD_FAST 3 (j)
35+
6:39 - 6:44 43 BINARY_OP 0 (ADD) generalizes: 41, 39
36+
6:47 - 6:48 45 LOAD_BYTE 1
37+
6:39 - 6:48 47 BINARY_OP 0 (ADD) generalizes: 45, 43
38+
6:28 - 6:49 49 BINARY_OP 4 (MUL) generalizes: 47, 37
39+
6:53 - 6:54 51 LOAD_BYTE 1
40+
6:28 - 6:54 53 BINARY_OP 20 (RSHIFT) generalizes: 51, 49
41+
6:58 - 6:59 55 LOAD_FAST 1 (i)
42+
6:27 - 6:59 57 BINARY_OP 0 (ADD) generalizes: 55, 53
43+
6:62 - 6:63 59 LOAD_BYTE 1
44+
6:27 - 6:63 61 BINARY_OP 0 (ADD) generalizes: 59, 57
45+
6:20 - 6:64 63 BINARY_OP 8 (TRUEDIV) generalizes: 61, 31
46+
6:12 - 6:64 65 BINARY_OP 1 (INPLACE_ADD) generalizes: 63, 29
4747
6:12 - 6:16 67 STORE_FAST 2 (sum_) generalizes: 65
48-
7:12 - 7:13 69 LOAD_FAST 3 (j) can quicken
49-
7:17 - 7:18 71 LOAD_BYTE_I 1 can quicken
50-
7:12 - 7:18 73 BINARY_OP 1 (INPLACE_ADD) can quicken, generalizes: 71, 69
48+
7:12 - 7:13 69 LOAD_FAST 3 (j)
49+
7:17 - 7:18 71 LOAD_BYTE 1
50+
7:12 - 7:18 73 BINARY_OP 1 (INPLACE_ADD) generalizes: 71, 69
5151
7:12 - 7:13 75 STORE_FAST 3 (j) generalizes: 73
5252
7:12 - 7:13 77 JUMP_BACKWARD 58 (to 19)
5353
7:12 - 7:13 >> 79 JUMP_BACKWARD 72 (to 7)
@@ -59,10 +59,10 @@ Disassembly of measure:
5959
13:21 - 13:24 2 LOAD_FAST 0 (num)
6060
13:15 - 13:25 4 CALL_FUNCTION 1
6161
13:4 - 14:31 6 GET_ITER
62-
13:4 - 14:31 >> 7 FOR_ITER 14 (to 21) can quicken
62+
13:4 - 14:31 >> 7 FOR_ITER 14 (to 21)
6363
13:8 - 13:11 9 STORE_FAST 1 (run) generalizes: 7
6464
14:15 - 14:24 11 LOAD_GLOBAL 1 (docompute)
65-
14:25 - 14:30 13 LOAD_INT_O 0 (10000)
65+
14:25 - 14:30 13 LOAD_INT 0 (10000)
6666
14:15 - 14:31 15 CALL_FUNCTION 1
6767
14:8 - 14:12 17 STORE_FAST 2 (sum_)
6868
14:8 - 14:31 19 JUMP_BACKWARD 12 (to 7)

graalpython/com.oracle.graal.python.test/testData/goldenFiles/CompilerTests/testBenchmark2.co

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ Disassembly of HandlerTask:
2020
2:4 - 6:37 14 RETURN_VALUE
2121

2222
Disassembly of HandlerTask.__init__:
23-
4:12 - 4:13 0 LOAD_BYTE_I 0 can quicken
23+
4:12 - 4:13 0 LOAD_BYTE 0
2424
4:8 - 4:9 2 STORE_FAST 6 (x) generalizes: 0
2525
5:14 - 5:24 4 LOAD_GLOBAL 0 (ValueError)
2626
5:8 - 5:24 6 RAISE_VARARGS 1
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
Disassembly of <module>:
2-
1:0 - 1:1 0 LOAD_BYTE_I 1 can quicken
3-
1:4 - 1:5 2 LOAD_BYTE_I 1 can quicken
2+
1:0 - 1:1 0 LOAD_BYTE 1
3+
1:4 - 1:5 2 LOAD_BYTE 1
44
1:0 - 1:5 4 BINARY_OP 0 (ADD) generalizes: 2, 0
55
1:0 - 1:5 6 RETURN_VALUE

graalpython/com.oracle.graal.python.test/testData/goldenFiles/CompilerTests/testBreakFromExcept.co

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
Disassembly of <module>:
22
1:9 - 1:14 0 LOAD_NAME 0 (range)
3-
1:15 - 1:17 2 LOAD_BYTE_O 10
3+
1:15 - 1:17 2 LOAD_BYTE 10
44
1:9 - 1:18 4 CALL_FUNCTION 1
55
1:0 - 4:36 6 GET_ITER
66
1:0 - 4:36 >> 7 FOR_ITER 50 (to 57)
77
1:4 - 1:5 9 STORE_NAME 1 (i)
88
2:2 - 4:36 11 NOP
9-
3:4 - 3:5 12 LOAD_BYTE_I 1 can quicken
10-
3:8 - 3:9 14 LOAD_BYTE_I 0 can quicken
9+
3:4 - 3:5 12 LOAD_BYTE 1
10+
3:8 - 3:9 14 LOAD_BYTE 0
1111
3:4 - 3:9 16 BINARY_OP 8 (TRUEDIV) generalizes: 14, 12
1212
3:4 - 3:9 18 POP_TOP
1313
3:4 - 3:9 19 JUMP_FORWARD 36 (to 55)

0 commit comments

Comments
 (0)