diff options
author | David S. Miller <davem@davemloft.net> | 2009-06-13 04:03:24 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-06-16 07:56:53 -0400 |
commit | 9be12f9b1c4fd5f18cc82c170a32bfe1713ba76d (patch) | |
tree | d59b601e655160be8caaeb3ba755b0ad50199cc0 /scripts/recordmcount.pl | |
parent | 949e82744b31b555dd6dba40758e05338f305233 (diff) |
sparc64: Add proper dynamic ftrace support.
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Steven Rostedt <rostedt@goodmis.org>
Acked-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'scripts/recordmcount.pl')
-rwxr-xr-x | scripts/recordmcount.pl | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/scripts/recordmcount.pl b/scripts/recordmcount.pl index 91033e67321e..7109e2b5bc0a 100755 --- a/scripts/recordmcount.pl +++ b/scripts/recordmcount.pl | |||
@@ -226,6 +226,26 @@ if ($arch eq "x86_64") { | |||
226 | if ($is_module eq "0") { | 226 | if ($is_module eq "0") { |
227 | $cc .= " -mconstant-gp"; | 227 | $cc .= " -mconstant-gp"; |
228 | } | 228 | } |
229 | } elsif ($arch eq "sparc64") { | ||
230 | # In the objdump output there are giblets like: | ||
231 | # 0000000000000000 <igmp_net_exit-0x18>: | ||
232 | # As there's some data blobs that get emitted into the | ||
233 | # text section before the first instructions and the first | ||
234 | # real symbols. We don't want to match that, so to combat | ||
235 | # this we use '\w' so we'll match just plain symbol names, | ||
236 | # and not those that also include hex offsets inside of the | ||
237 | # '<>' brackets. Actually the generic function_regex setting | ||
238 | # could safely use this too. | ||
239 | $function_regex = "^([0-9a-fA-F]+)\\s+<(\\w*?)>:"; | ||
240 | |||
241 | # Sparc64 calls '_mcount' instead of plain 'mcount'. | ||
242 | $mcount_regex = "^\\s*([0-9a-fA-F]+):.*\\s_mcount\$"; | ||
243 | |||
244 | $alignment = 8; | ||
245 | $type = ".xword"; | ||
246 | $ld .= " -m elf64_sparc"; | ||
247 | $cc .= " -m64"; | ||
248 | $objcopy .= " -O elf64-sparc"; | ||
229 | } else { | 249 | } else { |
230 | die "Arch $arch is not supported with CONFIG_FTRACE_MCOUNT_RECORD"; | 250 | die "Arch $arch is not supported with CONFIG_FTRACE_MCOUNT_RECORD"; |
231 | } | 251 | } |