Revision 93fcfe39 hw/alpha_palcode.c
b/hw/alpha_palcode.c | ||
---|---|---|
1061 | 1061 |
{ |
1062 | 1062 |
target_long ret; |
1063 | 1063 |
|
1064 |
if (logfile != NULL) |
|
1065 |
fprintf(logfile, "%s: palcode %02x\n", __func__, palcode); |
|
1064 |
qemu_log("%s: palcode %02x\n", __func__, palcode); |
|
1066 | 1065 |
switch (palcode) { |
1067 | 1066 |
case 0x83: |
1068 | 1067 |
/* CALLSYS */ |
1069 |
if (logfile != NULL) |
|
1070 |
fprintf(logfile, "CALLSYS n " TARGET_FMT_ld "\n", env->ir[0]); |
|
1068 |
qemu_log("CALLSYS n " TARGET_FMT_ld "\n", env->ir[0]); |
|
1071 | 1069 |
ret = do_syscall(env, env->ir[IR_V0], env->ir[IR_A0], env->ir[IR_A1], |
1072 | 1070 |
env->ir[IR_A2], env->ir[IR_A3], env->ir[IR_A4], |
1073 | 1071 |
env->ir[IR_A5]); |
... | ... | |
1082 | 1080 |
case 0x9E: |
1083 | 1081 |
/* RDUNIQUE */ |
1084 | 1082 |
env->ir[IR_V0] = env->unique; |
1085 |
if (logfile != NULL) |
|
1086 |
fprintf(logfile, "RDUNIQUE: " TARGET_FMT_lx "\n", env->unique); |
|
1083 |
qemu_log("RDUNIQUE: " TARGET_FMT_lx "\n", env->unique); |
|
1087 | 1084 |
break; |
1088 | 1085 |
case 0x9F: |
1089 | 1086 |
/* WRUNIQUE */ |
1090 | 1087 |
env->unique = env->ir[IR_A0]; |
1091 |
if (logfile != NULL) |
|
1092 |
fprintf(logfile, "WRUNIQUE: " TARGET_FMT_lx "\n", env->unique); |
|
1088 |
qemu_log("WRUNIQUE: " TARGET_FMT_lx "\n", env->unique); |
|
1093 | 1089 |
break; |
1094 | 1090 |
default: |
1095 |
if (logfile != NULL) |
|
1096 |
fprintf(logfile, "%s: unhandled palcode %02x\n", |
|
1091 |
qemu_log("%s: unhandled palcode %02x\n", |
|
1097 | 1092 |
__func__, palcode); |
1098 | 1093 |
exit(1); |
1099 | 1094 |
} |
Also available in: Unified diff