Commit 29814f1
committed
geninfo: Fix missing FN: entries in result files
geninfo sometimes fails to correctly collect function starting lines for
some source files, resulting in output files with missing FN: lines.
Also such functions are missing from the function list in HTML output.
The problem occurs when
a) multiple source files contribute to a function implementation (e.g.
via including code), and
b) the source file that contains the initial function definition
is not the source file that contains the most function
definitions
The problem occurs due to a heuristic in function graph_find_base() that
incorrectly determines the source file for a function in this situation.
Fix this by using the first file that contributes to a function as the
base source file for that function. Only apply this change to data
collected using GCC versions 4 and above since earlier versions did not
produce stable file orders in graph files.
Signed-off-by: Peter Oberparleiter <oberpar@linux.ibm.com>
Reported-by: Joshua Cranmer1 parent 74bae96 commit 29814f1
1 file changed
+15
-8
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
184 | 184 | | |
185 | 185 | | |
186 | 186 | | |
187 | | - | |
| 187 | + | |
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
| |||
2958 | 2958 | | |
2959 | 2959 | | |
2960 | 2960 | | |
2961 | | - | |
| 2961 | + | |
2962 | 2962 | | |
2963 | 2963 | | |
| 2964 | + | |
| 2965 | + | |
| 2966 | + | |
| 2967 | + | |
2964 | 2968 | | |
2965 | 2969 | | |
2966 | 2970 | | |
| |||
2978 | 2982 | | |
2979 | 2983 | | |
2980 | 2984 | | |
2981 | | - | |
| 2985 | + | |
2982 | 2986 | | |
2983 | | - | |
| 2987 | + | |
2984 | 2988 | | |
2985 | 2989 | | |
2986 | 2990 | | |
| |||
2997 | 3001 | | |
2998 | 3002 | | |
2999 | 3003 | | |
3000 | | - | |
| 3004 | + | |
| 3005 | + | |
3001 | 3006 | | |
3002 | 3007 | | |
3003 | 3008 | | |
| |||
3159 | 3164 | | |
3160 | 3165 | | |
3161 | 3166 | | |
3162 | | - | |
| 3167 | + | |
| 3168 | + | |
3163 | 3169 | | |
3164 | 3170 | | |
3165 | 3171 | | |
| |||
3347 | 3353 | | |
3348 | 3354 | | |
3349 | 3355 | | |
3350 | | - | |
| 3356 | + | |
| 3357 | + | |
3351 | 3358 | | |
3352 | 3359 | | |
3353 | 3360 | | |
| |||
3731 | 3738 | | |
3732 | 3739 | | |
3733 | 3740 | | |
3734 | | - | |
| 3741 | + | |
3735 | 3742 | | |
3736 | 3743 | | |
3737 | 3744 | | |
| |||
0 commit comments