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

Side by Side Diff: test/cctest/compiler/test-run-intrinsics.cc

Issue 1191283003: [date] Use explicit control flow to replace %_ThrowIfNotADate. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 6 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 | « src/x87/full-codegen-x87.cc ('k') | test/unittests/compiler/js-intrinsic-lowering-unittest.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 2014 the V8 project authors. All rights reserved. 1 // Copyright 2014 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #include "test/cctest/compiler/function-tester.h" 7 #include "test/cctest/compiler/function-tester.h"
8 8
9 using namespace v8::internal; 9 using namespace v8::internal;
10 using namespace v8::internal::compiler; 10 using namespace v8::internal::compiler;
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 T.CheckCall(T.undefined()); 67 T.CheckCall(T.undefined());
68 CHECK_EQ(old_value + 1, *counter.GetInternalPointer()); 68 CHECK_EQ(old_value + 1, *counter.GetInternalPointer());
69 } 69 }
70 70
71 #undef COUNTER_NAME 71 #undef COUNTER_NAME
72 72
73 73
74 TEST(IsArray) { 74 TEST(IsArray) {
75 FunctionTester T("(function(a) { return %_IsArray(a); })", flags); 75 FunctionTester T("(function(a) { return %_IsArray(a); })", flags);
76 76
77 T.CheckFalse(T.NewObject("new Date()"));
77 T.CheckFalse(T.NewObject("(function() {})")); 78 T.CheckFalse(T.NewObject("(function() {})"));
78 T.CheckTrue(T.NewObject("([1])")); 79 T.CheckTrue(T.NewObject("([1])"));
79 T.CheckFalse(T.NewObject("({})")); 80 T.CheckFalse(T.NewObject("({})"));
80 T.CheckFalse(T.NewObject("(/x/)")); 81 T.CheckFalse(T.NewObject("(/x/)"));
81 T.CheckFalse(T.undefined()); 82 T.CheckFalse(T.undefined());
82 T.CheckFalse(T.null()); 83 T.CheckFalse(T.null());
83 T.CheckFalse(T.Val("x")); 84 T.CheckFalse(T.Val("x"));
84 T.CheckFalse(T.Val(1)); 85 T.CheckFalse(T.Val(1));
85 } 86 }
86 87
87 88
89 TEST(IsDate) {
90 FunctionTester T("(function(a) { return %_IsDate(a); })", flags);
91
92 T.CheckTrue(T.NewObject("new Date()"));
93 T.CheckFalse(T.NewObject("(function() {})"));
94 T.CheckFalse(T.NewObject("([1])"));
95 T.CheckFalse(T.NewObject("({})"));
96 T.CheckFalse(T.NewObject("(/x/)"));
97 T.CheckFalse(T.undefined());
98 T.CheckFalse(T.null());
99 T.CheckFalse(T.Val("x"));
100 T.CheckFalse(T.Val(1));
101 }
102
103
88 TEST(IsFunction) { 104 TEST(IsFunction) {
89 FunctionTester T("(function(a) { return %_IsFunction(a); })", flags); 105 FunctionTester T("(function(a) { return %_IsFunction(a); })", flags);
90 106
107 T.CheckFalse(T.NewObject("new Date()"));
91 T.CheckTrue(T.NewObject("(function() {})")); 108 T.CheckTrue(T.NewObject("(function() {})"));
92 T.CheckFalse(T.NewObject("([1])")); 109 T.CheckFalse(T.NewObject("([1])"));
93 T.CheckFalse(T.NewObject("({})")); 110 T.CheckFalse(T.NewObject("({})"));
94 T.CheckFalse(T.NewObject("(/x/)")); 111 T.CheckFalse(T.NewObject("(/x/)"));
95 T.CheckFalse(T.undefined()); 112 T.CheckFalse(T.undefined());
96 T.CheckFalse(T.null()); 113 T.CheckFalse(T.null());
97 T.CheckFalse(T.Val("x")); 114 T.CheckFalse(T.Val("x"));
98 T.CheckFalse(T.Val(1)); 115 T.CheckFalse(T.Val(1));
99 } 116 }
100 117
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after
133 T.CheckFalse(T.undefined()); 150 T.CheckFalse(T.undefined());
134 T.CheckTrue(T.null()); 151 T.CheckTrue(T.null());
135 T.CheckFalse(T.Val("x")); 152 T.CheckFalse(T.Val("x"));
136 T.CheckFalse(T.Val(1)); 153 T.CheckFalse(T.Val(1));
137 } 154 }
138 155
139 156
140 TEST(IsRegExp) { 157 TEST(IsRegExp) {
141 FunctionTester T("(function(a) { return %_IsRegExp(a); })", flags); 158 FunctionTester T("(function(a) { return %_IsRegExp(a); })", flags);
142 159
160 T.CheckFalse(T.NewObject("new Date()"));
143 T.CheckFalse(T.NewObject("(function() {})")); 161 T.CheckFalse(T.NewObject("(function() {})"));
144 T.CheckFalse(T.NewObject("([1])")); 162 T.CheckFalse(T.NewObject("([1])"));
145 T.CheckFalse(T.NewObject("({})")); 163 T.CheckFalse(T.NewObject("({})"));
146 T.CheckTrue(T.NewObject("(/x/)")); 164 T.CheckTrue(T.NewObject("(/x/)"));
147 T.CheckFalse(T.undefined()); 165 T.CheckFalse(T.undefined());
148 T.CheckFalse(T.null()); 166 T.CheckFalse(T.null());
149 T.CheckFalse(T.Val("x")); 167 T.CheckFalse(T.Val("x"));
150 T.CheckFalse(T.Val(1)); 168 T.CheckFalse(T.Val(1));
151 } 169 }
152 170
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
327 345
328 346
329 TEST(ValueOf) { 347 TEST(ValueOf) {
330 FunctionTester T("(function(a) { return %_ValueOf(a); })", flags); 348 FunctionTester T("(function(a) { return %_ValueOf(a); })", flags);
331 349
332 T.CheckCall(T.Val("a"), T.Val("a")); 350 T.CheckCall(T.Val("a"), T.Val("a"));
333 T.CheckCall(T.Val("b"), T.NewObject("(new String('b'))")); 351 T.CheckCall(T.Val("b"), T.NewObject("(new String('b'))"));
334 T.CheckCall(T.Val(123), T.Val(123)); 352 T.CheckCall(T.Val(123), T.Val(123));
335 T.CheckCall(T.Val(456), T.NewObject("(new Number(456))")); 353 T.CheckCall(T.Val(456), T.NewObject("(new Number(456))"));
336 } 354 }
OLDNEW
« no previous file with comments | « src/x87/full-codegen-x87.cc ('k') | test/unittests/compiler/js-intrinsic-lowering-unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698