OLD | NEW |
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/code-generator.h" | 5 #include "src/compiler/code-generator.h" |
6 | 6 |
7 #include "src/ast/scopes.h" | 7 #include "src/ast/scopes.h" |
8 #include "src/compiler/code-generator-impl.h" | 8 #include "src/compiler/code-generator-impl.h" |
9 #include "src/compiler/gap-resolver.h" | 9 #include "src/compiler/gap-resolver.h" |
10 #include "src/compiler/node-matchers.h" | 10 #include "src/compiler/node-matchers.h" |
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
168 OutOfLineRecordWrite(CodeGenerator* gen, Register object, Register offset, | 168 OutOfLineRecordWrite(CodeGenerator* gen, Register object, Register offset, |
169 Register value, Register scratch0, Register scratch1, | 169 Register value, Register scratch0, Register scratch1, |
170 RecordWriteMode mode) | 170 RecordWriteMode mode) |
171 : OutOfLineCode(gen), | 171 : OutOfLineCode(gen), |
172 object_(object), | 172 object_(object), |
173 offset_(offset), | 173 offset_(offset), |
174 offset_immediate_(0), | 174 offset_immediate_(0), |
175 value_(value), | 175 value_(value), |
176 scratch0_(scratch0), | 176 scratch0_(scratch0), |
177 scratch1_(scratch1), | 177 scratch1_(scratch1), |
178 mode_(mode) {} | 178 mode_(mode), |
| 179 must_save_lr_(!gen->frame_access_state()->has_frame()) {} |
179 | 180 |
180 OutOfLineRecordWrite(CodeGenerator* gen, Register object, int32_t offset, | 181 OutOfLineRecordWrite(CodeGenerator* gen, Register object, int32_t offset, |
181 Register value, Register scratch0, Register scratch1, | 182 Register value, Register scratch0, Register scratch1, |
182 RecordWriteMode mode) | 183 RecordWriteMode mode) |
183 : OutOfLineCode(gen), | 184 : OutOfLineCode(gen), |
184 object_(object), | 185 object_(object), |
185 offset_(no_reg), | 186 offset_(no_reg), |
186 offset_immediate_(offset), | 187 offset_immediate_(offset), |
187 value_(value), | 188 value_(value), |
188 scratch0_(scratch0), | 189 scratch0_(scratch0), |
(...skipping 1894 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2083 padding_size -= v8::internal::Assembler::kInstrSize; | 2084 padding_size -= v8::internal::Assembler::kInstrSize; |
2084 } | 2085 } |
2085 } | 2086 } |
2086 } | 2087 } |
2087 | 2088 |
2088 #undef __ | 2089 #undef __ |
2089 | 2090 |
2090 } // namespace compiler | 2091 } // namespace compiler |
2091 } // namespace internal | 2092 } // namespace internal |
2092 } // namespace v8 | 2093 } // namespace v8 |
OLD | NEW |