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

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

Issue 1947393003: - Use a map to lookup libraries by URL. (Closed) Base URL: git@github.com:dart-lang/sdk.git@master
Patch Set: Created 4 years, 7 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/object_store.cc ('k') | runtime/vm/parser.cc » ('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) 2012, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2012, 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 4
5 #include "platform/globals.h" 5 #include "platform/globals.h"
6 6
7 #include "vm/assembler.h" 7 #include "vm/assembler.h"
8 #include "vm/class_finalizer.h" 8 #include "vm/class_finalizer.h"
9 #include "vm/dart_api_impl.h" 9 #include "vm/dart_api_impl.h"
10 #include "vm/dart_entry.h" 10 #include "vm/dart_entry.h"
(...skipping 3994 matching lines...) Expand 10 before | Expand all | Expand 10 after
4005 " return b > 1 ?\n" 4005 " return b > 1 ?\n"
4006 " b - 2 : b;\n" 4006 " b - 2 : b;\n"
4007 " }\n" 4007 " }\n"
4008 " void test6(int a) {\n" 4008 " void test6(int a) {\n"
4009 " return a > 1 ? a + 1 : a;\n" 4009 " return a > 1 ? a + 1 : a;\n"
4010 " }\n" 4010 " }\n"
4011 "}"; 4011 "}";
4012 TestCase::LoadTestScript(kScriptChars, NULL); 4012 TestCase::LoadTestScript(kScriptChars, NULL);
4013 EXPECT(ClassFinalizer::ProcessPendingClasses()); 4013 EXPECT(ClassFinalizer::ProcessPendingClasses());
4014 const String& name = String::Handle(String::New(TestCase::url())); 4014 const String& name = String::Handle(String::New(TestCase::url()));
4015 const Library& lib = Library::Handle(Library::LookupLibrary(name)); 4015 const Library& lib = Library::Handle(Library::LookupLibrary(thread, name));
4016 EXPECT(!lib.IsNull()); 4016 EXPECT(!lib.IsNull());
4017 4017
4018 const Class& class_a = Class::Handle( 4018 const Class& class_a = Class::Handle(
4019 lib.LookupClass(String::Handle(Symbols::New(thread, "A")))); 4019 lib.LookupClass(String::Handle(Symbols::New(thread, "A"))));
4020 const Class& class_b = Class::Handle( 4020 const Class& class_b = Class::Handle(
4021 lib.LookupClass(String::Handle(Symbols::New(thread, "B")))); 4021 lib.LookupClass(String::Handle(Symbols::New(thread, "B"))));
4022 const Function& a_test1 = 4022 const Function& a_test1 =
4023 Function::Handle(GetStaticFunction(class_a, "test1")); 4023 Function::Handle(GetStaticFunction(class_a, "test1"));
4024 const Function& b_test1 = 4024 const Function& b_test1 =
4025 Function::Handle(GetStaticFunction(class_b, "test1")); 4025 Function::Handle(GetStaticFunction(class_b, "test1"));
(...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after
4070 const int kBreakpointLine = 5; 4070 const int kBreakpointLine = 5;
4071 Dart_Handle lib = TestCase::LoadTestScript(kScriptChars, NULL); 4071 Dart_Handle lib = TestCase::LoadTestScript(kScriptChars, NULL);
4072 EXPECT_VALID(lib); 4072 EXPECT_VALID(lib);
4073 4073
4074 // Run function A.b one time. 4074 // Run function A.b one time.
4075 Dart_Handle result = Dart_Invoke(lib, NewString("test"), 0, NULL); 4075 Dart_Handle result = Dart_Invoke(lib, NewString("test"), 0, NULL);
4076 EXPECT_VALID(result); 4076 EXPECT_VALID(result);
4077 4077
4078 // With no breakpoint, function A.b is inlineable. 4078 // With no breakpoint, function A.b is inlineable.
4079 const String& name = String::Handle(String::New(TestCase::url())); 4079 const String& name = String::Handle(String::New(TestCase::url()));
4080 const Library& vmlib = Library::Handle(Library::LookupLibrary(name)); 4080 const Library& vmlib = Library::Handle(Library::LookupLibrary(thread, name));
4081 EXPECT(!vmlib.IsNull()); 4081 EXPECT(!vmlib.IsNull());
4082 const Class& class_a = Class::Handle( 4082 const Class& class_a = Class::Handle(
4083 vmlib.LookupClass(String::Handle(Symbols::New(thread, "A")))); 4083 vmlib.LookupClass(String::Handle(Symbols::New(thread, "A"))));
4084 const Function& func_b = 4084 const Function& func_b =
4085 Function::Handle(GetFunction(class_a, "b")); 4085 Function::Handle(GetFunction(class_a, "b"));
4086 EXPECT(func_b.CanBeInlined()); 4086 EXPECT(func_b.CanBeInlined());
4087 4087
4088 // After setting a breakpoint in a function A.b, it is no longer inlineable. 4088 // After setting a breakpoint in a function A.b, it is no longer inlineable.
4089 Breakpoint* bpt = 4089 Breakpoint* bpt =
4090 Isolate::Current()->debugger()->SetBreakpointAtLine(name, 4090 Isolate::Current()->debugger()->SetBreakpointAtLine(name,
(...skipping 636 matching lines...) Expand 10 before | Expand all | Expand 10 after
4727 String& test = String::Handle(); 4727 String& test = String::Handle();
4728 String& result = String::Handle(); 4728 String& result = String::Handle();
4729 for (size_t i = 0; i < ARRAY_SIZE(tests); i++) { 4729 for (size_t i = 0; i < ARRAY_SIZE(tests); i++) {
4730 test = String::New(tests[i].in); 4730 test = String::New(tests[i].in);
4731 result = String::ScrubName(test); 4731 result = String::ScrubName(test);
4732 EXPECT_STREQ(tests[i].out, result.ToCString()); 4732 EXPECT_STREQ(tests[i].out, result.ToCString());
4733 } 4733 }
4734 } 4734 }
4735 4735
4736 } // namespace dart 4736 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/vm/object_store.cc ('k') | runtime/vm/parser.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698