Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(117)

Side by Side Diff: src/builtins/ppc/builtins-ppc.cc

Issue 2842843005: PPC/s390: SmiUntag only for 32bit (Closed)
Patch Set: Created 3 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/builtins/s390/builtins-s390.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 #if V8_TARGET_ARCH_PPC 5 #if V8_TARGET_ARCH_PPC
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 2190 matching lines...) Expand 10 before | Expand all | Expand 10 after
2201 } 2201 }
2202 __ b(&arguments_done); 2202 __ b(&arguments_done);
2203 __ bind(&arguments_adaptor); 2203 __ bind(&arguments_adaptor);
2204 { 2204 {
2205 // Load the length from the ArgumentsAdaptorFrame. 2205 // Load the length from the ArgumentsAdaptorFrame.
2206 __ LoadP(r3, MemOperand(r6, ArgumentsAdaptorFrameConstants::kLengthOffset)); 2206 __ LoadP(r3, MemOperand(r6, ArgumentsAdaptorFrameConstants::kLengthOffset));
2207 } 2207 }
2208 __ bind(&arguments_done); 2208 __ bind(&arguments_done);
2209 2209
2210 Label stack_empty, stack_done, stack_overflow; 2210 Label stack_empty, stack_done, stack_overflow;
2211 #if !V8_TARGET_ARCH_PPC64
2211 __ SmiUntag(r3); 2212 __ SmiUntag(r3);
2213 #endif
2212 __ sub(r3, r3, r5); 2214 __ sub(r3, r3, r5);
2213 __ cmpi(r3, Operand::Zero()); 2215 __ cmpi(r3, Operand::Zero());
2214 __ ble(&stack_empty); 2216 __ ble(&stack_empty);
2215 { 2217 {
2216 // Check for stack overflow. 2218 // Check for stack overflow.
2217 Generate_StackOverflowCheck(masm, r3, r5, &stack_overflow); 2219 Generate_StackOverflowCheck(masm, r3, r5, &stack_overflow);
2218 2220
2219 // Forward the arguments from the caller frame. 2221 // Forward the arguments from the caller frame.
2220 { 2222 {
2221 Label loop; 2223 Label loop;
(...skipping 886 matching lines...) Expand 10 before | Expand all | Expand 10 after
3108 } 3110 }
3109 // Now jump to the instructions of the returned code object. 3111 // Now jump to the instructions of the returned code object.
3110 __ Jump(r11); 3112 __ Jump(r11);
3111 } 3113 }
3112 3114
3113 #undef __ 3115 #undef __
3114 } // namespace internal 3116 } // namespace internal
3115 } // namespace v8 3117 } // namespace v8
3116 3118
3117 #endif // V8_TARGET_ARCH_PPC 3119 #endif // V8_TARGET_ARCH_PPC
OLDNEW
« no previous file with comments | « no previous file | src/builtins/s390/builtins-s390.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698