OSDN Git Service

* config/alpha/alpha.c (alpha_adjust_cost): Remove set but not
[pf3gnuchains/gcc-fork.git] / gcc / config / ia64 / unwind-ia64.h
index f383214..b98f048 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999, 2000, 2001, 2007 Free Software Foundation, Inc.
+/* Copyright (C) 1999, 2000, 2001, 2007, 2009 Free Software Foundation, Inc.
    Contributed by Andrew MacLeod  <amacleod@cygnus.com>
                   Andrew Haley  <aph@cygnus.com>
 
@@ -25,7 +25,19 @@ struct unw_table_entry
   unsigned long info_offset;
 };
 
+/* Accessors to fields of an unwind info block header.  In this common file to
+   be visible from all the units involved in a target implementation.  */
+   
+#ifndef __USING_SJLJ_EXCEPTIONS__
+#define UNW_VER(x)             ((x) >> 48)
+#define UNW_FLAG_MASK          0x0000ffff00000000
+#define UNW_FLAG_OSMASK                0x0000f00000000000
+#define UNW_FLAG_EHANDLER(x)   ((x) & 0x0000000100000000L)
+#define UNW_FLAG_UHANDLER(x)   ((x) & 0x0000000200000000L)
+#define UNW_LENGTH(x)          ((x) & 0x00000000ffffffffL)
+#endif
+
 extern struct unw_table_entry *
 _Unwind_FindTableEntry (void *pc, unsigned long *segment_base,
-                       unsigned long *gp)
+                       unsigned long *gp, struct unw_table_entry *ent)
                        __attribute__ ((__visibility__ ("hidden")));