dwarf2out.c (loc_descriptor_from_tree, [...]): New.
authorRichard Kenner <kenner@vlsi1.ultra.nyu.edu>
Mon, 1 Jan 2001 00:27:11 +0000 (00:27 +0000)
committerRichard Kenner <kenner@gcc.gnu.org>
Mon, 1 Jan 2001 00:27:11 +0000 (19:27 -0500)
* dwarf2out.c (loc_descriptor_from_tree, case WITH_RECORD_EXPR): New.
(loc_descriptor_from_tree, case SAVE_EXPR): New.

From-SVN: r38579

gcc/ChangeLog
gcc/dwarf2out.c

index faf78886c584ed3f26aaf0aa236f329faca5e89c..57a5f174bf99f1bd3360083a99584dc6a69606c0 100644 (file)
@@ -1,3 +1,8 @@
+Sun Dec 31 19:20:51 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
+
+       * dwarf2out.c (loc_descriptor_from_tree, case WITH_RECORD_EXPR): New.
+       (loc_descriptor_from_tree, case SAVE_EXPR): New.
+
 2001-01-01  Michael Hayes  <mhayes@redhat.com>
 
        * loop.c (loop_giv_reduce_benefit): Break out from strength_reduce.
        * loop.h (struct_iv_class): Add `final_value' and `all_reduced'.
        (struct loop_info): Add `pre_header_has_call'.
        
-2001-01-01  Michael Hayes  <mhayes@redhat.com>
-
        * loop.c (loop_bivs_find): Break out from strength_reduce.
        (loop_bivs_init_find, loop_bivs_check, loop_givs_find): Likewise.
        (loop_givs_check, loop_biv_eliminable_p): Likewise.
        
-2001-01-01  Michael Hayes  <mhayes@redhat.com> 
-
        * loop.c (LOOP_REG_LIFETIME, LOOP_REG_GLOBAL_P): Define.
        (scan_loop, record_giv): Use LOOP_REG_LIFETIME and LOOP_REG_GLOBAL_P.
        
-2001-01-01  Michael Hayes  <mhayes@redhat.com> 
-
        * loop.h (REGNO_FIRST_LUID, REGNO_LAST_LUID): Define.
        * loop.c (REGNO_FIRST_LUID, REGNO_LAST_LUID): Use in place of
        direct access to uid_luid array.
        * unroll.c (REGNO_FIRST_LUID, REGNO_LAST_LUID): Likewise.
 
-2001-01-01  Michael Hayes  <mhayes@redhat.com> 
-
        * loop.h (struct loop_movables): New.
        (LOOP_MOVABLES): New.
        (struct loop_info): Add movables field.
@@ -37,7 +34,6 @@
        (scan_loop): Use xmalloc instead of alloca for movables.
        Call loop_movables_free.
        
-2001-01-01  Michael Hayes  <mhayes@redhat.com> 
 
        * loop.c (debug_loops): New.
 
index 344fe4d19129a73f0498b709f6bd4d0bcadcf597..ec47c36352a14bb2fbacdad79764674257dc549b 100644 (file)
@@ -7793,6 +7793,13 @@ loc_descriptor_from_tree (loc, addressp)
     case ERROR_MARK:
       break;
 
+    case WITH_RECORD_EXPR:
+      /* This case involves extracting fields from an object to determine the
+        position of other fields.  We don't try to encode this here.  The
+        only user of this is Ada, which encodes the needed information using
+        the names of types.  */
+      return ret;
+
     case VAR_DECL:
     case PARM_DECL:
       {
@@ -7828,6 +7835,7 @@ loc_descriptor_from_tree (loc, addressp)
     case NOP_EXPR:
     case CONVERT_EXPR:
     case NON_LVALUE_EXPR:
+    case SAVE_EXPR:
       return loc_descriptor_from_tree (TREE_OPERAND (loc, 0), addressp);
       
     case COMPONENT_REF: