notaz.gp2x.de
/
pcsx_rearmed.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
frontend: pcnt: use gettimeofday
[pcsx_rearmed.git]
/
frontend
/
pcnt.h
diff --git
a/frontend/pcnt.h
b/frontend/pcnt.h
index
3969aa4
..
545f0c4
100644
(file)
--- a/
frontend/pcnt.h
+++ b/
frontend/pcnt.h
@@
-4,13
+4,21
@@
enum pcounters {
PCNT_GPU,
PCNT_SPU,
PCNT_BLIT,
PCNT_GPU,
PCNT_SPU,
PCNT_BLIT,
+ PCNT_GTE,
PCNT_TEST,
PCNT_CNT
};
#ifdef PCNT
PCNT_TEST,
PCNT_CNT
};
#ifdef PCNT
-static const char *pcnt_names[PCNT_CNT] = { "", "gpu", "spu", "blit", "test" };
+#ifndef __ARM_ARCH_7A__
+#include <sys/time.h>
+#define PCNT_DIV 1
+#else
+#define PCNT_DIV 1000
+#endif
+
+static const char *pcnt_names[PCNT_CNT] = { "", "gpu", "spu", "blit", "gte", "test" };
#define PCNT_FRAMES 10
#define PCNT_FRAMES 10
@@
-32,7
+40,7
@@
static inline void pcnt_print(float fps)
int i;
for (i = 0; i < PCNT_CNT; i++)
int i;
for (i = 0; i < PCNT_CNT; i++)
- pcounters[i] /=
1000
* PCNT_FRAMES;
+ pcounters[i] /=
PCNT_DIV
* PCNT_FRAMES;
rem = total = pcounters[PCNT_ALL];
for (i = 1; i < PCNT_CNT; i++)
rem = total = pcounters[PCNT_ALL];
for (i = 1; i < PCNT_CNT; i++)
@@
-78,7
+86,13
@@
static inline unsigned int pcnt_get(void)
__asm__ volatile("mrc p15, 0, %0, c9, c13, 0"
: "=r"(val));
#else
__asm__ volatile("mrc p15, 0, %0, c9, c13, 0"
: "=r"(val));
#else
- val = 0;
+ // all slow on ARM :(
+ //struct timespec tv;
+ //clock_gettime(CLOCK_MONOTONIC_RAW, &tv);
+ //val = tv.tv_sec * 1000000000 + tv.tv_nsec;
+ struct timeval tv;
+ gettimeofday(&tv, NULL);
+ val = tv.tv_sec * 1000000 + tv.tv_usec;
#endif
return val;
}
#endif
return val;
}
@@
-96,6
+110,9
@@
static inline void pcnt_init(void)
#endif
}
#endif
}
+void pcnt_gte_start(int op);
+void pcnt_gte_end(int op);
+
#else
#define pcnt_start(id)
#else
#define pcnt_start(id)