OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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/code-stubs.h" | 5 #include "src/code-stubs.h" |
6 | 6 |
7 #include <memory> | 7 #include <memory> |
8 | 8 |
9 #include "src/bailout-reason.h" | 9 #include "src/bailout-reason.h" |
10 #include "src/code-factory.h" | 10 #include "src/code-factory.h" |
(...skipping 1135 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1146 HValue* hash = BuildElementIndexHash(key); | 1146 HValue* hash = BuildElementIndexHash(key); |
1147 | 1147 |
1148 return BuildUncheckedDictionaryElementLoad(receiver, elements, key, hash); | 1148 return BuildUncheckedDictionaryElementLoad(receiver, elements, key, hash); |
1149 } | 1149 } |
1150 | 1150 |
1151 | 1151 |
1152 Handle<Code> LoadDictionaryElementStub::GenerateCode() { | 1152 Handle<Code> LoadDictionaryElementStub::GenerateCode() { |
1153 return DoGenerateCode(this); | 1153 return DoGenerateCode(this); |
1154 } | 1154 } |
1155 | 1155 |
1156 | |
1157 template<> | |
1158 HValue* CodeStubGraphBuilder<RegExpConstructResultStub>::BuildCodeStub() { | |
1159 // Determine the parameters. | |
1160 HValue* length = GetParameter(Descriptor::kLength); | |
1161 HValue* index = GetParameter(Descriptor::kIndex); | |
1162 HValue* input = GetParameter(Descriptor::kInput); | |
1163 | |
1164 // TODO(turbofan): This codestub has regressed to need a frame on ia32 at some | |
1165 // point and wasn't caught since it wasn't built in the snapshot. We should | |
1166 // probably just replace with a TurboFan stub rather than fixing it. | |
1167 #if !(V8_TARGET_ARCH_IA32 || V8_TARGET_ARCH_X87) | |
1168 info()->MarkMustNotHaveEagerFrame(); | |
1169 #endif | |
1170 | |
1171 return BuildRegExpConstructResult(length, index, input); | |
1172 } | |
1173 | |
1174 | |
1175 Handle<Code> RegExpConstructResultStub::GenerateCode() { | |
1176 return DoGenerateCode(this); | |
1177 } | |
1178 | |
1179 } // namespace internal | 1156 } // namespace internal |
1180 } // namespace v8 | 1157 } // namespace v8 |
OLD | NEW |