Click to Rate and Give Feedback
MSDN
MSDN Library
User Interface
 _chkstk Routine

  Switch on low bandwidth view
_chkstk Routine
Called by the compiler when you have more than one page of local variables in your function.

Remarks

_chkstk Routine is a helper routine for the C compiler. For x86 compilers, _chkstk Routine is called when the local variables exceed 4096 bytes; for x64 compilers it is 4K and 8K respectively.

Tags What's this?: Add a tag
Community Content   What is Community Content?
Add new content RSS  Annotations
out of the blue, this routine causes some pain in the ***      j2innet   |   Edit   |   Show History
out of the blue, this routine causes some pain in the ***
Tags What's this?: Add a tag
Flag as ContentBug
Re J2innet's comment      Thomas Lee   |   Edit   |   Show History
Care to clarify what you mean?
Tags What's this?: Add a tag
Flag as ContentBug
Clarification requried      Thomas Lee   |   Edit   |   Show History
In the last sentence under remarks, the article says:

"..; for x64 compilers it is 4K and 8K respectively."

Respecively to what? 4k is 4096 - so why the difference?

Does the remark mean that fo X86 compilers, the routine is called when local variables exceed 4k (4096 bytes) while for X64 compilers when they exceed 8k (8192 bytes)? Or something else?

Annoying Little Thing      HeavyStorm   |   Edit   |   Show History
What I can't understand is why I can't create a variable on the stack with more than 4KB bytes. Besides, if that's the case, why doesn't the compiler warns me before hand that the code will fail?
Tags What's this?: Add a tag
Flag as ContentBug
Processing
© 2009 Microsoft Corporation. All rights reserved. Terms of Use  |  Trademarks  |  Privacy Statement
Page view tracker