Revision 526ccb7a linux-user/m68k-sim.c

b/linux-user/m68k-sim.c
101 101
{
102 102
    uint32_t *args;
103 103

  
104
    args = (uint32_t *)(env->aregs[7] + 4);
104
    args = (uint32_t *)(unsigned long)(env->aregs[7] + 4);
105 105
    switch (nr) {
106 106
    case SYS_EXIT:
107 107
        exit(ARG(0));
108 108
    case SYS_READ:
109
        check_err(env, read(ARG(0), (void *)ARG(1), ARG(2)));
109
        check_err(env, read(ARG(0), (void *)(unsigned long)ARG(1), ARG(2)));
110 110
        break;
111 111
    case SYS_WRITE:
112
        check_err(env, write(ARG(0), (void *)ARG(1), ARG(2)));
112
        check_err(env, write(ARG(0), (void *)(unsigned long)ARG(1), ARG(2)));
113 113
        break;
114 114
    case SYS_OPEN:
115
        check_err(env, open((char *)ARG(0), translate_openflags(ARG(1)),
116
                            ARG(2)));
115
        check_err(env, open((char *)(unsigned long)ARG(0),
116
                            translate_openflags(ARG(1)), ARG(2)));
117 117
        break;
118 118
    case SYS_CLOSE:
119 119
        {
......
142 142
            struct m86k_sim_stat *p;
143 143
            rc = check_err(env, fstat(ARG(0), &s));
144 144
            if (rc == 0) {
145
                p = (struct m86k_sim_stat *)ARG(1);
145
                p = (struct m86k_sim_stat *)(unsigned long)ARG(1);
146 146
                p->sim_st_dev = tswap16(s.st_dev);
147 147
                p->sim_st_ino = tswap16(s.st_ino);
148 148
                p->sim_st_mode = tswap32(s.st_mode);

Also available in: Unified diff