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

Side by Side Diff: runtime/vm/kernel_binary.cc

Issue 2680303002: Kernel debugging; service tests (Closed)
Patch Set: Address comments Created 3 years, 9 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 | « runtime/vm/kernel.h ('k') | runtime/vm/kernel_to_il.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 #if !defined(DART_PRECOMPILED_RUNTIME) 4 #if !defined(DART_PRECOMPILED_RUNTIME)
5 5
6 #include "platform/globals.h" 6 #include "platform/globals.h"
7 #include "vm/flags.h" 7 #include "vm/flags.h"
8 #include "vm/growable_array.h" 8 #include "vm/growable_array.h"
9 #include "vm/kernel.h" 9 #include "vm/kernel.h"
10 #include "vm/kernel_to_il.h" 10 #include "vm/kernel_to_il.h"
(...skipping 1106 matching lines...) Expand 10 before | Expand all | Expand 10 after
1117 StaticGet* get = new StaticGet(); 1117 StaticGet* get = new StaticGet();
1118 get->position_ = reader->ReadPosition(); 1118 get->position_ = reader->ReadPosition();
1119 get->target_reference_ = Reference::ReadMemberFrom(reader); 1119 get->target_reference_ = Reference::ReadMemberFrom(reader);
1120 return get; 1120 return get;
1121 } 1121 }
1122 1122
1123 1123
1124 StaticSet* StaticSet::ReadFrom(Reader* reader) { 1124 StaticSet* StaticSet::ReadFrom(Reader* reader) {
1125 TRACE_READ_OFFSET(); 1125 TRACE_READ_OFFSET();
1126 StaticSet* set = new StaticSet(); 1126 StaticSet* set = new StaticSet();
1127 set->position_ = reader->ReadPosition();
1127 set->target_reference_ = Reference::ReadMemberFrom(reader); 1128 set->target_reference_ = Reference::ReadMemberFrom(reader);
1128 set->expression_ = Expression::ReadFrom(reader); 1129 set->expression_ = Expression::ReadFrom(reader);
1129 return set; 1130 return set;
1130 } 1131 }
1131 1132
1132 1133
1133 Arguments* Arguments::ReadFrom(Reader* reader) { 1134 Arguments* Arguments::ReadFrom(Reader* reader) {
1134 TRACE_READ_OFFSET(); 1135 TRACE_READ_OFFSET();
1135 Arguments* arguments = new Arguments(); 1136 Arguments* arguments = new Arguments();
1136 arguments->types().ReadFromStatic<DartType>(reader); 1137 arguments->types().ReadFromStatic<DartType>(reader);
(...skipping 101 matching lines...) Expand 10 before | Expand all | Expand 10 after
1238 expr->position_ = reader->ReadPosition(); 1239 expr->position_ = reader->ReadPosition();
1239 expr->operand_ = Expression::ReadFrom(reader); 1240 expr->operand_ = Expression::ReadFrom(reader);
1240 expr->type_ = DartType::ReadFrom(reader); 1241 expr->type_ = DartType::ReadFrom(reader);
1241 return expr; 1242 return expr;
1242 } 1243 }
1243 1244
1244 1245
1245 AsExpression* AsExpression::ReadFrom(Reader* reader) { 1246 AsExpression* AsExpression::ReadFrom(Reader* reader) {
1246 TRACE_READ_OFFSET(); 1247 TRACE_READ_OFFSET();
1247 AsExpression* expr = new AsExpression(); 1248 AsExpression* expr = new AsExpression();
1249 expr->position_ = reader->ReadPosition();
1248 expr->operand_ = Expression::ReadFrom(reader); 1250 expr->operand_ = Expression::ReadFrom(reader);
1249 expr->type_ = DartType::ReadFrom(reader); 1251 expr->type_ = DartType::ReadFrom(reader);
1250 return expr; 1252 return expr;
1251 } 1253 }
1252 1254
1253 1255
1254 StringLiteral* StringLiteral::ReadFrom(Reader* reader) { 1256 StringLiteral* StringLiteral::ReadFrom(Reader* reader) {
1255 TRACE_READ_OFFSET(); 1257 TRACE_READ_OFFSET();
1256 return new StringLiteral(Reference::ReadStringFrom(reader)); 1258 return new StringLiteral(Reference::ReadStringFrom(reader));
1257 } 1259 }
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after
1319 1321
1320 1322
1321 ThisExpression* ThisExpression::ReadFrom(Reader* reader) { 1323 ThisExpression* ThisExpression::ReadFrom(Reader* reader) {
1322 TRACE_READ_OFFSET(); 1324 TRACE_READ_OFFSET();
1323 return new ThisExpression(); 1325 return new ThisExpression();
1324 } 1326 }
1325 1327
1326 1328
1327 Rethrow* Rethrow::ReadFrom(Reader* reader) { 1329 Rethrow* Rethrow::ReadFrom(Reader* reader) {
1328 TRACE_READ_OFFSET(); 1330 TRACE_READ_OFFSET();
1329 return new Rethrow(); 1331 Rethrow* rethrow = new Rethrow();
1332 rethrow->position_ = reader->ReadPosition();
1333 return rethrow;
1330 } 1334 }
1331 1335
1332 1336
1333 Throw* Throw::ReadFrom(Reader* reader) { 1337 Throw* Throw::ReadFrom(Reader* reader) {
1334 TRACE_READ_OFFSET(); 1338 TRACE_READ_OFFSET();
1335 Throw* t = new Throw(); 1339 Throw* t = new Throw();
1336 t->position_ = reader->ReadPosition(); 1340 t->position_ = reader->ReadPosition();
1337 t->expression_ = Expression::ReadFrom(reader); 1341 t->expression_ = Expression::ReadFrom(reader);
1338 return t; 1342 return t;
1339 } 1343 }
1340 1344
1341 1345
1342 ListLiteral* ListLiteral::ReadFrom(Reader* reader, bool is_const) { 1346 ListLiteral* ListLiteral::ReadFrom(Reader* reader, bool is_const) {
1343 TRACE_READ_OFFSET(); 1347 TRACE_READ_OFFSET();
1344 ListLiteral* literal = new ListLiteral(); 1348 ListLiteral* literal = new ListLiteral();
1345 literal->is_const_ = is_const; 1349 literal->is_const_ = is_const;
1350 literal->position_ = reader->ReadPosition();
1346 literal->type_ = DartType::ReadFrom(reader); 1351 literal->type_ = DartType::ReadFrom(reader);
1347 literal->expressions_.ReadFromStatic<Expression>(reader); 1352 literal->expressions_.ReadFromStatic<Expression>(reader);
1348 return literal; 1353 return literal;
1349 } 1354 }
1350 1355
1351 1356
1352 MapLiteral* MapLiteral::ReadFrom(Reader* reader, bool is_const) { 1357 MapLiteral* MapLiteral::ReadFrom(Reader* reader, bool is_const) {
1353 TRACE_READ_OFFSET(); 1358 TRACE_READ_OFFSET();
1354 MapLiteral* literal = new MapLiteral(); 1359 MapLiteral* literal = new MapLiteral();
1355 literal->is_const_ = is_const; 1360 literal->is_const_ = is_const;
(...skipping 145 matching lines...) Expand 10 before | Expand all | Expand 10 after
1501 reader->helper()->labels()->Push(stmt); 1506 reader->helper()->labels()->Push(stmt);
1502 stmt->body_ = Statement::ReadFrom(reader); 1507 stmt->body_ = Statement::ReadFrom(reader);
1503 reader->helper()->labels()->Pop(stmt); 1508 reader->helper()->labels()->Pop(stmt);
1504 return stmt; 1509 return stmt;
1505 } 1510 }
1506 1511
1507 1512
1508 BreakStatement* BreakStatement::ReadFrom(Reader* reader) { 1513 BreakStatement* BreakStatement::ReadFrom(Reader* reader) {
1509 TRACE_READ_OFFSET(); 1514 TRACE_READ_OFFSET();
1510 BreakStatement* stmt = new BreakStatement(); 1515 BreakStatement* stmt = new BreakStatement();
1516 stmt->position_ = reader->ReadPosition();
1511 stmt->target_ = reader->helper()->labels()->Lookup(reader->ReadUInt()); 1517 stmt->target_ = reader->helper()->labels()->Lookup(reader->ReadUInt());
1512 return stmt; 1518 return stmt;
1513 } 1519 }
1514 1520
1515 1521
1516 WhileStatement* WhileStatement::ReadFrom(Reader* reader) { 1522 WhileStatement* WhileStatement::ReadFrom(Reader* reader) {
1517 TRACE_READ_OFFSET(); 1523 TRACE_READ_OFFSET();
1518 WhileStatement* stmt = new WhileStatement(); 1524 WhileStatement* stmt = new WhileStatement();
1519 stmt->condition_ = Expression::ReadFrom(reader); 1525 stmt->condition_ = Expression::ReadFrom(reader);
1520 stmt->body_ = Statement::ReadFrom(reader); 1526 stmt->body_ = Statement::ReadFrom(reader);
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
1681 return VariableDeclaration::ReadFromImpl(reader); 1687 return VariableDeclaration::ReadFromImpl(reader);
1682 } 1688 }
1683 1689
1684 1690
1685 VariableDeclaration* VariableDeclaration::ReadFromImpl(Reader* reader) { 1691 VariableDeclaration* VariableDeclaration::ReadFromImpl(Reader* reader) {
1686 TRACE_READ_OFFSET(); 1692 TRACE_READ_OFFSET();
1687 PositionScope scope(reader); 1693 PositionScope scope(reader);
1688 1694
1689 VariableDeclaration* decl = new VariableDeclaration(); 1695 VariableDeclaration* decl = new VariableDeclaration();
1690 decl->position_ = reader->ReadPosition(); 1696 decl->position_ = reader->ReadPosition();
1697 decl->equals_position_ = reader->ReadPosition();
1691 decl->flags_ = reader->ReadFlags(); 1698 decl->flags_ = reader->ReadFlags();
1692 decl->name_ = Reference::ReadStringFrom(reader); 1699 decl->name_ = Reference::ReadStringFrom(reader);
1693 decl->type_ = DartType::ReadFrom(reader); 1700 decl->type_ = DartType::ReadFrom(reader);
1694 decl->inferred_value_ = reader->ReadOptional<InferredValue>(); 1701 decl->inferred_value_ = reader->ReadOptional<InferredValue>();
1695 decl->initializer_ = reader->ReadOptional<Expression>(); 1702 decl->initializer_ = reader->ReadOptional<Expression>();
1696 1703
1697 // Go to next token position so it ends *after* the last potentially 1704 // Go to next token position so it ends *after* the last potentially
1698 // debuggable position in the initializer. 1705 // debuggable position in the initializer.
1699 TokenPosition position = reader->max_position(); 1706 TokenPosition position = reader->max_position();
1700 if (position.IsReal()) position.Next(); 1707 if (position.IsReal()) position.Next();
(...skipping 224 matching lines...) Expand 10 before | Expand all | Expand 10 after
1925 1932
1926 kernel::Program* ReadPrecompiledKernelFromBuffer(const uint8_t* buffer, 1933 kernel::Program* ReadPrecompiledKernelFromBuffer(const uint8_t* buffer,
1927 intptr_t buffer_length) { 1934 intptr_t buffer_length) {
1928 kernel::Reader reader(buffer, buffer_length); 1935 kernel::Reader reader(buffer, buffer_length);
1929 return kernel::Program::ReadFrom(&reader); 1936 return kernel::Program::ReadFrom(&reader);
1930 } 1937 }
1931 1938
1932 1939
1933 } // namespace dart 1940 } // namespace dart
1934 #endif // !defined(DART_PRECOMPILED_RUNTIME) 1941 #endif // !defined(DART_PRECOMPILED_RUNTIME)
OLDNEW
« no previous file with comments | « runtime/vm/kernel.h ('k') | runtime/vm/kernel_to_il.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698