Bug 448003 Z/mZ values are off by 100 on OS X. r=ted
--- a/tools/codesighs/nm_wrap_osx.pl
+++ b/tools/codesighs/nm_wrap_osx.pl
@@ -55,17 +55,25 @@ while (<NM_OUTPUT>)
chomp($line);
if ($line =~ /^([^:]+):\s*([0-9a-f]{8}) (\w) (.+)$/)
{
my($module) = $1;
my($addr) = $2;
my($kind) = $3;
my($symbol) = $4;
-
+
+ #Skip absolute addresses, there should be only a few
+ if ('A' eq $kind) {
+ if ('trampoline_size' ne $symbol) {
+ warn "Encountered unknown absolutely addressed symbol '$symbol' in $module";
+ }
+ next;
+ }
+
# we expect the input to have been piped through c++filt to
# demangle symbols. For some reason, it doesn't always demangle
# all of them, so push still-mangled symbols back through c++filt again.
if ($symbol =~ /^(_[_Z].+)/)
{
# warn "Trying again to unmangle $1\n";
$symbol = `c++filt '$1'`;
chomp($symbol);