30,7 → 30,7 |
|
char buffer[READ_BUFFER+DELTA_BUFFER]; |
void *p, *last; |
int n,delta,size; |
int n,delta,size,tsc; |
|
unsigned long long ev = 0, tsc_value; |
|
59,23 → 59,29 |
while ((unsigned int)(p) + 16 <= (unsigned int)(buffer + READ_BUFFER) && |
(unsigned int)(p) + 16 <= (unsigned int)(buffer + n + delta)) { |
|
tsc = 0; |
|
switch (*(unsigned short int *)(p)) { |
|
case FTrace_EVT_ipoint: |
printf("%d ",*(unsigned short int *)(p+2)); |
tsc = 1; |
break; |
|
case FTrace_EVT_trace_start: |
printf("0 "); |
tsc = 1; |
break; |
|
case FTrace_EVT_trace_stop: |
printf("1 "); |
tsc = 1; |
break; |
|
case FTrace_EVT_timer_wakeup_start: |
case FTrace_EVT_interrupt_start: |
printf("2 "); |
tsc = 1; |
break; |
|
|
82,10 → 88,12 |
case FTrace_EVT_timer_wakeup_end: |
case FTrace_EVT_interrupt_end: |
printf("3 "); |
tsc = 1; |
break; |
|
case FTrace_EVT_context_switch: |
printf("4 "); |
tsc = 1; |
break; |
|
} |
93,8 → 101,35 |
tsc_value = (unsigned long long)(*(unsigned int *)(p+4)) << 32; |
tsc_value += (unsigned long long)(*(unsigned int *)(p+8)); |
|
if (tsc == 1) { |
|
printf("%llu ",tsc_value); |
|
switch (*(unsigned short int *)(p)) { |
|
case FTrace_EVT_interrupt_start: |
printf("%d ",*(unsigned short int *)(p+2)); |
break; |
|
case FTrace_EVT_timer_wakeup_start: |
printf("%d ",0); |
break; |
|
case FTrace_EVT_timer_wakeup_end: |
case FTrace_EVT_interrupt_end: |
printf("%d ",*(unsigned short int *)(p+2)); |
break; |
|
case FTrace_EVT_context_switch: |
printf("%d ",*(unsigned short int *)(p+2)); |
break; |
|
} |
|
printf("\n"); |
|
} |
|
size = 16; |
|
ev++; |