|
Move the Kernel string offsets into the VM's heap.
Copy the Kernel string offsets into a uint32 array in the VM's heap.
This avoids allocating small string objects with new and avoids having
a table of the canonical strings.
Instead of an offset and a size, strings are now represented as
indexes into the string table in the heap. The start offset of string
N is found at byte offset N*4 because it is a uint32, and the end
offset is found at byte offset (N+1)*4. The strings themselves are
just integer indexes instead of pointers.
In the stream flow graph builder, string access is all random access.
R=jensj@google.com, vegorov@google.com
Committed: https://github.com/dart-lang/sdk/commit/865e0669b2320688eaa7bf23b06aee780e094076
Total comments: 2
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+273 lines, -336 lines) |
Patch |
![](/static/closedtriangle.gif) |
M |
runtime/vm/bootstrap.cc
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/bootstrap_nocore.cc
|
View
|
|
1 chunk |
+2 lines, -2 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel.h
|
View
|
1
|
26 chunks |
+58 lines, -104 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel.cc
|
View
|
|
3 chunks |
+4 lines, -4 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel_binary.h
|
View
|
|
3 chunks |
+29 lines, -4 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel_binary.cc
|
View
|
|
17 chunks |
+40 lines, -70 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel_binary_flowgraph.h
|
View
|
|
5 chunks |
+0 lines, -21 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel_binary_flowgraph.cc
|
View
|
|
6 chunks |
+8 lines, -49 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel_reader.h
|
View
|
|
2 chunks |
+4 lines, -4 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel_reader.cc
|
View
|
|
5 chunks |
+30 lines, -20 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel_to_il.h
|
View
|
1
|
4 chunks |
+16 lines, -9 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/kernel_to_il.cc
|
View
|
1
|
16 chunks |
+62 lines, -42 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/object.h
|
View
|
|
1 chunk |
+9 lines, -2 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/object.cc
|
View
|
|
1 chunk |
+7 lines, -2 lines |
0 comments
|
Download
|
![](/static/closedtriangle.gif) |
M |
runtime/vm/raw_object.h
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
Total messages: 7 (2 generated)
|