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