summaryrefslogtreecommitdiff
path: root/libco.h
diff options
context:
space:
mode:
authorDavid Guillen Fandos2021-03-08 18:44:03 +0100
committerDavid Guillen Fandos2021-03-08 18:44:03 +0100
commit56dc6ecb70e6fc76d32d6a7194acb273b76bfe0e (patch)
treecf3b14a8d1bc593248398d0c544251ea8987b40e /libco.h
parent02e35339ee89f92d346d290c24497bbbae59ea79 (diff)
downloadpicogpsp-56dc6ecb70e6fc76d32d6a7194acb273b76bfe0e.tar.gz
picogpsp-56dc6ecb70e6fc76d32d6a7194acb273b76bfe0e.tar.bz2
picogpsp-56dc6ecb70e6fc76d32d6a7194acb273b76bfe0e.zip
Remove libco
This removes libco and all the usages of it (+pthreads). Rewired all dynarecs and interpreter to return after every frame so that libretro can process events. This required to make dynarec re-entrant. Dynarecs were updated to check for new frame on every update (IRQ, cycle exhaustion, I/O write, etc). The performance impact of doing so should be minimal (and definitely outweight the libco gains). While at it, fixed small issues to get a bit more perf: arm dynarec was not idling correctly, mips was using stack when not needed, etc. Tested on PSP (mips), OGA (armv7), Linux (x86 and interpreter). Not tested on Android though.
Diffstat (limited to 'libco.h')
-rw-r--r--libco.h37
1 files changed, 0 insertions, 37 deletions
diff --git a/libco.h b/libco.h
deleted file mode 100644
index 1464804..0000000
--- a/libco.h
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- libco
- version: 0.16 (2010-12-24)
- license: public domain
-*/
-
-#ifndef LIBCO_H
-#define LIBCO_H
-
-#ifdef LIBCO_C
- #ifdef LIBCO_MP
- #define thread_local __thread
- #else
- #define thread_local
- #endif
-#endif
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-typedef void* cothread_t;
-
-cothread_t co_active(void);
-
-cothread_t co_create(unsigned int, void (*)(void));
-
-void co_delete(cothread_t);
-
-void co_switch(cothread_t);
-
-#ifdef __cplusplus
-}
-#endif
-
-/* ifndef LIBCO_H */
-#endif