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

Side by Side Diff: src/ast.cc

Issue 10083038: Make functions with switch statements inlinable. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 8 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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 1006 matching lines...) Expand 10 before | Expand all | Expand 10 after
1017 1017
1018 REGULAR_NODE(VariableDeclaration) 1018 REGULAR_NODE(VariableDeclaration)
1019 REGULAR_NODE(FunctionDeclaration) 1019 REGULAR_NODE(FunctionDeclaration)
1020 REGULAR_NODE(Block) 1020 REGULAR_NODE(Block)
1021 REGULAR_NODE(ExpressionStatement) 1021 REGULAR_NODE(ExpressionStatement)
1022 REGULAR_NODE(EmptyStatement) 1022 REGULAR_NODE(EmptyStatement)
1023 REGULAR_NODE(IfStatement) 1023 REGULAR_NODE(IfStatement)
1024 REGULAR_NODE(ContinueStatement) 1024 REGULAR_NODE(ContinueStatement)
1025 REGULAR_NODE(BreakStatement) 1025 REGULAR_NODE(BreakStatement)
1026 REGULAR_NODE(ReturnStatement) 1026 REGULAR_NODE(ReturnStatement)
1027 REGULAR_NODE(SwitchStatement)
1027 REGULAR_NODE(Conditional) 1028 REGULAR_NODE(Conditional)
1028 REGULAR_NODE(Literal) 1029 REGULAR_NODE(Literal)
1029 REGULAR_NODE(ObjectLiteral) 1030 REGULAR_NODE(ObjectLiteral)
1030 REGULAR_NODE(Assignment) 1031 REGULAR_NODE(Assignment)
1031 REGULAR_NODE(Throw) 1032 REGULAR_NODE(Throw)
1032 REGULAR_NODE(Property) 1033 REGULAR_NODE(Property)
1033 REGULAR_NODE(UnaryOperation) 1034 REGULAR_NODE(UnaryOperation)
1034 REGULAR_NODE(CountOperation) 1035 REGULAR_NODE(CountOperation)
1035 REGULAR_NODE(BinaryOperation) 1036 REGULAR_NODE(BinaryOperation)
1036 REGULAR_NODE(CompareOperation) 1037 REGULAR_NODE(CompareOperation)
(...skipping 12 matching lines...) Expand all
1049 DONT_OPTIMIZE_NODE(ModuleLiteral) 1050 DONT_OPTIMIZE_NODE(ModuleLiteral)
1050 DONT_OPTIMIZE_NODE(ModuleVariable) 1051 DONT_OPTIMIZE_NODE(ModuleVariable)
1051 DONT_OPTIMIZE_NODE(ModulePath) 1052 DONT_OPTIMIZE_NODE(ModulePath)
1052 DONT_OPTIMIZE_NODE(ModuleUrl) 1053 DONT_OPTIMIZE_NODE(ModuleUrl)
1053 DONT_OPTIMIZE_NODE(WithStatement) 1054 DONT_OPTIMIZE_NODE(WithStatement)
1054 DONT_OPTIMIZE_NODE(TryCatchStatement) 1055 DONT_OPTIMIZE_NODE(TryCatchStatement)
1055 DONT_OPTIMIZE_NODE(TryFinallyStatement) 1056 DONT_OPTIMIZE_NODE(TryFinallyStatement)
1056 DONT_OPTIMIZE_NODE(DebuggerStatement) 1057 DONT_OPTIMIZE_NODE(DebuggerStatement)
1057 DONT_OPTIMIZE_NODE(SharedFunctionInfoLiteral) 1058 DONT_OPTIMIZE_NODE(SharedFunctionInfoLiteral)
1058 1059
1059 DONT_INLINE_NODE(SwitchStatement)
1060 DONT_INLINE_NODE(FunctionLiteral) 1060 DONT_INLINE_NODE(FunctionLiteral)
1061 DONT_INLINE_NODE(RegExpLiteral) // TODO(1322): Allow materialized literals. 1061 DONT_INLINE_NODE(RegExpLiteral) // TODO(1322): Allow materialized literals.
1062 DONT_INLINE_NODE(ArrayLiteral) // TODO(1322): Allow materialized literals. 1062 DONT_INLINE_NODE(ArrayLiteral) // TODO(1322): Allow materialized literals.
1063 1063
1064 DONT_SELFOPTIMIZE_NODE(DoWhileStatement) 1064 DONT_SELFOPTIMIZE_NODE(DoWhileStatement)
1065 DONT_SELFOPTIMIZE_NODE(WhileStatement) 1065 DONT_SELFOPTIMIZE_NODE(WhileStatement)
1066 DONT_SELFOPTIMIZE_NODE(ForStatement) 1066 DONT_SELFOPTIMIZE_NODE(ForStatement)
1067 DONT_SELFOPTIMIZE_NODE(ForInStatement) 1067 DONT_SELFOPTIMIZE_NODE(ForInStatement)
1068 1068
1069 void AstConstructionVisitor::VisitCallRuntime(CallRuntime* node) { 1069 void AstConstructionVisitor::VisitCallRuntime(CallRuntime* node) {
(...skipping 29 matching lines...) Expand all
1099 OS::SNPrintF(buffer, "%d", Smi::cast(*handle_)->value()); 1099 OS::SNPrintF(buffer, "%d", Smi::cast(*handle_)->value());
1100 str = arr; 1100 str = arr;
1101 } else { 1101 } else {
1102 str = DoubleToCString(handle_->Number(), buffer); 1102 str = DoubleToCString(handle_->Number(), buffer);
1103 } 1103 }
1104 return FACTORY->NewStringFromAscii(CStrVector(str)); 1104 return FACTORY->NewStringFromAscii(CStrVector(str));
1105 } 1105 }
1106 1106
1107 1107
1108 } } // namespace v8::internal 1108 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698