dotgnu-pnet-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[dotgnu-pnet-commits] libjit ChangeLog jit/jit-walk.c include/jit/jit...


From: Aleksey Demakov
Subject: [dotgnu-pnet-commits] libjit ChangeLog jit/jit-walk.c include/jit/jit...
Date: Wed, 21 May 2008 08:36:31 +0000

CVSROOT:        /sources/dotgnu-pnet
Module name:    libjit
Changes by:     Aleksey Demakov <avd>   08/05/21 08:36:30

Modified files:
        .              : ChangeLog 
        jit            : jit-walk.c 
        include/jit    : jit-walk.h 

Log message:
        use _JIT_ARCH_GET_NEXT_FRAME if defined; use gcc syntax only #ifdef 
__GNUC__

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/libjit/ChangeLog?cvsroot=dotgnu-pnet&r1=1.371&r2=1.372
http://cvs.savannah.gnu.org/viewcvs/libjit/jit/jit-walk.c?cvsroot=dotgnu-pnet&r1=1.4&r2=1.5
http://cvs.savannah.gnu.org/viewcvs/libjit/include/jit/jit-walk.h?cvsroot=dotgnu-pnet&r1=1.4&r2=1.5

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/ChangeLog,v
retrieving revision 1.371
retrieving revision 1.372
diff -u -b -r1.371 -r1.372
--- ChangeLog   12 May 2008 14:02:07 -0000      1.371
+++ ChangeLog   21 May 2008 08:36:29 -0000      1.372
@@ -1,3 +1,9 @@
+2008-05-21  Aleksey Demakov  <address@hidden>
+
+       * include/jit/jit-walk.h (jit_get_next_frame_address): use
+       JIT_ARCH_GET_NEXT_FRAME if defined, use gcc syntax only if
+       defined __GNUC__.
+
 2008-05-12  Klaus Treichel  <address@hidden>
 
        * jit/jit-apply-x86-64.h: Include jit/jit-common.h instead of

Index: jit/jit-walk.c
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/jit/jit-walk.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- jit/jit-walk.c      24 Jan 2008 20:12:54 -0000      1.4
+++ jit/jit-walk.c      21 May 2008 08:36:30 -0000      1.5
@@ -159,7 +159,7 @@
  * the next frame up the stack.
  * @end deftypefun
 @*/
-void *jit_get_next_frame_address(void *frame)
+void *_jit_get_next_frame_address(void *frame)
 {
        if(frame)
        {

Index: include/jit/jit-walk.h
===================================================================
RCS file: /sources/dotgnu-pnet/libjit/include/jit/jit-walk.h,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -b -r1.4 -r1.5
--- include/jit/jit-walk.h      13 Apr 2008 16:14:15 -0000      1.4
+++ include/jit/jit-walk.h      21 May 2008 08:36:30 -0000      1.5
@@ -33,10 +33,10 @@
  */
 void *_jit_get_frame_address(void *start, unsigned int n);
 #if defined(__GNUC__)
-#define        jit_get_frame_address(n)        \
+# define jit_get_frame_address(n)      \
        (_jit_get_frame_address(jit_get_current_frame(), (n)))
 #else
-#define        jit_get_frame_address(n)        (_jit_get_frame_address(0, (n)))
+# define jit_get_frame_address(n)      (_jit_get_frame_address(0, (n)))
 #endif
 
 /*
@@ -47,67 +47,82 @@
  * _JIT_ARCH_GET_CURRENT_FRAME() if available. 
  */
 #if defined(__GNUC__)
-#if defined(_JIT_ARCH_GET_CURRENT_FRAME)
-#define        jit_get_current_frame()                         \
+# define JIT_FAST_GET_CURRENT_FRAME    1
+# if defined(_JIT_ARCH_GET_CURRENT_FRAME)
+#  define jit_get_current_frame()                      \
        ({                                              \
                void *address;                          \
                _JIT_ARCH_GET_CURRENT_FRAME(address);   \
                address;                                \
        })
+# else
+#  define jit_get_current_frame()      (__builtin_frame_address(0))
+# endif
 #else
-#define        jit_get_current_frame()         (__builtin_frame_address(0))
-#endif
-#else
-#define        jit_get_current_frame()         (jit_get_frame_address(0))
+# define JIT_FAST_GET_CURRENT_FRAME    0
+# define jit_get_current_frame()       (jit_get_frame_address(0))
 #endif
 
 /*
  * Get the next frame up the stack from a specified frame.
  * Returns NULL if it isn't possible to retrieve the next frame.
  */
-void *jit_get_next_frame_address(void *frame);
+void *_jit_get_next_frame_address(void *frame);
+#if defined(__GNUC__) && defined(_JIT_ARCH_GET_NEXT_FRAME)
+# define jit_get_next_frame_address(frame)             \
+       ({                                              \
+               void *address;                          \
+               _JIT_ARCH_GET_NEXT_FRAME(address);      \
+               address;                                \
+       })
+#else
+# define jit_get_next_frame_address(frame)     \
+       (_jit_get_next_frame_address(frame))
+#endif
 
 /*
  * Get the return address for a specific frame.
  */
 void *_jit_get_return_address(void *frame, void *frame0, void *return0);
-#if defined(_JIT_ARCH_GET_RETURN_ADDRESS)
-#define jit_get_return_address(frame)                          \
+#if defined(__GNUC__)
+# if defined(_JIT_ARCH_GET_RETURN_ADDRESS)
+#  define jit_get_return_address(frame)                                \
        ({                                                      \
                void *address;                                  \
                _JIT_ARCH_GET_RETURN_ADDRESS(address, (frame)); \
                address;                                        \
        })
-#else
-#if defined(__GNUC__)
-#define        jit_get_return_address(frame)   \
+# else
+#  define jit_get_return_address(frame)                        \
                (_jit_get_return_address        \
-                       ((frame), __builtin_frame_address(0), 
__builtin_return_address(0)))
+               ((frame),                               \
+                __builtin_frame_address(0),            \
+                __builtin_return_address(0)))
+# endif
 #else
-#define        jit_get_return_address(frame)   \
+# define jit_get_return_address(frame) \
                (_jit_get_return_address((frame), 0, 0))
 #endif
-#endif
 
 /*
  * Get the return address for the current frame.  May be more efficient
  * than using "jit_get_return_address(0)".
  */
-#if defined(_JIT_ARCH_GET_CURRENT_RETURN)
-#define        jit_get_current_return()                        \
+#if defined(__GNUC__)
+# if defined(_JIT_ARCH_GET_CURRENT_RETURN)
+#  define jit_get_current_return()                     \
        ({                                              \
                void *address;                          \
                _JIT_ARCH_GET_CURRENT_RETURN(address);  \
                address;                                \
        })
+# else
+#  define jit_get_current_return()     (__builtin_return_address(0))
+# endif
 #else
-#if defined(__GNUC__)
-#define        jit_get_current_return()        (__builtin_return_address(0))
-#else
-#define        jit_get_current_return()        \
+# define jit_get_current_return()      \
                        (jit_get_return_address(jit_get_current_frame()))
 #endif
-#endif
 
 /*
  * Declare a stack crawl mark variable.  The address of this variable




reply via email to

[Prev in Thread] Current Thread [Next in Thread]