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

Side by Side Diff: pkg/compiler/lib/src/ssa/builder.dart

Issue 767643002: dart2js: Make usage of names more consistent between compiler and runtime. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Address comments. Created 6 years 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
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 part of ssa; 5 part of ssa;
6 6
7 class SsaFunctionCompiler implements FunctionCompiler { 7 class SsaFunctionCompiler implements FunctionCompiler {
8 SsaCodeGeneratorTask generator; 8 SsaCodeGeneratorTask generator;
9 SsaBuilderTask builder; 9 SsaBuilderTask builder;
10 SsaOptimizerTask optimizer; 10 SsaOptimizerTask optimizer;
(...skipping 3816 matching lines...) Expand 10 before | Expand all | Expand 10 after
3827 handleForeignJsCallInIsolate(node); 3827 handleForeignJsCallInIsolate(node);
3828 } else if (name == 'DART_CLOSURE_TO_JS') { 3828 } else if (name == 'DART_CLOSURE_TO_JS') {
3829 handleForeignDartClosureToJs(node, 'DART_CLOSURE_TO_JS'); 3829 handleForeignDartClosureToJs(node, 'DART_CLOSURE_TO_JS');
3830 } else if (name == 'RAW_DART_FUNCTION_REF') { 3830 } else if (name == 'RAW_DART_FUNCTION_REF') {
3831 handleForeignRawFunctionRef(node, 'RAW_DART_FUNCTION_REF'); 3831 handleForeignRawFunctionRef(node, 'RAW_DART_FUNCTION_REF');
3832 } else if (name == 'JS_SET_CURRENT_ISOLATE') { 3832 } else if (name == 'JS_SET_CURRENT_ISOLATE') {
3833 handleForeignSetCurrentIsolate(node); 3833 handleForeignSetCurrentIsolate(node);
3834 } else if (name == 'JS_CREATE_ISOLATE') { 3834 } else if (name == 'JS_CREATE_ISOLATE') {
3835 handleForeignCreateIsolate(node); 3835 handleForeignCreateIsolate(node);
3836 } else if (name == 'JS_OPERATOR_IS_PREFIX') { 3836 } else if (name == 'JS_OPERATOR_IS_PREFIX') {
3837 stack.add(addConstantString(backend.namer.operatorIsPrefix())); 3837 // TODO(floitsch): this should be a JS_NAME.
3838 stack.add(addConstantString(backend.namer.operatorIsPrefix));
3838 } else if (name == 'JS_OBJECT_CLASS_NAME') { 3839 } else if (name == 'JS_OBJECT_CLASS_NAME') {
3840 // TODO(floitsch): this should be a JS_NAME.
3839 String name = backend.namer.getRuntimeTypeName(compiler.objectClass); 3841 String name = backend.namer.getRuntimeTypeName(compiler.objectClass);
3840 stack.add(addConstantString(name)); 3842 stack.add(addConstantString(name));
3841 } else if (name == 'JS_NULL_CLASS_NAME') { 3843 } else if (name == 'JS_NULL_CLASS_NAME') {
3844 // TODO(floitsch): this should be a JS_NAME.
3842 String name = backend.namer.getRuntimeTypeName(compiler.nullClass); 3845 String name = backend.namer.getRuntimeTypeName(compiler.nullClass);
3843 stack.add(addConstantString(name)); 3846 stack.add(addConstantString(name));
3844 } else if (name == 'JS_FUNCTION_CLASS_NAME') { 3847 } else if (name == 'JS_FUNCTION_CLASS_NAME') {
3848 // TODO(floitsch): this should be a JS_NAME.
3845 String name = backend.namer.getRuntimeTypeName(compiler.functionClass); 3849 String name = backend.namer.getRuntimeTypeName(compiler.functionClass);
3846 stack.add(addConstantString(name)); 3850 stack.add(addConstantString(name));
3847 } else if (name == 'JS_OPERATOR_AS_PREFIX') { 3851 } else if (name == 'JS_OPERATOR_AS_PREFIX') {
3848 stack.add(addConstantString(backend.namer.operatorAsPrefix())); 3852 // TODO(floitsch): this should be a JS_NAME.
3853 stack.add(addConstantString(backend.namer.operatorAsPrefix));
3849 } else if (name == 'JS_SIGNATURE_NAME') { 3854 } else if (name == 'JS_SIGNATURE_NAME') {
3850 stack.add(addConstantString(backend.namer.operatorSignature())); 3855 // TODO(floitsch): this should be a JS_NAME.
3856 stack.add(addConstantString(backend.namer.operatorSignature));
3857 } else if (name == 'JS_TYPEDEF_TAG') {
3858 // TODO(floitsch): this should be a JS_NAME.
3859 stack.add(addConstantString(backend.namer.typedefTag));
3851 } else if (name == 'JS_FUNCTION_TYPE_TAG') { 3860 } else if (name == 'JS_FUNCTION_TYPE_TAG') {
3852 stack.add(addConstantString(backend.namer.functionTypeTag())); 3861 // TODO(floitsch): this should be a JS_NAME.
3862 stack.add(addConstantString(backend.namer.functionTypeTag));
3853 } else if (name == 'JS_FUNCTION_TYPE_VOID_RETURN_TAG') { 3863 } else if (name == 'JS_FUNCTION_TYPE_VOID_RETURN_TAG') {
3854 stack.add(addConstantString(backend.namer.functionTypeVoidReturnTag())); 3864 // TODO(floitsch): this should be a JS_NAME.
3865 stack.add(addConstantString(backend.namer.functionTypeVoidReturnTag));
3855 } else if (name == 'JS_FUNCTION_TYPE_RETURN_TYPE_TAG') { 3866 } else if (name == 'JS_FUNCTION_TYPE_RETURN_TYPE_TAG') {
3856 stack.add(addConstantString(backend.namer.functionTypeReturnTypeTag())); 3867 // TODO(floitsch): this should be a JS_NAME.
3868 stack.add(addConstantString(backend.namer.functionTypeReturnTypeTag));
3857 } else if (name == 3869 } else if (name ==
3858 'JS_FUNCTION_TYPE_REQUIRED_PARAMETERS_TAG') { 3870 'JS_FUNCTION_TYPE_REQUIRED_PARAMETERS_TAG') {
3871 // TODO(floitsch): this should be a JS_NAME.
3859 stack.add(addConstantString( 3872 stack.add(addConstantString(
3860 backend.namer.functionTypeRequiredParametersTag())); 3873 backend.namer.functionTypeRequiredParametersTag));
3861 } else if (name == 3874 } else if (name ==
3862 'JS_FUNCTION_TYPE_OPTIONAL_PARAMETERS_TAG') { 3875 'JS_FUNCTION_TYPE_OPTIONAL_PARAMETERS_TAG') {
3876 // TODO(floitsch): this should be a JS_NAME.
3863 stack.add(addConstantString( 3877 stack.add(addConstantString(
3864 backend.namer.functionTypeOptionalParametersTag())); 3878 backend.namer.functionTypeOptionalParametersTag));
3865 } else if (name == 3879 } else if (name ==
3866 'JS_FUNCTION_TYPE_NAMED_PARAMETERS_TAG') { 3880 'JS_FUNCTION_TYPE_NAMED_PARAMETERS_TAG') {
3881 // TODO(floitsch): this should be a JS_NAME.
3867 stack.add(addConstantString( 3882 stack.add(addConstantString(
3868 backend.namer.functionTypeNamedParametersTag())); 3883 backend.namer.functionTypeNamedParametersTag));
3869 } else if (name == 'JS_DART_OBJECT_CONSTRUCTOR') { 3884 } else if (name == 'JS_DART_OBJECT_CONSTRUCTOR') {
3870 handleForeignDartObjectJsConstructorFunction(node); 3885 handleForeignDartObjectJsConstructorFunction(node);
3871 } else if (name == 'JS_IS_INDEXABLE_FIELD_NAME') { 3886 } else if (name == 'JS_IS_INDEXABLE_FIELD_NAME') {
3887 // TODO(floitsch): this should be a JS_NAME.
3872 Element element = backend.findHelper('JavaScriptIndexingBehavior'); 3888 Element element = backend.findHelper('JavaScriptIndexingBehavior');
3873 stack.add(addConstantString(backend.namer.operatorIs(element))); 3889 stack.add(addConstantString(backend.namer.operatorIs(element)));
3874 } else if (name == 'JS_CURRENT_ISOLATE') { 3890 } else if (name == 'JS_CURRENT_ISOLATE') {
3875 handleForeignJsCurrentIsolate(node); 3891 handleForeignJsCurrentIsolate(node);
3876 } else if (name == 'JS_GET_NAME') { 3892 } else if (name == 'JS_GET_NAME') {
3877 handleForeignJsGetName(node); 3893 handleForeignJsGetName(node);
3878 } else if (name == 'JS_EMBEDDED_GLOBAL') { 3894 } else if (name == 'JS_EMBEDDED_GLOBAL') {
3879 handleForeignJsEmbeddedGlobal(node); 3895 handleForeignJsEmbeddedGlobal(node);
3880 } else if (name == 'JS_GET_FLAG') { 3896 } else if (name == 'JS_GET_FLAG') {
3881 handleForeingJsGetFlag(node); 3897 handleForeingJsGetFlag(node);
(...skipping 2724 matching lines...) Expand 10 before | Expand all | Expand 10 after
6606 if (unaliased is TypedefType) throw 'unable to unalias $type'; 6622 if (unaliased is TypedefType) throw 'unable to unalias $type';
6607 unaliased.accept(this, builder); 6623 unaliased.accept(this, builder);
6608 } 6624 }
6609 6625
6610 void visitDynamicType(DynamicType type, SsaBuilder builder) { 6626 void visitDynamicType(DynamicType type, SsaBuilder builder) {
6611 JavaScriptBackend backend = builder.compiler.backend; 6627 JavaScriptBackend backend = builder.compiler.backend;
6612 ClassElement cls = backend.findHelper('DynamicRuntimeType'); 6628 ClassElement cls = backend.findHelper('DynamicRuntimeType');
6613 builder.push(new HDynamicType(type, new TypeMask.exact(cls, classWorld))); 6629 builder.push(new HDynamicType(type, new TypeMask.exact(cls, classWorld)));
6614 } 6630 }
6615 } 6631 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698