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

Side by Side Diff: src/compiler/machine-operator.cc

Issue 654833002: [turbofan] Optimize division/modulus by constant. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 2 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 | « src/compiler/machine-operator.h ('k') | src/compiler/machine-operator-reducer.h » ('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/compiler/machine-operator.h" 5 #include "src/compiler/machine-operator.h"
6 6
7 #include "src/base/lazy-instance.h" 7 #include "src/base/lazy-instance.h"
8 #include "src/compiler/opcodes.h" 8 #include "src/compiler/opcodes.h"
9 #include "src/compiler/operator.h" 9 #include "src/compiler/operator.h"
10 10
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
68 V(Word64Shr, Operator::kNoProperties, 2, 1) \ 68 V(Word64Shr, Operator::kNoProperties, 2, 1) \
69 V(Word64Sar, Operator::kNoProperties, 2, 1) \ 69 V(Word64Sar, Operator::kNoProperties, 2, 1) \
70 V(Word64Ror, Operator::kNoProperties, 2, 1) \ 70 V(Word64Ror, Operator::kNoProperties, 2, 1) \
71 V(Word64Equal, Operator::kCommutative, 2, 1) \ 71 V(Word64Equal, Operator::kCommutative, 2, 1) \
72 V(Int32Add, Operator::kAssociative | Operator::kCommutative, 2, 1) \ 72 V(Int32Add, Operator::kAssociative | Operator::kCommutative, 2, 1) \
73 V(Int32AddWithOverflow, Operator::kAssociative | Operator::kCommutative, 2, \ 73 V(Int32AddWithOverflow, Operator::kAssociative | Operator::kCommutative, 2, \
74 2) \ 74 2) \
75 V(Int32Sub, Operator::kNoProperties, 2, 1) \ 75 V(Int32Sub, Operator::kNoProperties, 2, 1) \
76 V(Int32SubWithOverflow, Operator::kNoProperties, 2, 2) \ 76 V(Int32SubWithOverflow, Operator::kNoProperties, 2, 2) \
77 V(Int32Mul, Operator::kAssociative | Operator::kCommutative, 2, 1) \ 77 V(Int32Mul, Operator::kAssociative | Operator::kCommutative, 2, 1) \
78 V(Int32MulHigh, Operator::kAssociative | Operator::kCommutative, 2, 1) \
78 V(Int32Div, Operator::kNoProperties, 2, 1) \ 79 V(Int32Div, Operator::kNoProperties, 2, 1) \
79 V(Int32Mod, Operator::kNoProperties, 2, 1) \ 80 V(Int32Mod, Operator::kNoProperties, 2, 1) \
80 V(Int32LessThan, Operator::kNoProperties, 2, 1) \ 81 V(Int32LessThan, Operator::kNoProperties, 2, 1) \
81 V(Int32LessThanOrEqual, Operator::kNoProperties, 2, 1) \ 82 V(Int32LessThanOrEqual, Operator::kNoProperties, 2, 1) \
82 V(Uint32Div, Operator::kNoProperties, 2, 1) \ 83 V(Uint32Div, Operator::kNoProperties, 2, 1) \
83 V(Uint32LessThan, Operator::kNoProperties, 2, 1) \ 84 V(Uint32LessThan, Operator::kNoProperties, 2, 1) \
84 V(Uint32LessThanOrEqual, Operator::kNoProperties, 2, 1) \ 85 V(Uint32LessThanOrEqual, Operator::kNoProperties, 2, 1) \
85 V(Uint32Mod, Operator::kNoProperties, 2, 1) \ 86 V(Uint32Mod, Operator::kNoProperties, 2, 1) \
86 V(Int64Add, Operator::kAssociative | Operator::kCommutative, 2, 1) \ 87 V(Int64Add, Operator::kAssociative | Operator::kCommutative, 2, 1) \
87 V(Int64Sub, Operator::kNoProperties, 2, 1) \ 88 V(Int64Sub, Operator::kNoProperties, 2, 1) \
(...skipping 144 matching lines...) Expand 10 before | Expand all | Expand 10 after
232 default: 233 default:
233 break; 234 break;
234 } 235 }
235 UNREACHABLE(); 236 UNREACHABLE();
236 return NULL; 237 return NULL;
237 } 238 }
238 239
239 } // namespace compiler 240 } // namespace compiler
240 } // namespace internal 241 } // namespace internal
241 } // namespace v8 242 } // namespace v8
OLDNEW
« no previous file with comments | « src/compiler/machine-operator.h ('k') | src/compiler/machine-operator-reducer.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698