diff --git a/Lib/trace.py b/Lib/trace.py
index c98a6db..7260d3e 100644
--- a/Lib/trace.py
+++ b/Lib/trace.py
@@ -59,7 +59,7 @@
 import tokenize
 import inspect
 import gc
-
+import dis
 import pickle
 
 def usage(outfile):
@@ -376,13 +376,7 @@
     """Return dict where keys are lines in the line number table."""
     linenos = {}
 
-    line_increments = code.co_lnotab[1::2]
-    table_length = len(line_increments)
-    docstring = False
-
-    lineno = code.co_firstlineno
-    for li in line_increments:
-        lineno += li
+    for _, lineno in dis.findlinestarts(code):
         if lineno not in strs:
             linenos[lineno] = 1
 
