Author: Armin Rigo <ar...@tunes.org> Branch: Changeset: r76772:2769d419e952 Date: 2015-04-11 10:39 +0200 http://bitbucket.org/pypy/pypy/changeset/2769d419e952/
Log: Fix: there are roughly 80'000 symbols '__gcmap_*' in an asmgcc pypy, and they were not declared '.hidden', which means that they were left in the binary. Moreover, they were relocated at start-up, which took an appreciable fraction of second. diff --git a/rpython/translator/c/gcc/trackgcroot.py b/rpython/translator/c/gcc/trackgcroot.py --- a/rpython/translator/c/gcc/trackgcroot.py +++ b/rpython/translator/c/gcc/trackgcroot.py @@ -423,6 +423,7 @@ # the original value for gcmaptable.s. That's a hack. self.lines.insert(call.lineno+1, '%s=.+%d\n' % (label, self.OFFSET_LABELS)) + self.lines.insert(call.lineno+1, '\t.hidden\t%s\n' % (label,)) self.lines.insert(call.lineno+1, '\t.globl\t%s\n' % (label,)) call.global_label = label _______________________________________________ pypy-commit mailing list pypy-commit@python.org https://mail.python.org/mailman/listinfo/pypy-commit