1. Pypy
  2. Untitled project
  3. pypy

Commits

Armin Rigo  committed 783e5f6

Always load symbols from the executable, but just print an error and
continue if that fails.

  • Participants
  • Parent commits 6688b05
  • Branches default

Comments (0)

Files changed (2)

File pypy/tool/jitlogparser/parser.py

View file
  • Ignore whitespace
     from rpython.jit.backend.tool.viewcode import World
     world = World()
     for entry in extract_category(log, 'jit-backend-dump'):
-        world.parse(entry.splitlines(True), load_symbols=False,
-                    truncate_addr=False)
+        world.parse(entry.splitlines(True), truncate_addr=False)
     dumps = {}
     for r in world.ranges:
         if r.addr in addrs and addrs[r.addr]:

File rpython/jit/backend/tool/viewcode.py

View file
  • Ignore whitespace
         self.backend_name = None
         self.executable_name = None
 
-    def parse(self, f, textonly=True, load_symbols=True, truncate_addr=True):
+    def parse(self, f, textonly=True, truncate_addr=True):
         for line in f:
             if line.startswith('BACKEND '):
                 self.backend_name = line.split(' ')[1].strip()
                 addr = baseaddr + offset
                 self.logentries[addr] = pieces[3]
             elif line.startswith('SYS_EXECUTABLE '):
-                if not load_symbols:
-                    continue
                 filename = line[len('SYS_EXECUTABLE '):].strip()
                 if filename != self.executable_name and filename != '??':
-                    self.symbols.update(load_symbols(filename))
+                    try:
+                        self.symbols.update(load_symbols(filename))
+                    except Exception as e:
+                        print e
                     self.executable_name = filename
 
     def find_cross_references(self):