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

Side by Side Diff: src/x64/macro-assembler-x64.h

Issue 435020: Fast-compiler: Add stack limit checks to back edges of while, do-while and for. (Closed)
Patch Set: Created 11 years 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
OLDNEW
1 // Copyright 2009 the V8 project authors. All rights reserved. 1 // Copyright 2009 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 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
91 void SaveRegistersToMemory(RegList regs); 91 void SaveRegistersToMemory(RegList regs);
92 void RestoreRegistersFromMemory(RegList regs); 92 void RestoreRegistersFromMemory(RegList regs);
93 void PushRegistersFromMemory(RegList regs); 93 void PushRegistersFromMemory(RegList regs);
94 void PopRegistersToMemory(RegList regs); 94 void PopRegistersToMemory(RegList regs);
95 void CopyRegistersFromStackToMemory(Register base, 95 void CopyRegistersFromStackToMemory(Register base,
96 Register scratch, 96 Register scratch,
97 RegList regs); 97 RegList regs);
98 #endif 98 #endif
99 99
100 // --------------------------------------------------------------------------- 100 // ---------------------------------------------------------------------------
101 // Stack limit support
102
103 // Do simple test for stack overflow. This doesn't handle an overflow.
104 void StackLimitCheck(Label* on_stack_limit_hit);
105
106 // ---------------------------------------------------------------------------
101 // Activation frames 107 // Activation frames
102 108
103 void EnterInternalFrame() { EnterFrame(StackFrame::INTERNAL); } 109 void EnterInternalFrame() { EnterFrame(StackFrame::INTERNAL); }
104 void LeaveInternalFrame() { LeaveFrame(StackFrame::INTERNAL); } 110 void LeaveInternalFrame() { LeaveFrame(StackFrame::INTERNAL); }
105 111
106 void EnterConstructFrame() { EnterFrame(StackFrame::CONSTRUCT); } 112 void EnterConstructFrame() { EnterFrame(StackFrame::CONSTRUCT); }
107 void LeaveConstructFrame() { LeaveFrame(StackFrame::CONSTRUCT); } 113 void LeaveConstructFrame() { LeaveFrame(StackFrame::CONSTRUCT); }
108 114
109 // Enter specific kind of exit frame; either in normal or 115 // Enter specific kind of exit frame; either in normal or
110 // debug mode. Expects the number of arguments in register rax and 116 // debug mode. Expects the number of arguments in register rax and
(...skipping 596 matching lines...) Expand 10 before | Expand all | Expand 10 after
707 } \ 713 } \
708 masm-> 714 masm->
709 #else 715 #else
710 #define ACCESS_MASM(masm) masm-> 716 #define ACCESS_MASM(masm) masm->
711 #endif 717 #endif
712 718
713 719
714 } } // namespace v8::internal 720 } } // namespace v8::internal
715 721
716 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_ 722 #endif // V8_X64_MACRO_ASSEMBLER_X64_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698