|
Remove parent_level field of function type parameters.
Add function_type_arguments field in closure instances.
Lots of other smaller changes, also related to generic function semantics.
This is still work in progress, with a change of direction in the design:
The type argument vector of a generic function will be prepended with the type
arguments of enclosing generic functions. The re-allocation and concatenation
will be done in nested generic function's prolog. This will greatly simplify
instantiation of types at run time without having to search the context for
parent function's type arguments. However, a closure instance now requires an
additional field. On the other hand, type parameters do not require a
parent_level field anymore.
R=rmacnak@google.com
Committed: https://github.com/dart-lang/sdk/commit/fd5089c9e81f865b1151ae3184421845f5635a86
Total comments: 6
|
Unified diffs |
Side-by-side diffs |
Delta from patch set |
Stats (+400 lines, -276 lines) |
Patch |
|
M |
runtime/lib/function.cc
|
View
|
|
1 chunk |
+15 lines, -12 lines |
0 comments
|
Download
|
|
M |
runtime/lib/function.dart
|
View
|
|
1 chunk |
+6 lines, -9 lines |
0 comments
|
Download
|
|
M |
runtime/lib/mirrors.cc
|
View
|
|
1 chunk |
+6 lines, -2 lines |
0 comments
|
Download
|
|
M |
runtime/vm/bootstrap.cc
|
View
|
|
1 chunk |
+5 lines, -3 lines |
0 comments
|
Download
|
|
M |
runtime/vm/bootstrap_nocore.cc
|
View
|
|
1 chunk |
+5 lines, -3 lines |
0 comments
|
Download
|
|
M |
runtime/vm/class_finalizer.cc
|
View
|
|
7 chunks |
+25 lines, -18 lines |
0 comments
|
Download
|
|
M |
runtime/vm/clustered_snapshot.cc
|
View
|
1
|
4 chunks |
+2 lines, -2 lines |
0 comments
|
Download
|
|
M |
runtime/vm/code_generator.cc
|
View
|
|
2 chunks |
+26 lines, -6 lines |
0 comments
|
Download
|
|
M |
runtime/vm/constant_propagator.cc
|
View
|
|
1 chunk |
+1 line, -2 lines |
0 comments
|
Download
|
|
M |
runtime/vm/flow_graph_builder.h
|
View
|
|
1 chunk |
+1 line, -0 lines |
0 comments
|
Download
|
|
M |
runtime/vm/flow_graph_builder.cc
|
View
|
|
7 chunks |
+58 lines, -16 lines |
0 comments
|
Download
|
|
M |
runtime/vm/intermediate_language.cc
|
View
|
|
1 chunk |
+3 lines, -8 lines |
0 comments
|
Download
|
|
M |
runtime/vm/kernel_reader.cc
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/kernel_to_il.cc
|
View
|
|
5 chunks |
+5 lines, -5 lines |
0 comments
|
Download
|
|
M |
runtime/vm/object.h
|
View
|
|
10 chunks |
+23 lines, -9 lines |
0 comments
|
Download
|
|
M |
runtime/vm/object.cc
|
View
|
|
30 chunks |
+115 lines, -79 lines |
0 comments
|
Download
|
|
M |
runtime/vm/object_service.cc
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/object_test.cc
|
View
|
|
1 chunk |
+2 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/parser.h
|
View
|
|
5 chunks |
+17 lines, -9 lines |
0 comments
|
Download
|
|
M |
runtime/vm/parser.cc
|
View
|
|
12 chunks |
+37 lines, -73 lines |
0 comments
|
Download
|
|
M |
runtime/vm/precompiler.cc
|
View
|
|
1 chunk |
+4 lines, -2 lines |
0 comments
|
Download
|
|
M |
runtime/vm/raw_object.h
|
View
|
|
3 chunks |
+5 lines, -4 lines |
0 comments
|
Download
|
|
M |
runtime/vm/raw_object_snapshot.cc
|
View
|
|
2 chunks |
+0 lines, -2 lines |
0 comments
|
Download
|
|
M |
runtime/vm/simulator_dbc.cc
|
View
|
|
2 chunks |
+12 lines, -2 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_arm.cc
|
View
|
|
1 chunk |
+6 lines, -2 lines |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_arm64.cc
|
View
|
|
1 chunk |
+4 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_ia32.cc
|
View
|
|
1 chunk |
+5 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_mips.cc
|
View
|
|
1 chunk |
+3 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/stub_code_x64.cc
|
View
|
|
1 chunk |
+5 lines, -1 line |
0 comments
|
Download
|
|
M |
runtime/vm/symbols.h
|
View
|
|
1 chunk |
+1 line, -1 line |
0 comments
|
Download
|
Total messages: 6 (2 generated)
|