annotate ProcrContext.h @ 77:fe5ec83f1baf

separated hardware dependent code
author Merten Sach <msach@mailbox.tu-berlin.de>
date Wed, 22 Jun 2011 16:12:27 +0200
parents SwitchAnimators.h@9ddbb071142d
children 521c75d64cef
rev   line source
Me@55 1 /*
Me@55 2 * Copyright 2009 OpenSourceStewardshipFoundation.org
Me@55 3 * Licensed under GNU General Public License version 2
Me@55 4 *
Me@55 5 * Author: seanhalle@yahoo.com
Me@55 6 *
Me@55 7 */
Me@55 8
msach@77 9 #ifndef _ProcrContext_H
msach@77 10 #define _ProcrContext_H
msach@76 11 #define _GNU_SOURCE
Me@55 12
msach@76 13 void saveCoreLoopReturnAddr(void **returnAddress);
msach@71 14
msach@71 15 void switchToVP(VirtProcr *nextProcr);
msach@71 16
msach@71 17 void switchToCoreLoop(VirtProcr *nextProcr);
msach@71 18
msach@71 19 void masterSwitchToCoreLoop(VirtProcr *nextProcr);
msach@71 20
msach@76 21 void startVirtProcrFn();
msach@76 22
msach@71 23 #define flushRegisters() \
msach@76 24 asm volatile ("":::"%rbx", "%r12", "%r13","%r14","%r15")
msach@71 25
msach@77 26 inline VirtProcr *
msach@77 27 create_procr_helper( VirtProcr *newPr, VirtProcrFnPtr fnPtr,
msach@77 28 void *initialData, void *stackLocs );
Me@55 29
msach@77 30 #endif /* _ProcrContext_H */
Me@62 31