Added local continuation to the Win32 port.

To implement local continuation it is necessary to distiguish between registers with stack-specific content and  "other" content. Unfortunately this isn't that easy with VC++ - just two examples:

1. /GZ includes "Call Stack Validation" which turns ESI into a stack-specific register which it otherwise isn't.

2. /Oy does "Frame-Pointer Omission" which turns EBP into a non-stack-specific register which it otherwise is.

Basically this means that with VC++ a specific implementation of local continuation only works with certain compiler options - and perhaps certain compiler versions :-(
4 files changed
tree: 1f5f8775ad97b6cfe18e3b4f3991dfc3a65298fb
  1. contiki-win32/