OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
70 | 70 |
71 // Find the position of a given func source substring in the source. | 71 // Find the position of a given func source substring in the source. |
72 Handle<String> func_pos_str = | 72 Handle<String> func_pos_str = |
73 factory->NewStringFromAsciiChecked(func_pos_src); | 73 factory->NewStringFromAsciiChecked(func_pos_src); |
74 int func_pos = Runtime::StringMatch(isolate, | 74 int func_pos = Runtime::StringMatch(isolate, |
75 script_src, | 75 script_src, |
76 func_pos_str, | 76 func_pos_str, |
77 0); | 77 0); |
78 CHECK_NE(0, func_pos); | 78 CHECK_NE(0, func_pos); |
79 | 79 |
80 #ifdef ENABLE_DEBUGGER_SUPPORT | |
81 // Obtain SharedFunctionInfo for the function. | 80 // Obtain SharedFunctionInfo for the function. |
82 isolate->debug()->PrepareForBreakPoints(); | 81 isolate->debug()->PrepareForBreakPoints(); |
83 Object* shared_func_info_ptr = | 82 Object* shared_func_info_ptr = |
84 isolate->debug()->FindSharedFunctionInfoInScript(i_script, func_pos); | 83 isolate->debug()->FindSharedFunctionInfoInScript(i_script, func_pos); |
85 CHECK(shared_func_info_ptr != CcTest::heap()->undefined_value()); | 84 CHECK(shared_func_info_ptr != CcTest::heap()->undefined_value()); |
86 Handle<SharedFunctionInfo> shared_func_info( | 85 Handle<SharedFunctionInfo> shared_func_info( |
87 SharedFunctionInfo::cast(shared_func_info_ptr)); | 86 SharedFunctionInfo::cast(shared_func_info_ptr)); |
88 | 87 |
89 // Verify inferred function name. | 88 // Verify inferred function name. |
90 SmartArrayPointer<char> inferred_name = | 89 SmartArrayPointer<char> inferred_name = |
91 shared_func_info->inferred_name()->ToCString(); | 90 shared_func_info->inferred_name()->ToCString(); |
92 CHECK_EQ(ref_inferred_name, inferred_name.get()); | 91 CHECK_EQ(ref_inferred_name, inferred_name.get()); |
93 #endif // ENABLE_DEBUGGER_SUPPORT | |
94 } | 92 } |
95 | 93 |
96 | 94 |
97 static v8::Handle<v8::Script> Compile(v8::Isolate* isolate, const char* src) { | 95 static v8::Handle<v8::Script> Compile(v8::Isolate* isolate, const char* src) { |
98 return v8::Script::Compile(v8::String::NewFromUtf8(isolate, src)); | 96 return v8::Script::Compile(v8::String::NewFromUtf8(isolate, src)); |
99 } | 97 } |
100 | 98 |
101 | 99 |
102 TEST(GlobalProperty) { | 100 TEST(GlobalProperty) { |
103 CcTest::InitializeVM(); | 101 CcTest::InitializeVM(); |
(...skipping 395 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
499 " };\n" | 497 " };\n" |
500 " var foo = 10;\n" | 498 " var foo = 10;\n" |
501 " function f() {\n" | 499 " function f() {\n" |
502 " return wrapCode();\n" | 500 " return wrapCode();\n" |
503 " }\n" | 501 " }\n" |
504 " this.ref = f;\n" | 502 " this.ref = f;\n" |
505 "})()"); | 503 "})()"); |
506 script->Run(); | 504 script->Run(); |
507 CheckFunctionName(script, "return 2012", ""); | 505 CheckFunctionName(script, "return 2012", ""); |
508 } | 506 } |
OLD | NEW |