summary refs log tree commit diff
path: root/pkgs/os-specific/linux/dietlibc/pc.patch
blob: fd274d24f038280e2b21ae3b355d674396fd00a2 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
diff -rc dietlibc-0.30-orig/include/asm/arm-sigcontext.h dietlibc-0.30/include/asm/arm-sigcontext.h
*** dietlibc-0.30-orig/include/asm/arm-sigcontext.h	2002-05-09 03:05:10.000000000 +0200
--- dietlibc-0.30/include/asm/arm-sigcontext.h	2006-10-19 12:40:30.000000000 +0200
***************
*** 1,5 ****
  
! #define PC(ctx) (ctx.arm_pc)
  
  /*
   * Signal context structure - contains all info to do with the state
--- 1,5 ----
  
! #define __DIETLIBC_PC(ctx) (ctx.arm_pc)
  
  /*
   * Signal context structure - contains all info to do with the state
diff -rc dietlibc-0.30-orig/include/asm/i386-sigcontext.h dietlibc-0.30/include/asm/i386-sigcontext.h
*** dietlibc-0.30-orig/include/asm/i386-sigcontext.h	2005-09-21 09:33:08.000000000 +0200
--- dietlibc-0.30/include/asm/i386-sigcontext.h	2006-10-19 12:40:41.000000000 +0200
***************
*** 38,44 ****
  };
  
  #define X86_FXSR_MAGIC		0x0000
! #define PC(ctx) (ctx.eip)
  
  struct sigcontext {
  	__u16         gs, __gsh;
--- 38,44 ----
  };
  
  #define X86_FXSR_MAGIC		0x0000
! #define __DIETLIBC_PC(ctx) (ctx.eip)
  
  struct sigcontext {
  	__u16         gs, __gsh;
diff -rc dietlibc-0.30-orig/include/asm/ia64-sigcontext.h dietlibc-0.30/include/asm/ia64-sigcontext.h
*** dietlibc-0.30-orig/include/asm/ia64-sigcontext.h	2002-07-20 18:47:48.000000000 +0200
--- dietlibc-0.30/include/asm/ia64-sigcontext.h	2006-10-19 12:39:40.000000000 +0200
***************
*** 1,6 ****
  #include <sys/ptrace.h>
  
! #define PC(ctx) (ctx.sc_ip)
  
  struct sigcontext {
  	unsigned long		sc_flags;
--- 1,6 ----
  #include <sys/ptrace.h>
  
! #define __DIETLIBC_PC(ctx) (ctx.sc_ip)
  
  struct sigcontext {
  	unsigned long		sc_flags;
diff -rc dietlibc-0.30-orig/profiling/profil.c dietlibc-0.30/profiling/profil.c
*** dietlibc-0.30-orig/profiling/profil.c	2002-04-08 00:13:53.000000000 +0200
--- dietlibc-0.30/profiling/profil.c	2006-10-19 12:40:58.000000000 +0200
***************
*** 43,51 ****
  static void
  profiler (int signal, struct sigcontext ctx)
  {
! 	size_t s = PC(ctx)-low_pc;
  	(void)signal;
! 	if ((PC(ctx)) < low_pc) return;
  	s >>= 1;
  	if (s < maxhits)
  		++buffer[s];
--- 43,51 ----
  static void
  profiler (int signal, struct sigcontext ctx)
  {
! 	size_t s = __DIETLIBC_PC(ctx)-low_pc;
  	(void)signal;
! 	if ((__DIETLIBC_PC(ctx)) < low_pc) return;
  	s >>= 1;
  	if (s < maxhits)
  		++buffer[s];