2004-05-07 Michael Snyder <msnyder@redhat.com>
authorMichael Snyder <msnyder@vmware.com>
Thu, 13 May 2004 19:09:30 +0000 (19:09 +0000)
committerMichael Snyder <msnyder@vmware.com>
Thu, 13 May 2004 19:09:30 +0000 (19:09 +0000)
        * tracepoint.c (scope_info): Add handling for LOC_COMPUTED,
        LOC_COMPUTED_ARG, and LOC_INDIRECT.

gdb/ChangeLog
gdb/tracepoint.c

index dc5497e1decfc9de801f555b831d7aa7c0d1d1b6..5f39f2ff4a20e47189ab519ac656eb5c9e35c240 100644 (file)
@@ -1,3 +1,8 @@
+2004-05-07  Michael Snyder  <msnyder@redhat.com>
+
+       * tracepoint.c (scope_info): Add handling for LOC_COMPUTED,
+       LOC_COMPUTED_ARG, and LOC_INDIRECT.
+
 2004-05-13  Andrew Cagney  <cagney@redhat.com>
 
        * infrun.c (handle_inferior_event): Use frame_unwind_id.
index 590e09c2fa811c022624f84dc3caf0d527307d1f..aceeed4503863c7dac8c407bac586f1f1f1c2b3d 100644 (file)
@@ -2345,7 +2345,7 @@ scope_info (char *args, int from_tty)
 
   sals = decode_line_1 (&args, 1, NULL, 0, &canonical, NULL);
   if (sals.nelts == 0)
-    return;                    /* presumably decode_line_1 has already warned */
+    return;            /* presumably decode_line_1 has already warned */
 
   /* Resolve line numbers to PC */
   resolve_sal_pc (&sals.sals[0]);
@@ -2387,7 +2387,8 @@ scope_info (char *args, int from_tty)
              break;
            case LOC_STATIC:
              printf_filtered ("in static storage at address ");
-             print_address_numeric (SYMBOL_VALUE_ADDRESS (sym), 1, gdb_stdout);
+             print_address_numeric (SYMBOL_VALUE_ADDRESS (sym), 
+                                    1, gdb_stdout);
              break;
            case LOC_REGISTER:
              printf_filtered ("a local variable in register $%s",
@@ -2419,12 +2420,13 @@ scope_info (char *args, int from_tty)
              continue;
            case LOC_LABEL:
              printf_filtered ("a label at address ");
-             print_address_numeric (SYMBOL_VALUE_ADDRESS (sym), 1, gdb_stdout);
+             print_address_numeric (SYMBOL_VALUE_ADDRESS (sym), 
+                                    1, gdb_stdout);
              break;
            case LOC_BLOCK:
              printf_filtered ("a function at address ");
-             print_address_numeric (BLOCK_START (SYMBOL_BLOCK_VALUE (sym)), 1,
-                                    gdb_stdout);
+             print_address_numeric (BLOCK_START (SYMBOL_BLOCK_VALUE (sym)),
+                                    1, gdb_stdout);
              break;
            case LOC_BASEREG:
              printf_filtered ("a variable at offset %ld from register $%s",
@@ -2437,7 +2439,8 @@ scope_info (char *args, int from_tty)
                               REGISTER_NAME (SYMBOL_BASEREG (sym)));
              break;
            case LOC_UNRESOLVED:
-             msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (sym), NULL, NULL);
+             msym = lookup_minimal_symbol (DEPRECATED_SYMBOL_NAME (sym), 
+                                           NULL, NULL);
              if (msym == NULL)
                printf_filtered ("Unresolved Static");
              else
@@ -2450,10 +2453,22 @@ scope_info (char *args, int from_tty)
            case LOC_OPTIMIZED_OUT:
              printf_filtered ("optimized out.\n");
              continue;
+           case LOC_HP_THREAD_LOCAL_STATIC:
+             printf_filtered ("HP thread local static ");
+             break;
+           case LOC_INDIRECT:
+             printf_filtered ("extern (local indirect) at address ");
+             print_address_numeric (SYMBOL_VALUE_ADDRESS (sym), 
+                                    1, gdb_stdout);
+             break;
+           case LOC_COMPUTED:
+           case LOC_COMPUTED_ARG:
+             SYMBOL_OPS (sym)->describe_location (sym, gdb_stdout);
+             break;
            }
          if (SYMBOL_TYPE (sym))
            printf_filtered (", length %d.\n",
-                          TYPE_LENGTH (check_typedef (SYMBOL_TYPE (sym))));
+                            TYPE_LENGTH (check_typedef (SYMBOL_TYPE (sym))));
        }
       if (BLOCK_FUNCTION (block))
        break;