static void print_cpu(struct seq_file *m, int cpu, u64 now) { struct hrtimer_cpu_base *cpu_base = &per_cpu(hrtimer_bases, cpu); int i; SEQ_printf(m, "cpu: %d\n", cpu); for (i = 0; i < HRTIMER_MAX_CLOCK_BASES; i++) { SEQ_printf(m, " clock %d:\n", i); print_base(m, cpu_base->clock_base + i, now); } #define P(x) \ SEQ_printf(m, " .%-15s: %Lu\n", #x, \ (unsigned long long)(cpu_base->x)) #define P_ns(x) \ SEQ_printf(m, " .%-15s: %Lu nsecs\n", #x, \ (unsigned long long)(ktime_to_ns(cpu_base->x))) #ifdef CONFIG_HIGH_RES_TIMERS P_ns(expires_next); P(hres_active); P(nr_events); P(nr_retries); P(nr_hangs); P_ns(max_hang_time); #endif #undef P #undef P_ns #ifdef CONFIG_TICK_ONESHOT # define P(x) \ SEQ_printf(m, " .%-15s: %Lu\n", #x, \ (unsigned long long)(ts->x)) # define P_ns(x) \ SEQ_printf(m, " .%-15s: %Lu nsecs\n", #x, \ (unsigned long long)(ktime_to_ns(ts->x))) { struct tick_sched *ts = tick_get_tick_sched(cpu); P(nohz_mode); P_ns(last_tick); P(tick_stopped); P(idle_jiffies); P(idle_calls); P(idle_sleeps); P_ns(idle_entrytime); P_ns(idle_waketime); P_ns(idle_exittime); P_ns(idle_sleeptime); P_ns(iowait_sleeptime); P(last_jiffies); P(next_jiffies); P_ns(idle_expires); SEQ_printf(m, "jiffies: %Lu\n", (unsigned long long)jiffies); } #endif #undef P #undef P_ns SEQ_printf(m, "\n"); }
static void print_stage(int cursize, int line, int curline, int *stage) { if (cursize < 3) return ; print_stage(cursize - 1, line, curline - cursize - (cursize) / 2, stage); print_base(curline * 2 + 1, line, cursize, stage); }
void LoggerWidget::printv(Level level, const char *msg, va_list vlist) { char dat[MAX_LOG_LENGTH]; vsprintf_s(dat, MAX_LOG_LENGTH, msg, vlist); QTime time = QTime::currentTime(); print_base(level, time.toString("hh:mm:ss.zzz") + "\t" + dat); }
int print_base(t_a *arg, unsigned long long n, const int base, char maj) { int cal; int len; char c; static short depth = 0; len = 0; if (n == 0 && depth == 0 && (write(1, "0", 1))) return (1); if (n > 0) { depth++; len = 1; cal = n % base; c = cal > 9 ? cal - 10 + maj : cal + '0'; len += print_base(arg, n / base, base, maj); write(arg->out, &c, 1); } if (n == 0) len += print_spaces(arg, depth); depth = 0; return (len); }
static void print_no_pop(void) { print_base(stack[pointer-1]); }
static void print_stack_no_pop(void) { unsigned int i = pointer; while (i) print_base(stack[--i]); }
static void decode_instruction(ktap_proto *f, int instr) { int opcode = GET_OPCODE(instr); ktap_value *k; k = f->k; printf("%.8x\t", instr); printf("%s\t", ktap_opnames[opcode]); switch (opcode) { case OP_MOVE: printf("\t"); print_base(GETARG_A(instr)); printf(" <- "); print_base(GETARG_B(instr)); break; case OP_GETTABUP: print_base(GETARG_A(instr)); printf(" <- "); print_upvalue(GETARG_B(instr)); printf("{"); print_RKC(instr); printf("}"); break; case OP_GETTABLE: print_base(GETARG_A(instr)); printf(" <- "); print_base(GETARG_B(instr)); printf("{"); print_RKC(instr); printf("}"); break; case OP_SETTABLE: print_base(GETARG_A(instr)); printf("{"); print_RKB(instr); printf("}"); printf(" <- "); print_RKC(instr); break; case OP_LOADK: printf("\t"); print_base(GETARG_A(instr)); printf(" <- "); kp_showobj(NULL, k + GETARG_Bx(instr)); break; case OP_CALL: printf("\t"); print_base(GETARG_A(instr)); break; case OP_JMP: printf("\t%d", GETARG_sBx(instr)); break; case OP_CLOSURE: printf("\t"); print_base(GETARG_A(instr)); printf(" <- closure(func starts from line %d)", f->p[GETARG_Bx(instr)]->lineinfo[0]); break; case OP_SETTABUP: print_upvalue(GETARG_A(instr)); printf("{"); print_RKB(instr); printf("} <- "); print_RKC(instr); break; case OP_GETUPVAL: print_base(GETARG_A(instr)); printf(" <- "); print_upvalue(GETARG_B(instr)); break; case OP_NEWTABLE: print_base(GETARG_A(instr)); printf(" <- {}"); default: break; } printf("\n"); }
void LoggerWidget::print(Level level, const std::string& msg) { QTime time = QTime::currentTime(); print_base(level, time.toString("hh:mm:ss.zzz") + "\t" + msg.c_str()); }