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

Side by Side Diff: src/arm/macro-assembler-arm.cc

Issue 214623002: Only allow automatic FrameScope types for FrameAndConstantPoolScope (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 8 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 | Annotate | Revision Log
« no previous file with comments | « src/arm/macro-assembler-arm.h ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 971 matching lines...) Expand 10 before | Expand all | Expand 10 after
982 Push(lr, fp); 982 Push(lr, fp);
983 mov(fp, Operand(sp)); // Set up new frame pointer. 983 mov(fp, Operand(sp)); // Set up new frame pointer.
984 // Reserve room for saved entry sp and code object. 984 // Reserve room for saved entry sp and code object.
985 sub(sp, sp, Operand(ExitFrameConstants::kFrameSize)); 985 sub(sp, sp, Operand(ExitFrameConstants::kFrameSize));
986 if (emit_debug_code()) { 986 if (emit_debug_code()) {
987 mov(ip, Operand::Zero()); 987 mov(ip, Operand::Zero());
988 str(ip, MemOperand(fp, ExitFrameConstants::kSPOffset)); 988 str(ip, MemOperand(fp, ExitFrameConstants::kSPOffset));
989 } 989 }
990 if (FLAG_enable_ool_constant_pool) { 990 if (FLAG_enable_ool_constant_pool) {
991 str(pp, MemOperand(fp, ExitFrameConstants::kConstantPoolOffset)); 991 str(pp, MemOperand(fp, ExitFrameConstants::kConstantPoolOffset));
992 LoadConstantPoolPointerRegister();
993 } 992 }
994 mov(ip, Operand(CodeObject())); 993 mov(ip, Operand(CodeObject()));
995 str(ip, MemOperand(fp, ExitFrameConstants::kCodeOffset)); 994 str(ip, MemOperand(fp, ExitFrameConstants::kCodeOffset));
996 995
997 // Save the frame pointer and the context in top. 996 // Save the frame pointer and the context in top.
998 mov(ip, Operand(ExternalReference(Isolate::kCEntryFPAddress, isolate()))); 997 mov(ip, Operand(ExternalReference(Isolate::kCEntryFPAddress, isolate())));
999 str(fp, MemOperand(ip)); 998 str(fp, MemOperand(ip));
1000 mov(ip, Operand(ExternalReference(Isolate::kContextAddress, isolate()))); 999 mov(ip, Operand(ExternalReference(Isolate::kContextAddress, isolate())));
1001 str(cp, MemOperand(ip)); 1000 str(cp, MemOperand(ip));
1002 1001
(...skipping 3089 matching lines...) Expand 10 before | Expand all | Expand 10 after
4092 sub(result, result, Operand(dividend)); 4091 sub(result, result, Operand(dividend));
4093 } 4092 }
4094 if (ms.shift() > 0) mov(result, Operand(result, ASR, ms.shift())); 4093 if (ms.shift() > 0) mov(result, Operand(result, ASR, ms.shift()));
4095 add(result, result, Operand(dividend, LSR, 31)); 4094 add(result, result, Operand(dividend, LSR, 31));
4096 } 4095 }
4097 4096
4098 4097
4099 } } // namespace v8::internal 4098 } } // namespace v8::internal
4100 4099
4101 #endif // V8_TARGET_ARCH_ARM 4100 #endif // V8_TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « src/arm/macro-assembler-arm.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698