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

Side by Side Diff: src/compiler/typer.cc

Issue 1698483002: [arm][arm64] Improve CountTrailingZero implementation. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 10 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
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/compiler/typer.h" 5 #include "src/compiler/typer.h"
6 6
7 #include "src/base/flags.h" 7 #include "src/base/flags.h"
8 #include "src/bootstrapper.h" 8 #include "src/bootstrapper.h"
9 #include "src/compilation-dependencies.h" 9 #include "src/compilation-dependencies.h"
10 #include "src/compiler/common-operator.h" 10 #include "src/compiler/common-operator.h"
(...skipping 1942 matching lines...) Expand 10 before | Expand all | Expand 10 after
1953 1953
1954 Type* Typer::Visitor::TypeWord32Equal(Node* node) { return Type::Boolean(); } 1954 Type* Typer::Visitor::TypeWord32Equal(Node* node) { return Type::Boolean(); }
1955 1955
1956 1956
1957 Type* Typer::Visitor::TypeWord32Clz(Node* node) { return Type::Integral32(); } 1957 Type* Typer::Visitor::TypeWord32Clz(Node* node) { return Type::Integral32(); }
1958 1958
1959 1959
1960 Type* Typer::Visitor::TypeWord32Ctz(Node* node) { return Type::Integral32(); } 1960 Type* Typer::Visitor::TypeWord32Ctz(Node* node) { return Type::Integral32(); }
1961 1961
1962 1962
1963 Type* Typer::Visitor::TypeWord32ReverseBits(Node* node) {
1964 return Type::Integral32();
1965 }
1966
1967
1963 Type* Typer::Visitor::TypeWord32Popcnt(Node* node) { 1968 Type* Typer::Visitor::TypeWord32Popcnt(Node* node) {
1964 return Type::Integral32(); 1969 return Type::Integral32();
1965 } 1970 }
1966 1971
1967 1972
1968 Type* Typer::Visitor::TypeWord64And(Node* node) { return Type::Internal(); } 1973 Type* Typer::Visitor::TypeWord64And(Node* node) { return Type::Internal(); }
1969 1974
1970 1975
1971 Type* Typer::Visitor::TypeWord64Or(Node* node) { return Type::Internal(); } 1976 Type* Typer::Visitor::TypeWord64Or(Node* node) { return Type::Internal(); }
1972 1977
(...skipping 12 matching lines...) Expand all
1985 1990
1986 Type* Typer::Visitor::TypeWord64Ror(Node* node) { return Type::Internal(); } 1991 Type* Typer::Visitor::TypeWord64Ror(Node* node) { return Type::Internal(); }
1987 1992
1988 1993
1989 Type* Typer::Visitor::TypeWord64Clz(Node* node) { return Type::Internal(); } 1994 Type* Typer::Visitor::TypeWord64Clz(Node* node) { return Type::Internal(); }
1990 1995
1991 1996
1992 Type* Typer::Visitor::TypeWord64Ctz(Node* node) { return Type::Internal(); } 1997 Type* Typer::Visitor::TypeWord64Ctz(Node* node) { return Type::Internal(); }
1993 1998
1994 1999
2000 Type* Typer::Visitor::TypeWord64ReverseBits(Node* node) {
2001 return Type::Internal();
2002 }
2003
2004
1995 Type* Typer::Visitor::TypeWord64Popcnt(Node* node) { return Type::Internal(); } 2005 Type* Typer::Visitor::TypeWord64Popcnt(Node* node) { return Type::Internal(); }
1996 2006
1997 2007
1998 Type* Typer::Visitor::TypeWord64Equal(Node* node) { return Type::Boolean(); } 2008 Type* Typer::Visitor::TypeWord64Equal(Node* node) { return Type::Boolean(); }
1999 2009
2000 2010
2001 Type* Typer::Visitor::TypeInt32Add(Node* node) { return Type::Integral32(); } 2011 Type* Typer::Visitor::TypeInt32Add(Node* node) { return Type::Integral32(); }
2002 2012
2003 2013
2004 Type* Typer::Visitor::TypeInt32AddWithOverflow(Node* node) { 2014 Type* Typer::Visitor::TypeInt32AddWithOverflow(Node* node) {
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after
2423 } 2433 }
2424 if (Type::IsInteger(*value)) { 2434 if (Type::IsInteger(*value)) {
2425 return Type::Range(value->Number(), value->Number(), zone()); 2435 return Type::Range(value->Number(), value->Number(), zone());
2426 } 2436 }
2427 return Type::Constant(value, zone()); 2437 return Type::Constant(value, zone());
2428 } 2438 }
2429 2439
2430 } // namespace compiler 2440 } // namespace compiler
2431 } // namespace internal 2441 } // namespace internal
2432 } // namespace v8 2442 } // namespace v8
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698