void AsmJsByteCodeDumper::DumpAsmReg4(OpCodeAsmJs op, const unaligned T * data, FunctionBody * dumpFunction, ByteCodeReader& reader) { DumpReg(data->R0); DumpReg(data->R1); DumpReg(data->R2); DumpReg(data->R3); }
void AsmJsByteCodeDumper::DumpAsmCall(OpCodeAsmJs op, const unaligned T * data, FunctionBody * dumpFunction, ByteCodeReader& reader) { if (data->Return != Constants::NoRegister) { DumpReg((RegSlot)data->Return); Output::Print(L"="); } Output::Print(L" R%d(ArgCount: %d)", data->Function, data->ArgCount); }
void CSMSC951xDevice::DumpRegs (void) { DumpReg ("ID_REV", ID_REV); DumpReg ("INT_STS", INT_STS); DumpReg ("RX_CFG", RX_CFG); DumpReg ("TX_CFG", TX_CFG); DumpReg ("HW_CFG", HW_CFG); DumpReg ("RX_FIFO_INF", RX_FIFO_INF); DumpReg ("PM_CTRL", PM_CTRL); DumpReg ("LED_GPIO_CFG", LED_GPIO_CFG); DumpReg ("GPIO_CFG", GPIO_CFG); DumpReg ("AFC_CFG", AFC_CFG); DumpReg ("BURST_CAP", BURST_CAP); DumpReg ("INT_EP_CTL", INT_EP_CTL); DumpReg ("BULK_IN_DLY", BULK_IN_DLY); DumpReg ("MAC_CR", MAC_CR); DumpReg ("ADDRH", ADDRH); DumpReg ("ADDRL", ADDRL); DumpReg ("HASHH", HASHH); DumpReg ("HASHL", HASHL); DumpReg ("FLOW", FLOW); DumpReg ("WUCSR", WUCSR); }
void AsmJsByteCodeDumper::DumpReg1Int32x4_1(OpCodeAsmJs op, const unaligned T * data, FunctionBody * dumpFunction, ByteCodeReader& reader) { DumpReg(data->R0); DumpInt32x4Reg(data->I4_1); }
void AsmJsByteCodeDumper::DumpReg1Float1(OpCodeAsmJs op, const unaligned T * data, FunctionBody * dumpFunction, ByteCodeReader& reader) { DumpReg(data->R0); DumpFloatReg(data->F1); }
void AsmJsByteCodeDumper::DumpReg1Double1(OpCodeAsmJs op, const unaligned T * data, FunctionBody * dumpFunction, ByteCodeReader& reader) { DumpReg(data->R0); DumpDoubleReg(data->D1); }
void Loop(void) { char *tp; int sc; Init(); for (;;) { fprintf(stdout, "\n%s cmd: ", Redir); Buf[0] = '\0'; if (fgets(Buf, BUFSIZE, stdin) == NULL) continue; if ((tp = strtok(Buf, " ,.\t\n\r")) == NULL) continue; fputc('\n', stdout); switch (*tp) { case 'g': case 'G': DisplayControlSignals(); break; case 'r': case 'R': DumpReg(); break; case 'm': case 'M': if ((tp = strtok(NULL, " ,.\t\n\r")) == NULL) { DumpMemHex(0, MEMSIZE); } else { sc = (int) strtoul(tp, (char **) NULL, 10); if ((tp = strtok(NULL, " ,.\t\n\r")) == NULL) { DumpMemHex(sc, MEMSIZE); } else { DumpMemHex(sc, (int) strtoul(tp, (char **) NULL, 10)); } } break; case 's': case 'S': if ((tp = strtok(NULL, " ,.\t\n\r")) == NULL) sc = 1; else sc = (int) strtoul(tp, (char **) NULL, 10); while (sc-- > 0 && !Halt) Step(); fprintf(stdout, "%s step\n", Redir); break; case 'c': case 'C': while (!Halt) Step(); fprintf(stdout, "%s cont\n", Redir); break; case 'h': case 'H': fprintf(stdout, "%s %s\n", Redir, Halt ? "true" : "false"); break; case 'p': case 'P': rewind(FP); sc = 0; while (!feof(FP)) { if (fgets(Buf, BUFSIZE, FP)) fprintf(stdout, "%s % 5d %s", Redir, sc++, Buf); } break; case 'i': case 'I': fprintf(stdout, "%s %d\n", Redir, MEMSIZE); break; case 'd': case 'D': if ((tp = strtok(NULL, " ,.\t\n\r")) == NULL) { fprintf(stdout, "%s invalid cmd\n", Redir); break; } sc = (int) strtoul(tp, (char **) NULL, 10); if ((tp = strtok(NULL, " ,.\t\n\r")) == NULL) { fprintf(stdout, "%sinvalid cmd\n", Redir); break; } DumpHex(sc, (int) strtoul(tp, (char **) NULL, 10)); break; case 'x': case 'X': case 'q': case 'Q': fprintf(stdout, "%s quit\n", Redir); if (Redir == (char *) RedirPrefix) { fprintf(stdout, "%s%s\n", Redir, Redir); } return; default: fprintf(stdout, "%s invalid cmd\n", Redir); break; } if (Redir == (char *) RedirPrefix) { fprintf(stdout, "%s%s\n", Redir, Redir); } } }