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

Side by Side Diff: pkg/compiler/lib/src/cps_ir/builtin_operator.dart

Issue 1437373002: dart2js cps: Add CharCodeAt builtin. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: rebase Created 5 years, 1 month 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
OLDNEW
1 // Copyright (c) 2015, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2015, 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 library builtin_operator; 4 library builtin_operator;
5 // This is shared by the CPS and Tree IRs. 5 // This is shared by the CPS and Tree IRs.
6 // Both cps_ir_nodes and tree_ir_nodes import and re-export this file. 6 // Both cps_ir_nodes and tree_ir_nodes import and re-export this file.
7 7
8 /// An operator supported natively in the CPS and Tree IRs using the 8 /// An operator supported natively in the CPS and Tree IRs using the
9 /// `ApplyBuiltinOperator` instructions. 9 /// `ApplyBuiltinOperator` instructions.
10 /// 10 ///
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
63 /// Compiles to `(~x) >>> 0`. 63 /// Compiles to `(~x) >>> 0`.
64 NumBitNot, 64 NumBitNot,
65 65
66 /// Concatenates any number of strings. 66 /// Concatenates any number of strings.
67 /// 67 ///
68 /// Takes any number of arguments, and each argument must be a string. 68 /// Takes any number of arguments, and each argument must be a string.
69 /// 69 ///
70 /// Returns the empty string if no arguments are given. 70 /// Returns the empty string if no arguments are given.
71 StringConcatenate, 71 StringConcatenate,
72 72
73 /// Corresponds to `a.charCodeAt(b)`. `a' must be a String. The index `b` must
74 /// be in range `0 <= b < a.length`.
75 CharCodeAt,
sra1 2015/11/23 20:39:32 Question: will GVN hoist this above the bounds che
asgerf 2015/11/24 11:28:31 Yes, nice catch. We should disable lifting for the
76
73 /// Returns true if the two arguments are the same value, and that value is 77 /// Returns true if the two arguments are the same value, and that value is
74 /// not NaN, or if one argument is +0 and the other is -0. 78 /// not NaN, or if one argument is +0 and the other is -0.
75 /// 79 ///
76 /// Compiled as a static method call. 80 /// Compiled as a static method call.
77 Identical, 81 Identical,
78 82
79 /// Like [Identical], except at most one argument may be null. 83 /// Like [Identical], except at most one argument may be null.
80 /// 84 ///
81 /// Compiles to `===`. 85 /// Compiles to `===`.
82 StrictEq, 86 StrictEq,
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
168 /// Compiles to `object.push(x1, ..., xN)`. 172 /// Compiles to `object.push(x1, ..., xN)`.
169 Push, 173 Push,
170 174
171 /// Remove and return the last item from a native list. 175 /// Remove and return the last item from a native list.
172 /// 176 ///
173 /// Takes no arguments. 177 /// Takes no arguments.
174 /// 178 ///
175 /// Compiles to `object.pop()`. 179 /// Compiles to `object.pop()`.
176 Pop, 180 Pop,
177 } 181 }
OLDNEW
« no previous file with comments | « pkg/compiler/lib/src/common/names.dart ('k') | pkg/compiler/lib/src/cps_ir/type_propagation.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698