]> gcc.gnu.org Git - gcc.git/commitdiff
exception.cc (PERSONALITY_FUNCTION): Simplify leb128 handling.
authorJason Merrill <jason@redhat.com>
Fri, 31 Aug 2001 12:27:32 +0000 (08:27 -0400)
committerJason Merrill <jason@gcc.gnu.org>
Fri, 31 Aug 2001 12:27:32 +0000 (08:27 -0400)
        * exception.cc (PERSONALITY_FUNCTION): Simplify
        leb128 handling.

From-SVN: r45317

libjava/ChangeLog
libjava/exception.cc
libstdc++-v3/libsupc++/eh_personality.cc

index edfb3418d397592f96868e131613419152ec27c8..c7eed00c78f22f17cbe8b13ba13800f14b41d865 100644 (file)
@@ -1,3 +1,8 @@
+2001-08-31  Jason Merrill  <jason_merrill@redhat.com>
+
+       * exception.cc (PERSONALITY_FUNCTION): Simplify
+       leb128 handling.
+
 2001-08-31  Tom Tromey  <tromey@redhat.com>
 
        * java/io/ByteArrayInputStream.java: Merged with Classpath.
index 16bbb9fa114be47d167dca9f72fcf005ebe3996c..752236102af3fd07c027e70ef5d13ef6fb8c3ae2 100644 (file)
@@ -120,7 +120,7 @@ static const unsigned char *
 parse_lsda_header (_Unwind_Context *context, const unsigned char *p,
                   lsda_header_info *info)
 {
-  _Unwind_Ptr tmp;
+  _Unwind_Word tmp;
   unsigned char lpstart_encoding;
 
   info->Start = (context ? _Unwind_GetRegionStart (context) : 0);
@@ -236,7 +236,7 @@ PERSONALITY_FUNCTION (int version,
     return _URC_CONTINUE_UNWIND;
   else
     {
-      _Unwind_Ptr cs_lp, cs_action;
+      _Unwind_Word cs_lp, cs_action;
       do
        {
          p = read_uleb128 (p, &cs_lp);
@@ -255,7 +255,8 @@ PERSONALITY_FUNCTION (int version,
   // Search the call-site table for the action associated with this IP.
   while (p < info.action_table)
     {
-      _Unwind_Ptr cs_start, cs_len, cs_lp, cs_action;
+      _Unwind_Ptr cs_start, cs_len, cs_lp;
+      _Unwind_Word cs_action;
 
       // Note that all call-site encodings are "absolute" displacements.
       p = read_encoded_value (0, info.call_site_encoding, p, &cs_start);
@@ -301,15 +302,13 @@ PERSONALITY_FUNCTION (int version,
   else
     {
       // Otherwise we have a catch handler.
-      signed long ar_filter, ar_disp;
+      _Unwind_Sword ar_filter, ar_disp;
 
       while (1)
        {
-         _Unwind_Ptr tmp;
-
          p = action_record;
-         p = read_sleb128 (p, &tmp); ar_filter = tmp;
-         read_sleb128 (p, &tmp); ar_disp = tmp;
+         p = read_sleb128 (p, &ar_filter);
+         read_sleb128 (p, &ar_disp);
 
          if (ar_filter == 0)
            {
index d070ced810115dad6f1e5efdbaa7d13cacf73b39..e735ac860ddb348914021ed13a0c4eea930c69ff 100644 (file)
@@ -197,7 +197,7 @@ PERSONALITY_FUNCTION (int version,
     }
   else
     {
-      _Unwind_Ptr cs_lp, cs_action;
+      _Unwind_Word cs_lp, cs_action;
       do
        {
          p = read_uleb128 (p, &cs_lp);
@@ -216,7 +216,8 @@ PERSONALITY_FUNCTION (int version,
   // Search the call-site table for the action associated with this IP.
   while (p < info.action_table)
     {
-      _Unwind_Ptr cs_start, cs_len, cs_lp, cs_action;
+      _Unwind_Ptr cs_start, cs_len, cs_lp;
+      _Unwind_Word cs_action;
 
       // Note that all call-site encodings are "absolute" displacements.
       p = read_encoded_value (0, info.call_site_encoding, p, &cs_start);
This page took 0.07036 seconds and 5 git commands to generate.