Changeset b117be8 in rtems-tools for tools/gdb/python/rtems.py


Ignore:
Timestamp:
Mar 17, 2015, 2:11:57 AM (4 years ago)
Author:
Chris Johns <chrisj@…>
Branches:
4.10, 4.11, master
Children:
dfc5994
Parents:
a30ec56
git-author:
Chris Johns <chrisj@…> (03/17/15 02:11:57)
git-committer:
Chris Johns <chrisj@…> (03/17/15 02:12:15)
Message:

gdb/python: Update the support to a recent RTEMS.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • tools/gdb/python/rtems.py

    ra30ec56 rb117be8  
    7373
    7474    def invoke(self, arg, from_tty):
     75        vald = False
    7576        for num in arg.split():
    7677            try:
     
    7980            except:
    8081                print 'error: "%s" is not a number' % (num)
    81                 return
     82                return True
    8283            id = objects.ident(num)
    8384            if not id.valid():
    8485                print 'Invalid object id'
    85                 return
     86                return True
    8687
    8788            print 'API:%s Class:%s Node:%d Index:%d Id:%08X' % \
     
    9293            if objectname in self.objects:
    9394                object = self.objects[objectname](obj)
    94                 object.show(from_tty)
     95                valid = object.show(from_tty)
    9596        objects.information.invalidate()
     97        return valid
    9698
    9799class rtems_index(gdb.Command):
     
    114116        maximum = objects.information.maximum(self.api, self._class)
    115117        minimum_id = objects.ident(objects.information.minimum_id(self.api, self._class))
    116         maximum_id = objects.ident(objects.information.minimum_id(self.api, self._class))
     118        maximum_id = objects.ident(objects.information.maximum_id(self.api, self._class))
    117119        args = arg.split()
     120        valid = False
    118121        if len(args):
    119122            for val in args:
     
    138141                    return
    139142                instance = self.instance(obj)
    140                 instance.show(from_tty)
     143                valid = instance.show(from_tty)
    141144            objects.information.invalidate()
    142145        else:
     
    144147            print ' %s: %d [%08x -> %08x]' % (objects.information.name(self.api, self._class),
    145148                                             maximum, minimum_id.value(), maximum_id.value())
     149            valid = True
    146150            for index in range(minimum_id.index(), minimum_id.index() + maximum):
    147                 print '-' * 70
    148                 self.invoke(str(index), from_tty)
     151                if valid:
     152                    print '-' * 70
     153                valid = self.invoke(str(index), from_tty)
     154        return valid
    149155
    150156class rtems_semaphore(rtems_index):
     
    243249
    244250    def invoke(self, arg, from_tty):
    245 
    246251        if arg:
    247252            print "warning: commad takes no arguments!"
    248 
    249         obj = objects.information.object_return(self.api,self._class)
     253        obj = objects.information.object_return(self.api, self._class)
    250254        instance = supercore.time_of_day(obj)
    251255        instance.show()
Note: See TracChangeset for help on using the changeset viewer.