Mercurial > cgi-bin > hgwebdir.cgi > VMS > VMS_Implementations > VMS_impls > VMS__MC_shared_impl
annotate ProcrContext.h @ 200:6db9e4898978
VMS name chgs -- added "WL" "PI" and "int" and split vms.h up
| author | Me@portablequad |
|---|---|
| date | Sun, 12 Feb 2012 01:49:33 -0800 |
| parents | c1784868dcea |
| children |
| rev | line source |
|---|---|
| Me@178 | 1 /* |
| Me@178 | 2 * Copyright 2009 OpenSourceStewardshipFoundation.org |
| Me@178 | 3 * Licensed under GNU General Public License version 2 |
| Me@178 | 4 * |
| Me@178 | 5 * Author: seanhalle@yahoo.com |
| Me@178 | 6 * |
| Me@178 | 7 */ |
| Me@178 | 8 |
| Me@178 | 9 #ifndef _ProcrContext_H |
| Me@178 | 10 #define _ProcrContext_H |
| Me@178 | 11 #define _GNU_SOURCE |
| Me@178 | 12 |
| Me@178 | 13 void saveCoreLoopReturnAddr(void **returnAddress); |
| Me@178 | 14 |
| Me@200 | 15 void switchToVP(SlaveVP *nextProcr); |
| Me@178 | 16 |
| Me@200 | 17 void switchToCoreLoop(SlaveVP *nextProcr); |
| Me@178 | 18 |
| Me@200 | 19 void masterSwitchToCoreLoop(SlaveVP *nextProcr); |
| Me@178 | 20 |
| Me@200 | 21 void startVPFn(); |
| Me@178 | 22 |
| Me@200 | 23 void *asmTerminateCoreLoop(SlaveVP *currPr); |
| Me@178 | 24 |
| Me@178 | 25 #define flushRegisters() \ |
| Me@178 | 26 asm volatile ("":::"%rbx", "%r12", "%r13","%r14","%r15") |
| Me@178 | 27 |
| Me@200 | 28 inline SlaveVP * |
| Me@200 | 29 create_procr_helper( SlaveVP *newPr, VirtProcrFnPtr fnPtr, |
| Me@178 | 30 void *initialData, void *stackLocs ); |
| Me@178 | 31 |
| Me@178 | 32 #endif /* _ProcrContext_H */ |
| Me@178 | 33 |
