亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? gdbstub.c

?? QEMU 0.91 source code, supports ARM processor including S3C24xx series
?? C
?? 第 1 頁 / 共 3 頁
字號:
        uint64_t tmp = tswapl(registers[66]);        PUT_CCR(env, tmp >> 32);        env->asi = (tmp >> 24) & 0xff;        env->pstate = (tmp >> 8) & 0xfff;        PUT_CWP64(env, tmp & 0xff);    }    env->fsr = tswapl(registers[67]);    env->fprs = tswapl(registers[68]);    env->y = tswapl(registers[69]);#endif}#elif defined (TARGET_ARM)static int cpu_gdb_read_registers(CPUState *env, uint8_t *mem_buf){    int i;    uint8_t *ptr;    ptr = mem_buf;    /* 16 core integer registers (4 bytes each).  */    for (i = 0; i < 16; i++)      {        *(uint32_t *)ptr = tswapl(env->regs[i]);        ptr += 4;      }    /* 8 FPA registers (12 bytes each), FPS (4 bytes).       Not yet implemented.  */    memset (ptr, 0, 8 * 12 + 4);    ptr += 8 * 12 + 4;    /* CPSR (4 bytes).  */    *(uint32_t *)ptr = tswapl (cpsr_read(env));    ptr += 4;    return ptr - mem_buf;}static void cpu_gdb_write_registers(CPUState *env, uint8_t *mem_buf, int size){    int i;    uint8_t *ptr;    ptr = mem_buf;    /* Core integer registers.  */    for (i = 0; i < 16; i++)      {        env->regs[i] = tswapl(*(uint32_t *)ptr);        ptr += 4;      }    /* Ignore FPA regs and scr.  */    ptr += 8 * 12 + 4;    cpsr_write (env, tswapl(*(uint32_t *)ptr), 0xffffffff);}#elif defined (TARGET_M68K)static int cpu_gdb_read_registers(CPUState *env, uint8_t *mem_buf){    int i;    uint8_t *ptr;    CPU_DoubleU u;    ptr = mem_buf;    /* D0-D7 */    for (i = 0; i < 8; i++) {        *(uint32_t *)ptr = tswapl(env->dregs[i]);        ptr += 4;    }    /* A0-A7 */    for (i = 0; i < 8; i++) {        *(uint32_t *)ptr = tswapl(env->aregs[i]);        ptr += 4;    }    *(uint32_t *)ptr = tswapl(env->sr);    ptr += 4;    *(uint32_t *)ptr = tswapl(env->pc);    ptr += 4;    /* F0-F7.  The 68881/68040 have 12-bit extended precision registers.       ColdFire has 8-bit double precision registers.  */    for (i = 0; i < 8; i++) {        u.d = env->fregs[i];        *(uint32_t *)ptr = tswap32(u.l.upper);        *(uint32_t *)ptr = tswap32(u.l.lower);    }    /* FP control regs (not implemented).  */    memset (ptr, 0, 3 * 4);    ptr += 3 * 4;    return ptr - mem_buf;}static void cpu_gdb_write_registers(CPUState *env, uint8_t *mem_buf, int size){    int i;    uint8_t *ptr;    CPU_DoubleU u;    ptr = mem_buf;    /* D0-D7 */    for (i = 0; i < 8; i++) {        env->dregs[i] = tswapl(*(uint32_t *)ptr);        ptr += 4;    }    /* A0-A7 */    for (i = 0; i < 8; i++) {        env->aregs[i] = tswapl(*(uint32_t *)ptr);        ptr += 4;    }    env->sr = tswapl(*(uint32_t *)ptr);    ptr += 4;    env->pc = tswapl(*(uint32_t *)ptr);    ptr += 4;    /* F0-F7.  The 68881/68040 have 12-bit extended precision registers.       ColdFire has 8-bit double precision registers.  */    for (i = 0; i < 8; i++) {        u.l.upper = tswap32(*(uint32_t *)ptr);        u.l.lower = tswap32(*(uint32_t *)ptr);        env->fregs[i] = u.d;    }    /* FP control regs (not implemented).  */    ptr += 3 * 4;}#elif defined (TARGET_MIPS)static int cpu_gdb_read_registers(CPUState *env, uint8_t *mem_buf){    int i;    uint8_t *ptr;    ptr = mem_buf;    for (i = 0; i < 32; i++)      {        *(target_ulong *)ptr = tswapl(env->gpr[i][env->current_tc]);        ptr += sizeof(target_ulong);      }    *(target_ulong *)ptr = (int32_t)tswap32(env->CP0_Status);    ptr += sizeof(target_ulong);    *(target_ulong *)ptr = tswapl(env->LO[0][env->current_tc]);    ptr += sizeof(target_ulong);    *(target_ulong *)ptr = tswapl(env->HI[0][env->current_tc]);    ptr += sizeof(target_ulong);    *(target_ulong *)ptr = tswapl(env->CP0_BadVAddr);    ptr += sizeof(target_ulong);    *(target_ulong *)ptr = (int32_t)tswap32(env->CP0_Cause);    ptr += sizeof(target_ulong);    *(target_ulong *)ptr = tswapl(env->PC[env->current_tc]);    ptr += sizeof(target_ulong);    if (env->CP0_Config1 & (1 << CP0C1_FP))      {        for (i = 0; i < 32; i++)          {            if (env->CP0_Status & (1 << CP0St_FR))              *(target_ulong *)ptr = tswapl(env->fpu->fpr[i].d);            else              *(target_ulong *)ptr = tswap32(env->fpu->fpr[i].w[FP_ENDIAN_IDX]);            ptr += sizeof(target_ulong);          }        *(target_ulong *)ptr = (int32_t)tswap32(env->fpu->fcr31);        ptr += sizeof(target_ulong);        *(target_ulong *)ptr = (int32_t)tswap32(env->fpu->fcr0);        ptr += sizeof(target_ulong);      }    /* "fp", pseudo frame pointer. Not yet implemented in gdb. */    *(target_ulong *)ptr = 0;    ptr += sizeof(target_ulong);    /* Registers for embedded use, we just pad them. */    for (i = 0; i < 16; i++)      {        *(target_ulong *)ptr = 0;        ptr += sizeof(target_ulong);      }    /* Processor ID. */    *(target_ulong *)ptr = (int32_t)tswap32(env->CP0_PRid);    ptr += sizeof(target_ulong);    return ptr - mem_buf;}/* convert MIPS rounding mode in FCR31 to IEEE library */static unsigned int ieee_rm[] =  {    float_round_nearest_even,    float_round_to_zero,    float_round_up,    float_round_down  };#define RESTORE_ROUNDING_MODE \    set_float_rounding_mode(ieee_rm[env->fpu->fcr31 & 3], &env->fpu->fp_status)static void cpu_gdb_write_registers(CPUState *env, uint8_t *mem_buf, int size){    int i;    uint8_t *ptr;    ptr = mem_buf;    for (i = 0; i < 32; i++)      {        env->gpr[i][env->current_tc] = tswapl(*(target_ulong *)ptr);        ptr += sizeof(target_ulong);      }    env->CP0_Status = tswapl(*(target_ulong *)ptr);    ptr += sizeof(target_ulong);    env->LO[0][env->current_tc] = tswapl(*(target_ulong *)ptr);    ptr += sizeof(target_ulong);    env->HI[0][env->current_tc] = tswapl(*(target_ulong *)ptr);    ptr += sizeof(target_ulong);    env->CP0_BadVAddr = tswapl(*(target_ulong *)ptr);    ptr += sizeof(target_ulong);    env->CP0_Cause = tswapl(*(target_ulong *)ptr);    ptr += sizeof(target_ulong);    env->PC[env->current_tc] = tswapl(*(target_ulong *)ptr);    ptr += sizeof(target_ulong);    if (env->CP0_Config1 & (1 << CP0C1_FP))      {        for (i = 0; i < 32; i++)          {            if (env->CP0_Status & (1 << CP0St_FR))              env->fpu->fpr[i].d = tswapl(*(target_ulong *)ptr);            else              env->fpu->fpr[i].w[FP_ENDIAN_IDX] = tswapl(*(target_ulong *)ptr);            ptr += sizeof(target_ulong);          }        env->fpu->fcr31 = tswapl(*(target_ulong *)ptr) & 0xFF83FFFF;        ptr += sizeof(target_ulong);        /* The remaining registers are assumed to be read-only. */        /* set rounding mode */        RESTORE_ROUNDING_MODE;#ifndef CONFIG_SOFTFLOAT        /* no floating point exception for native float */        SET_FP_ENABLE(env->fcr31, 0);#endif      }}#elif defined (TARGET_SH4)/* Hint: Use "set architecture sh4" in GDB to see fpu registers */static int cpu_gdb_read_registers(CPUState *env, uint8_t *mem_buf){  uint32_t *ptr = (uint32_t *)mem_buf;  int i;#define SAVE(x) *ptr++=tswapl(x)  if ((env->sr & (SR_MD | SR_RB)) == (SR_MD | SR_RB)) {      for (i = 0; i < 8; i++) SAVE(env->gregs[i + 16]);  } else {      for (i = 0; i < 8; i++) SAVE(env->gregs[i]);  }  for (i = 8; i < 16; i++) SAVE(env->gregs[i]);  SAVE (env->pc);  SAVE (env->pr);  SAVE (env->gbr);  SAVE (env->vbr);  SAVE (env->mach);  SAVE (env->macl);  SAVE (env->sr);  SAVE (env->fpul);  SAVE (env->fpscr);  for (i = 0; i < 16; i++)      SAVE(env->fregs[i + ((env->fpscr & FPSCR_FR) ? 16 : 0)]);  SAVE (env->ssr);  SAVE (env->spc);  for (i = 0; i < 8; i++) SAVE(env->gregs[i]);  for (i = 0; i < 8; i++) SAVE(env->gregs[i + 16]);  return ((uint8_t *)ptr - mem_buf);}static void cpu_gdb_write_registers(CPUState *env, uint8_t *mem_buf, int size){  uint32_t *ptr = (uint32_t *)mem_buf;  int i;#define LOAD(x) (x)=*ptr++;  if ((env->sr & (SR_MD | SR_RB)) == (SR_MD | SR_RB)) {      for (i = 0; i < 8; i++) LOAD(env->gregs[i + 16]);  } else {      for (i = 0; i < 8; i++) LOAD(env->gregs[i]);  }  for (i = 8; i < 16; i++) LOAD(env->gregs[i]);  LOAD (env->pc);  LOAD (env->pr);  LOAD (env->gbr);  LOAD (env->vbr);  LOAD (env->mach);  LOAD (env->macl);  LOAD (env->sr);  LOAD (env->fpul);  LOAD (env->fpscr);  for (i = 0; i < 16; i++)      LOAD(env->fregs[i + ((env->fpscr & FPSCR_FR) ? 16 : 0)]);  LOAD (env->ssr);  LOAD (env->spc);  for (i = 0; i < 8; i++) LOAD(env->gregs[i]);  for (i = 0; i < 8; i++) LOAD(env->gregs[i + 16]);}#elif defined (TARGET_CRIS)static int cris_save_32 (unsigned char *d, uint32_t value){	*d++ = (value);	*d++ = (value >>= 8);	*d++ = (value >>= 8);	*d++ = (value >>= 8);	return 4;}static int cris_save_16 (unsigned char *d, uint32_t value){	*d++ = (value);	*d++ = (value >>= 8);	return 2;}static int cris_save_8 (unsigned char *d, uint32_t value){	*d++ = (value);	return 1;}/* FIXME: this will bug on archs not supporting unaligned word accesses.  */static int cpu_gdb_read_registers(CPUState *env, uint8_t *mem_buf){  uint8_t *ptr = mem_buf;  uint8_t srs;  int i;  for (i = 0; i < 16; i++)	  ptr += cris_save_32 (ptr, env->regs[i]);  srs = env->pregs[SR_SRS];  ptr += cris_save_8 (ptr, env->pregs[0]);  ptr += cris_save_8 (ptr, env->pregs[1]);  ptr += cris_save_32 (ptr, env->pregs[2]);  ptr += cris_save_8 (ptr, srs);  ptr += cris_save_16 (ptr, env->pregs[4]);  for (i = 5; i < 16; i++)	  ptr += cris_save_32 (ptr, env->pregs[i]);  ptr += cris_save_32 (ptr, env->pc);  for (i = 0; i < 16; i++)	  ptr += cris_save_32 (ptr, env->sregs[srs][i]);  return ((uint8_t *)ptr - mem_buf);}static void cpu_gdb_write_registers(CPUState *env, uint8_t *mem_buf, int size){  uint32_t *ptr = (uint32_t *)mem_buf;  int i;#define LOAD(x) (x)=*ptr++;  for (i = 0; i < 16; i++) LOAD(env->regs[i]);  LOAD (env->pc);}#elsestatic int cpu_gdb_read_registers(CPUState *env, uint8_t *mem_buf){    return 0;}static void cpu_gdb_write_registers(CPUState *env, uint8_t *mem_buf, int size){}#endifstatic int gdb_handle_packet(GDBState *s, CPUState *env, const char *line_buf){    const char *p;    int ch, reg_size, type;    char buf[4096];    uint8_t mem_buf[4096];    uint32_t *registers;    target_ulong addr, len;#ifdef DEBUG_GDB    printf("command='%s'\n", line_buf);#endif    p = line_buf;    ch = *p++;    switch(ch) {    case '?':        /* TODO: Make this return the correct value for user-mode.  */        snprintf(buf, sizeof(buf), "S%02x", SIGTRAP);        put_packet(s, buf);        break;    case 'c':        if (*p != '\0') {            addr = strtoull(p, (char **)&p, 16);#if defined(TARGET_I386)            env->eip = addr;#elif defined (TARGET_PPC)            env->nip = addr;#elif defined (TARGET_SPARC)            env->pc = addr;            env->npc = addr + 4;#elif defined (TARGET_ARM)            env->regs[15] = addr;#elif defined (TARGET_SH4)            env->pc = addr;#elif defined (TARGET_MIPS)            env->PC[env->current_tc] = addr;#elif defined (TARGET_CRIS)            env->pc = addr;#endif        }#ifdef CONFIG_USER_ONLY        s->running_state = 1;#else        vm_start();#endif	return RS_IDLE;    case 's':        if (*p != '\0') {            addr = strtoull(p, (char **)&p, 16);#if defined(TARGET_I386)            env->eip = addr;#elif defined (TARGET_PPC)            env->nip = addr;#elif defined (TARGET_SPARC)            env->pc = addr;            env->npc = addr + 4;#elif defined (TARGET_ARM)            env->regs[15] = addr;#elif defined (TARGET_SH4)            env->pc = addr;#elif defined (TARGET_MIPS)            env->PC[env->current_tc] = addr;#elif defined (TARGET_CRIS)            env->pc = addr;#endif        }        cpu_single_step(env, 1);#ifdef CONFIG_USER_ONLY        s->running_state = 1;#else        vm_start();#endif	return RS_IDLE;    case 'F':        {            target_ulong ret;            target_ulong err;            ret = strtoull(p, (char **)&p, 16);            if (*p == ',') {                p++;                err = strtoull(p, (char **)&p, 16);            } else {                err = 0;            }            if (*p == ',')                p++;            type = *p;            if (gdb_current_syscall_cb)                gdb_current_syscall_cb(s->env, ret, err);            if (type == 'C') {                put_packet(s, "T02");            } else {#ifdef CONFIG_USER_ONLY                s->running_state = 1;#else                vm_start();#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产91精品精华液一区二区三区| 中文字幕在线观看一区二区| 亚洲成人手机在线| 色综合久久久网| 亚洲精品综合在线| 欧美亚日韩国产aⅴ精品中极品| 一区二区三区四区不卡在线| 欧美最猛性xxxxx直播| 亚洲一区二区3| 日韩一区二区三区高清免费看看| 午夜精品福利久久久| 日韩欧美一区在线| 国产精品一区二区三区99| 中文字幕第一区第二区| 色一情一乱一乱一91av| 亚洲成人精品影院| 欧美成人aa大片| 成人动漫视频在线| 五月开心婷婷久久| 久久―日本道色综合久久| 97精品国产97久久久久久久久久久久| 亚洲精品大片www| 欧美一级片在线看| 国产.精品.日韩.另类.中文.在线.播放| 国产精品成人在线观看| 欧美精品在线一区二区三区| 国产一区二区三区美女| 亚洲男人的天堂一区二区| 91精品久久久久久久99蜜桃| 国产精品自在欧美一区| 一卡二卡欧美日韩| 久久婷婷一区二区三区| 色狠狠桃花综合| 韩国女主播成人在线观看| 亚洲最色的网站| 欧美刺激午夜性久久久久久久| 岛国精品一区二区| 肉丝袜脚交视频一区二区| 国产丝袜在线精品| 欧美日韩不卡一区二区| 不卡的av中国片| 看电视剧不卡顿的网站| 亚洲精品欧美在线| 国产午夜亚洲精品不卡 | 国产专区综合网| 亚洲精品国产一区二区精华液| 日韩欧美一级在线播放| 色欲综合视频天天天| 蜜桃视频在线观看一区| 一级中文字幕一区二区| 国产精品乱子久久久久| 亚洲精品在线电影| 欧美美女bb生活片| 99久久久国产精品免费蜜臀| 久久99在线观看| 亚洲国产综合人成综合网站| **欧美大码日韩| 国产女同性恋一区二区| 欧美电影免费观看高清完整版在线| 91激情在线视频| av电影在线观看完整版一区二区| 国产在线精品视频| 蜜臀av性久久久久蜜臀aⅴ| 亚洲国产精品久久久久秋霞影院 | 亚洲色大成网站www久久九九| 国产亚洲精久久久久久| 久久视频一区二区| 日韩免费视频一区| 日韩一级二级三级精品视频| 在线观看www91| 在线日韩一区二区| 色一情一乱一乱一91av| 色哦色哦哦色天天综合| 色综合亚洲欧洲| 97aⅴ精品视频一二三区| 成人午夜激情片| 国产99久久久久久免费看农村| 久久精品国产99国产| 久久国产人妖系列| 久久精品久久99精品久久| 老色鬼精品视频在线观看播放| 七七婷婷婷婷精品国产| 奇米影视一区二区三区小说| 午夜一区二区三区视频| 天堂成人国产精品一区| 日韩精品久久理论片| 午夜激情一区二区三区| 日本午夜精品视频在线观看| 美女高潮久久久| 久久97超碰色| 国产白丝精品91爽爽久久| 成人丝袜18视频在线观看| 成人av高清在线| 91麻豆国产在线观看| 精品视频一区二区三区免费| 精品视频999| 日韩精品一区二区三区中文精品| 久久日韩精品一区二区五区| 国产欧美精品一区| 亚洲柠檬福利资源导航| 日韩av在线播放中文字幕| 狠狠狠色丁香婷婷综合久久五月| 丁香网亚洲国际| 一本一本久久a久久精品综合麻豆| 在线一区二区三区做爰视频网站| 欧美无砖专区一中文字| 精品国一区二区三区| 国产精品成人一区二区三区夜夜夜| 亚洲一区二区三区四区五区黄| 午夜精品在线看| 国产精品一二三四区| 日本道在线观看一区二区| 欧美一级高清片在线观看| 国产日韩欧美综合在线| 亚洲尤物视频在线| 国产精品一级片| 欧美亚洲禁片免费| 国产欧美精品区一区二区三区| 亚洲成在人线免费| 国产美女主播视频一区| 欧美中文字幕一二三区视频| 久久久久久久久久电影| 亚洲乱码国产乱码精品精的特点 | 韩国av一区二区三区四区 | 国产黄色精品视频| 在线观看视频一区二区| 久久久久久久久蜜桃| 亚洲一区视频在线| 高清国产一区二区| 欧美一区二区在线看| 亚洲同性同志一二三专区| 美女免费视频一区| 欧美无乱码久久久免费午夜一区| 久久精品在这里| 日韩高清一区二区| 一本大道综合伊人精品热热| 26uuu亚洲| 午夜精品久久久久久久蜜桃app| 国产成人午夜视频| 欧美日免费三级在线| 中文字幕中文乱码欧美一区二区 | 91九色02白丝porn| 国产精品日产欧美久久久久| 麻豆精品视频在线| 欧美三级日韩三级| 亚洲区小说区图片区qvod| 国产河南妇女毛片精品久久久| 欧美丰满一区二区免费视频| 中文字幕一区二区三区蜜月| 国内一区二区视频| 制服丝袜日韩国产| 亚洲伊人伊色伊影伊综合网| 成人黄色综合网站| 久久综合九色综合久久久精品综合| 亚洲尤物在线视频观看| 91天堂素人约啪| 亚洲同性gay激情无套| 国产成人免费9x9x人网站视频| 日韩视频中午一区| 日韩专区欧美专区| 欧美精品色一区二区三区| 亚洲亚洲精品在线观看| 日本高清不卡视频| 亚洲主播在线播放| 91精品1区2区| 亚洲一区二区在线免费观看视频| 一本到不卡精品视频在线观看| 日本一区二区三区免费乱视频 | 久久蜜臀中文字幕| 狠狠色丁香九九婷婷综合五月| 精品免费视频.| 狠狠色综合播放一区二区| 久久影院午夜片一区| 国产馆精品极品| 欧美激情一区二区三区蜜桃视频| 国产精品888| 国产精品久久久久久久第一福利 | 国产欧美日韩中文久久| 国产精品一区二区不卡| 国产亚洲制服色| 不卡一卡二卡三乱码免费网站| 国产精品入口麻豆九色| 91丨porny丨国产入口| 亚洲影院在线观看| 欧美一级xxx| 国产毛片一区二区| 中文字幕一区二区三区乱码在线| 色婷婷激情久久| 青青草国产精品亚洲专区无| 欧美成人国产一区二区| 成人在线视频一区二区| 亚洲欧美色图小说| 欧美一区二区三区思思人| 国产一区二区三区免费看| 亚洲欧美中日韩| 欧美高清视频www夜色资源网| 国产综合久久久久影院| 亚洲男帅同性gay1069| 欧美一区二区视频在线观看2020 | 国产不卡视频在线播放|