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_ARM | 5 #if V8_TARGET_ARCH_ARM |
6 | 6 |
7 #include "src/codegen.h" | 7 #include "src/codegen.h" |
8 #include "src/debug/debug.h" | 8 #include "src/debug/debug.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 906 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
917 __ bind(&loop_check); | 917 __ bind(&loop_check); |
918 __ sub(r4, r4, Operand(kPointerSize), SetCC); | 918 __ sub(r4, r4, Operand(kPointerSize), SetCC); |
919 __ b(&loop_header, ge); | 919 __ b(&loop_header, ge); |
920 } | 920 } |
921 | 921 |
922 // TODO(rmcilroy): List of things not currently dealt with here but done in | 922 // TODO(rmcilroy): List of things not currently dealt with here but done in |
923 // fullcodegen's prologue: | 923 // fullcodegen's prologue: |
924 // - Support profiler (specifically profiling_counter). | 924 // - Support profiler (specifically profiling_counter). |
925 // - Call ProfileEntryHookStub when isolate has a function_entry_hook. | 925 // - Call ProfileEntryHookStub when isolate has a function_entry_hook. |
926 // - Allow simulator stop operations if FLAG_stop_at is set. | 926 // - Allow simulator stop operations if FLAG_stop_at is set. |
927 // - Deal with sloppy mode functions which need to replace the | |
928 // receiver with the global proxy when called as functions (without an | |
929 // explicit receiver object). | |
930 // - Code aging of the BytecodeArray object. | 927 // - Code aging of the BytecodeArray object. |
931 | 928 |
932 // Perform stack guard check. | 929 // Perform stack guard check. |
933 { | 930 { |
934 Label ok; | 931 Label ok; |
935 __ LoadRoot(ip, Heap::kStackLimitRootIndex); | 932 __ LoadRoot(ip, Heap::kStackLimitRootIndex); |
936 __ cmp(sp, Operand(ip)); | 933 __ cmp(sp, Operand(ip)); |
937 __ b(hs, &ok); | 934 __ b(hs, &ok); |
938 __ push(kInterpreterBytecodeArrayRegister); | 935 __ push(kInterpreterBytecodeArrayRegister); |
939 __ CallRuntime(Runtime::kStackGuard, 0); | 936 __ CallRuntime(Runtime::kStackGuard, 0); |
(...skipping 991 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1931 } | 1928 } |
1932 } | 1929 } |
1933 | 1930 |
1934 | 1931 |
1935 #undef __ | 1932 #undef __ |
1936 | 1933 |
1937 } // namespace internal | 1934 } // namespace internal |
1938 } // namespace v8 | 1935 } // namespace v8 |
1939 | 1936 |
1940 #endif // V8_TARGET_ARCH_ARM | 1937 #endif // V8_TARGET_ARCH_ARM |
OLD | NEW |