Debugging with GDB: Frame Filter Management

Previous: Frame Info, Up: Stack [Contents][Index]

### 8.5 Management of Frame Filters.

Frame filters are Python based utilities to manage and decorate the output of frames. See Frame Filter API, for further information.

Managing frame filters is performed by several commands available within GDB, detailed here.

`info frame-filter`

  Print a list of installed frame filters from all dictionaries, showing their name, priority and enabled status.

`disable frame-filter filter-dictionary filter-name`

  Disable a frame filter in the dictionary matching filter-dictionary and filter-name. The filter-dictionary may be `all`, `global`, `progspace`, or the name of the object file where the frame filter dictionary resides. When `all` is specified, all frame filters across all dictionaries are disabled. The filter-name is the name of the frame filter and is used when `all` is not the option for filter-dictionary. A disabled frame-filter is not deleted, it may be enabled again later.

`enable frame-filter filter-dictionary filter-name`

  Enable a frame filter in the dictionary matching filter-dictionary and filter-name. The filter-dictionary may be `all`, `global`, `progspace` or the name of the object file where the frame filter dictionary resides. When `all` is specified, all frame filters across all dictionaries are enabled. The filter-name is the name of the frame filter and is used when `all` is not the option for filter-dictionary.

  Example:

      (gdb) info frame-filter

      global frame-filters:
        Priority  Enabled  Name
        1000      No       PrimaryFunctionFilter
        100       Yes      Reverse

      progspace /build/test frame-filters:
        Priority  Enabled  Name
        100       Yes      ProgspaceFilter

      objfile /build/test frame-filters:
        Priority  Enabled  Name
        999       Yes      BuildProgra Filter

      (gdb) disable frame-filter /build/test BuildProgramFilter
      (gdb) info frame-filter

      global frame-filters:
        Priority  Enabled  Name
        1000      No       PrimaryFunctionFilter
        100       Yes      Reverse

      progspace /build/test frame-filters:
        Priority  Enabled  Name
        100       Yes      ProgspaceFilter

      objfile /build/test frame-filters:
        Priority  Enabled  Name
        999       No       BuildProgramFilter

      (gdb) enable frame-filter global PrimaryFunctionFilter
      (gdb) info frame-filter

      global frame-filters:
        Priority  Enabled  Name
        1000      Yes      PrimaryFunctionFilter
        100       Yes      Reverse

      progspace /build/test frame-filters:
        Priority  Enabled  Name
        100       Yes      ProgspaceFilter

      objfile /build/test frame-filters:
        Priority  Enabled  Name
        999       No       BuildProgramFilter

`set frame-filter priority filter-dictionary filter-name priority`

  Set the priority of a frame filter in the dictionary matching filter-dictionary, and the frame filter name matching filter-name. The filter-dictionary may be `global`, `progspace` or the name of the object file where the frame filter dictionary resides. The priority is an integer.

`show frame-filter priority filter-dictionary filter-name`

  Show the priority of a frame filter in the dictionary matching filter-dictionary, and the frame filter name matching filter-name. The filter-dictionary may be `global`, `progspace` or the name of the object file where the frame filter dictionary resides.

  Example:

      (gdb) info frame-filter

      global frame-filters:
        Priority  Enabled  Name
        1000      Yes      PrimaryFunctionFilter
        100       Yes      Reverse

      progspace /build/test frame-filters:
        Priority  Enabled  Name
        100       Yes      ProgspaceFilter

      objfile /build/test frame-filters:
        Priority  Enabled  Name
        999       No       BuildProgramFilter

      (gdb) set frame-filter priority global Reverse 50
      (gdb) info frame-filter

      global frame-filters:
        Priority  Enabled  Name
        1000      Yes      PrimaryFunctionFilter
        50        Yes      Reverse

      progspace /build/test frame-filters:
        Priority  Enabled  Name
        100       Yes      ProgspaceFilter

      objfile /build/test frame-filters:
        Priority  Enabled  Name
        999       No       BuildProgramFilter

Previous: Frame Info, Up: Stack [Contents][Index]