aboutsummaryrefslogtreecommitdiffstats
path: root/lang/tcc/files/patch-libtcc.c
blob: 9c514b3dcfc73f7f224e0d2f6d431ab7cbd63a67 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
--- libtcc.c.orig   2009-05-18 16:27:06.000000000 +0200
+++ libtcc.c    2009-07-03 07:51:05.000000000 +0200
@@ -1509,10 +1509,18 @@
 
     if (level == 0) {
         /* XXX: only support linux */
+#if defined(__FreeBSD__) 
+        *paddr = uc->uc_mcontext.mc_rip;
+#else
         *paddr = uc->uc_mcontext.gregs[REG_RIP];
+#endif
         return 0;
     } else {
+#if defined(__FreeBSD__) 
+        fp = uc->uc_mcontext.mc_rbp;
+#else
         fp = uc->uc_mcontext.gregs[REG_RBP];
+#endif
         for(i=1;i<level;i++) {
             /* XXX: check address validity with program info */
             if (fp <= 0x1000)