|
|
Two-threaded parser
This is how it works:
- The background thread runs PreParser to find lazy functions. The main thread
runs Parser, and uses the data produced by the background thread to skip over
lazy functions.
- This can only work for external strings, since they're stored outside the V8
heap. ExternalTwoByteStringUtf16CharacterStream and
ExternalOneByteStringUtf16CharacterStream keep a Handle<String> but they are
safe to use in the background thread, since they don't access the Handle after
the constructor.
- The "cached data" is still produced by Parser like before, and stored like
before.
BUG=
Total comments: 10
Total comments: 4
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+653 lines, -84 lines) |
Patch |
 |
M |
src/flag-definitions.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
1 chunk |
+3 lines, -0 lines |
0 comments
|
Download
|
 |
M |
src/isolate.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
3 chunks |
+6 lines, -0 lines |
0 comments
|
Download
|
 |
M |
src/isolate.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
4 chunks |
+13 lines, -0 lines |
0 comments
|
Download
|
 |
M |
src/parser.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
2 chunks |
+16 lines, -0 lines |
0 comments
|
Download
|
 |
M |
src/parser.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
11 chunks |
+113 lines, -52 lines |
0 comments
|
Download
|
 |
A |
src/parser-thread.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
1 chunk |
+95 lines, -0 lines |
0 comments
|
Download
|
 |
A |
src/parser-thread.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
1 chunk |
+223 lines, -0 lines |
0 comments
|
Download
|
 |
M |
src/preparse-data.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
2 chunks |
+2 lines, -1 line |
0 comments
|
Download
|
 |
M |
src/preparser.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
5 chunks |
+9 lines, -3 lines |
0 comments
|
Download
|
 |
M |
src/preparser.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
2 chunks |
+12 lines, -4 lines |
0 comments
|
Download
|
 |
M |
src/scanner-character-streams.h
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
2 chunks |
+23 lines, -3 lines |
0 comments
|
Download
|
 |
M |
src/scanner-character-streams.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
1 chunk |
+44 lines, -9 lines |
0 comments
|
Download
|
 |
M |
test/cctest/test-parsing.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
10 chunks |
+71 lines, -11 lines |
0 comments
|
Download
|
 |
M |
tools/gyp/v8.gyp
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
1 chunk |
+2 lines, -0 lines |
0 comments
|
Download
|
 |
M |
tools/parser-shell.cc
|
View
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
3 chunks |
+21 lines, -1 line |
0 comments
|
Download
|
Total messages: 11 (0 generated)
|