Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(57)

Side by Side Diff: pkg/kernel/binary.md

Issue 2659343002: Add IR nodes needed for deferred loading. (Closed)
Patch Set: Make deferred imports explicit in the IR Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | pkg/kernel/lib/ast.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 This file describes the binary format of Dart Kernel. 1 This file describes the binary format of Dart Kernel.
2 2
3 Notation 3 Notation
4 -------- 4 --------
5 Bitmasks are described with the syntax: 5 Bitmasks are described with the syntax:
6 ```scala 6 ```scala
7 Byte flags (flag1, flag2, ..., flagN) 7 Byte flags (flag1, flag2, ..., flagN)
8 ``` 8 ```
9 where 'flag<N>' is the N-th least significant bit, 9 where 'flag<N>' is the N-th least significant bit,
10 (so flag1 is the least significant bit). 10 (so flag1 is the least significant bit).
(...skipping 646 matching lines...) Expand 10 before | Expand all | Expand 10 after
657 Byte tag = 52; 657 Byte tag = 52;
658 FunctionNode function; 658 FunctionNode function;
659 } 659 }
660 660
661 type Let extends Expression { 661 type Let extends Expression {
662 Byte tag = 53; 662 Byte tag = 53;
663 VariableDeclaration variable; 663 VariableDeclaration variable;
664 Expression body; 664 Expression body;
665 } 665 }
666 666
667 type LoadLibrary extends Expression {
668 Byte tag = 14;
669 LibraryReference library;
670 }
671
sra1 2017/02/01 01:11:16 Do you need at add DeferredLibary and the check he
asgerf 2017/02/02 12:50:36 Yep. Updated.
667 abstract type Statement extends Node {} 672 abstract type Statement extends Node {}
668 673
669 type InvalidStatement extends Statement { 674 type InvalidStatement extends Statement {
670 Byte tag = 60; 675 Byte tag = 60;
671 } 676 }
672 677
673 type ExpressionStatement extends Statement { 678 type ExpressionStatement extends Statement {
674 Byte tag = 61; 679 Byte tag = 61;
675 Expression expression; 680 Expression expression;
676 } 681 }
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after
917 922
918 /* enum BaseClassKind { None, Exact, Subclass, Subtype, } */ 923 /* enum BaseClassKind { None, Exact, Subclass, Subtype, } */
919 924
920 type InferredValue { 925 type InferredValue {
921 ClassReference baseClass; // May be NullReference if kind = None. 926 ClassReference baseClass; // May be NullReference if kind = None.
922 Byte kind; // Index into BaseClassKind. 927 Byte kind; // Index into BaseClassKind.
923 Byte valueBits; // See lib/type_propagation/type_propagation.dart 928 Byte valueBits; // See lib/type_propagation/type_propagation.dart
924 } 929 }
925 930
926 ``` 931 ```
OLDNEW
« no previous file with comments | « no previous file | pkg/kernel/lib/ast.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698