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 #if V8_TARGET_ARCH_IA32 | 5 #if V8_TARGET_ARCH_IA32 |
6 | 6 |
7 #include "src/code-factory.h" | 7 #include "src/code-factory.h" |
8 #include "src/codegen.h" | 8 #include "src/codegen.h" |
9 #include "src/deoptimizer.h" | 9 #include "src/deoptimizer.h" |
10 #include "src/full-codegen/full-codegen.h" | 10 #include "src/full-codegen/full-codegen.h" |
(...skipping 1234 matching lines...) Loading... |
1245 __ mov(Operand(esp, 1 * kPointerSize), | 1245 __ mov(Operand(esp, 1 * kPointerSize), |
1246 Immediate(ExternalReference::isolate_address(masm->isolate()))); | 1246 Immediate(ExternalReference::isolate_address(masm->isolate()))); |
1247 __ mov(Operand(esp, 0), eax); | 1247 __ mov(Operand(esp, 0), eax); |
1248 __ CallCFunction( | 1248 __ CallCFunction( |
1249 ExternalReference::get_make_code_young_function(masm->isolate()), 2); | 1249 ExternalReference::get_make_code_young_function(masm->isolate()), 2); |
1250 } | 1250 } |
1251 __ popad(); | 1251 __ popad(); |
1252 __ ret(0); | 1252 __ ret(0); |
1253 } | 1253 } |
1254 | 1254 |
1255 #define DEFINE_CODE_AGE_BUILTIN_GENERATOR(C) \ | 1255 #define DEFINE_CODE_AGE_BUILTIN_GENERATOR(C) \ |
1256 void Builtins::Generate_Make##C##CodeYoungAgainEvenMarking( \ | 1256 void Builtins::Generate_Make##C##CodeYoungAgain(MacroAssembler* masm) { \ |
1257 MacroAssembler* masm) { \ | 1257 GenerateMakeCodeYoungAgainCommon(masm); \ |
1258 GenerateMakeCodeYoungAgainCommon(masm); \ | |
1259 } \ | |
1260 void Builtins::Generate_Make##C##CodeYoungAgainOddMarking( \ | |
1261 MacroAssembler* masm) { \ | |
1262 GenerateMakeCodeYoungAgainCommon(masm); \ | |
1263 } | 1258 } |
1264 CODE_AGE_LIST(DEFINE_CODE_AGE_BUILTIN_GENERATOR) | 1259 CODE_AGE_LIST(DEFINE_CODE_AGE_BUILTIN_GENERATOR) |
1265 #undef DEFINE_CODE_AGE_BUILTIN_GENERATOR | 1260 #undef DEFINE_CODE_AGE_BUILTIN_GENERATOR |
1266 | 1261 |
1267 void Builtins::Generate_MarkCodeAsExecutedOnce(MacroAssembler* masm) { | 1262 void Builtins::Generate_MarkCodeAsExecutedOnce(MacroAssembler* masm) { |
1268 // For now, as in GenerateMakeCodeYoungAgainCommon, we are relying on the fact | 1263 // For now, as in GenerateMakeCodeYoungAgainCommon, we are relying on the fact |
1269 // that make_code_young doesn't do any garbage collection which allows us to | 1264 // that make_code_young doesn't do any garbage collection which allows us to |
1270 // save/restore the registers without worrying about which of them contain | 1265 // save/restore the registers without worrying about which of them contain |
1271 // pointers. | 1266 // pointers. |
1272 __ pushad(); | 1267 __ pushad(); |
(...skipping 1842 matching lines...) Loading... |
3115 | 3110 |
3116 void Builtins::Generate_InterpreterOnStackReplacement(MacroAssembler* masm) { | 3111 void Builtins::Generate_InterpreterOnStackReplacement(MacroAssembler* masm) { |
3117 Generate_OnStackReplacementHelper(masm, true); | 3112 Generate_OnStackReplacementHelper(masm, true); |
3118 } | 3113 } |
3119 | 3114 |
3120 #undef __ | 3115 #undef __ |
3121 } // namespace internal | 3116 } // namespace internal |
3122 } // namespace v8 | 3117 } // namespace v8 |
3123 | 3118 |
3124 #endif // V8_TARGET_ARCH_IA32 | 3119 #endif // V8_TARGET_ARCH_IA32 |
OLD | NEW |