OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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/hydrogen-instructions.h" | 5 #include "src/crankshaft/hydrogen-store-elimination.h" |
6 #include "src/hydrogen-store-elimination.h" | 6 |
| 7 #include "src/crankshaft/hydrogen-instructions.h" |
7 | 8 |
8 namespace v8 { | 9 namespace v8 { |
9 namespace internal { | 10 namespace internal { |
10 | 11 |
11 #define TRACE(x) if (FLAG_trace_store_elimination) PrintF x | 12 #define TRACE(x) if (FLAG_trace_store_elimination) PrintF x |
12 | 13 |
13 // Performs a block-by-block local analysis for removable stores. | 14 // Performs a block-by-block local analysis for removable stores. |
14 void HStoreEliminationPhase::Run() { | 15 void HStoreEliminationPhase::Run() { |
15 GVNFlagSet flags; // Use GVN flags as an approximation for some instructions. | 16 GVNFlagSet flags; // Use GVN flags as an approximation for some instructions. |
16 flags.RemoveAll(); | 17 flags.RemoveAll(); |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
113 if (instr->DependsOnFlags().ContainsAnyOf(flags)) { | 114 if (instr->DependsOnFlags().ContainsAnyOf(flags)) { |
114 TRACE(("-- Observed stores at I%d (GVN flags of %s)\n", | 115 TRACE(("-- Observed stores at I%d (GVN flags of %s)\n", |
115 instr->id(), instr->Mnemonic())); | 116 instr->id(), instr->Mnemonic())); |
116 unobserved_.Rewind(0); | 117 unobserved_.Rewind(0); |
117 return; | 118 return; |
118 } | 119 } |
119 } | 120 } |
120 | 121 |
121 } // namespace internal | 122 } // namespace internal |
122 } // namespace v8 | 123 } // namespace v8 |
OLD | NEW |