aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Henderson <rth@twiddle.net>2010-04-12 16:18:43 -0700
committerAurelien Jarno <aurelien@aurel32.net>2010-04-27 05:50:42 +0200
commit18f8e2c08bbd0dd8d32a3a536787076b8b958a4b (patch)
tree42c6e97dfe2887ed3089d8de43db66a13f79f9f1
parent6910b8f66a9ad0c2c2052b4be884e11b76049718 (diff)
target-alpha: Implement RPCC.
A minimal implementation that more or less corresponds to the user-level version used by target-i386. More hoops will want to be jumped through when alpha gets system-level emulation. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
-rw-r--r--target-alpha/cpu.h1
-rw-r--r--target-alpha/op_helper.c5
2 files changed, 3 insertions, 3 deletions
diff --git a/target-alpha/cpu.h b/target-alpha/cpu.h
index 817504b02b..314d6acc4e 100644
--- a/target-alpha/cpu.h
+++ b/target-alpha/cpu.h
@@ -355,7 +355,6 @@ struct CPUAlphaState {
uint64_t ir[31];
float64 fir[31];
uint64_t pc;
- uint32_t pcc[2];
uint64_t ipr[IPR_LAST];
uint64_t ps;
uint64_t unique;
diff --git a/target-alpha/op_helper.c b/target-alpha/op_helper.c
index bfc095cc8a..ff5ae26abe 100644
--- a/target-alpha/op_helper.c
+++ b/target-alpha/op_helper.c
@@ -21,6 +21,7 @@
#include "host-utils.h"
#include "softfloat.h"
#include "helper.h"
+#include "qemu-timer.h"
/*****************************************************************************/
/* Exceptions processing helpers */
@@ -33,8 +34,8 @@ void QEMU_NORETURN helper_excp (int excp, int error)
uint64_t helper_load_pcc (void)
{
- /* XXX: TODO */
- return 0;
+ /* ??? This isn't a timer for which we have any rate info. */
+ return (uint32_t)cpu_get_real_ticks();
}
uint64_t helper_load_fpcr (void)