diff options
author | Wolfram Sang <w.sang@pengutronix.de> | 2010-01-05 13:27:51 -0500 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2010-01-06 13:32:39 -0500 |
commit | dc4f8845ee2ca39fe054a2d911729ffd269b4b66 (patch) | |
tree | fc6ffa93efde6eeb58edf276970b647660ce2a7b /scripts/recordmcount.pl | |
parent | 7e53bd42d14c75192b99674c40fcc359392da59d (diff) |
tracing: optimize recordmcount.pl for offsets-handling
- move check for open file in front of the writing loop
- use perl-constructs to access the array
Signed-off-by: Wolfram Sang <w.sang@pengutronix.de>
LKML-Reference: <1262716072-14414-2-git-send-email-w.sang@pengutronix.de>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'scripts/recordmcount.pl')
-rwxr-xr-x | scripts/recordmcount.pl | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/scripts/recordmcount.pl b/scripts/recordmcount.pl index 92f09fe9639e..5de12c7b366f 100755 --- a/scripts/recordmcount.pl +++ b/scripts/recordmcount.pl | |||
@@ -432,14 +432,14 @@ sub update_funcs | |||
432 | 432 | ||
433 | # Loop through all the mcount caller offsets and print a reference | 433 | # Loop through all the mcount caller offsets and print a reference |
434 | # to the caller based from the ref_func. | 434 | # to the caller based from the ref_func. |
435 | for (my $i=0; $i <= $#offsets; $i++) { | 435 | if (!$opened) { |
436 | if (!$opened) { | 436 | open(FILE, ">$mcount_s") || die "can't create $mcount_s\n"; |
437 | open(FILE, ">$mcount_s") || die "can't create $mcount_s\n"; | 437 | $opened = 1; |
438 | $opened = 1; | 438 | print FILE "\t.section $mcount_section,\"a\",$section_type\n"; |
439 | print FILE "\t.section $mcount_section,\"a\",$section_type\n"; | 439 | print FILE "\t.align $alignment\n" if (defined($alignment)); |
440 | print FILE "\t.align $alignment\n" if (defined($alignment)); | 440 | } |
441 | } | 441 | foreach my $cur_offset (@offsets) { |
442 | printf FILE "\t%s %s + %d\n", $type, $ref_func, $offsets[$i] - $offset; | 442 | printf FILE "\t%s %s + %d\n", $type, $ref_func, $cur_offset - $offset; |
443 | } | 443 | } |
444 | } | 444 | } |
445 | 445 | ||
@@ -514,7 +514,7 @@ while (<IN>) { | |||
514 | } | 514 | } |
515 | # is this a call site to mcount? If so, record it to print later | 515 | # is this a call site to mcount? If so, record it to print later |
516 | if ($text_found && /$mcount_regex/) { | 516 | if ($text_found && /$mcount_regex/) { |
517 | $offsets[$#offsets + 1] = hex $1; | 517 | push(@offsets, hex $1); |
518 | } | 518 | } |
519 | } | 519 | } |
520 | 520 | ||