*/
typedef struct LayoutInfo {
- target_ulong rambase;
+ vaddr rambase;
size_t ramsize;
hwaddr heapbase;
hwaddr heaplimit;
* global, and we assume that the guest takes care of avoiding any races.
*/
#ifndef CONFIG_USER_ONLY
-static target_ulong syscall_err;
+static uint64_t syscall_err;
#include "semihosting/uaccess.h"
#endif
{
/* Recover the original length from the third argument. */
CPUArchState *env G_GNUC_UNUSED = cpu_env(cs);
- target_ulong args = common_semi_arg(cs, 1);
- target_ulong arg2;
+ uint64_t args = common_semi_arg(cs, 1);
+ uint64_t arg2;
GET_ARG(2);
if (err) {
* is defined by GDB's remote protocol and is not target-specific.)
* We put this on the guest's stack just below SP.
*/
-static target_ulong common_semi_flen_buf(CPUState *cs)
+static uint64_t common_semi_flen_buf(CPUState *cs)
{
- target_ulong sp = common_semi_stack_bottom(cs);
+ vaddr sp = common_semi_stack_bottom(cs);
return sp - 64;
}
void do_common_semihosting(CPUState *cs)
{
CPUArchState *env = cpu_env(cs);
- target_ulong args;
- target_ulong arg0, arg1, arg2, arg3;
- target_ulong ul_ret;
+ uint64_t args;
+ uint64_t arg0, arg1, arg2, arg3;
+ uint64_t ul_ret;
char * s;
int nr;
int64_t elapsed;
case TARGET_SYS_WRITEC:
/*
- * FIXME: the byte to be written is in a target_ulong slot,
+ * FIXME: the byte to be written is in a uint64_t slot,
* which means this is wrong for a big-endian guest.
*/
semihost_sys_write_gf(cs, common_semi_dead_cb,
case TARGET_SYS_HEAPINFO:
{
- target_ulong retvals[4];
+ uint64_t retvals[4];
int i;
#ifdef CONFIG_USER_ONLY
TaskState *ts = get_task_state(cs);