<html>
<head>
<style>
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
FONT-SIZE: 10pt;
FONT-FAMILY:Tahoma
}
</style>
</head>
<body class='hmmessage'>
so far I can confirm:<br>1) "no" other solution known for AMD64_LINUX<br>er, actually, public = (level != 0) should work<br>but a few other solutions didn't work -- e.g. -fvisibility=hidden has no affect as expected<br><br>2) DECL_PRESERVE_P and TREE_USED both sound promising<br>really, gcc is just a mess of hard to understand flags all over the place..<br><br>3) I can reproduce the problem on PPC_DARWIN<br>The "actual" uses of the functions have the names replaced by generated names -- ok, but bad for debugging<br>The references are then from the module information...so much for dead stripping?<br>I don't think those should be there.<br>I don't know why the names end up generated, maybe because of static = 1?<br>Not clear if static means "C file scope" or something else.<br><br>I'll keep poking -- waiting for my PPC_DARWIN build of m3cg (hm, I must have cleaned out the previous).<br><br>There is a nice optimization to my larger fix here, and it doesn't even go far enough, but for now checking (level != 0) will probably suffice.<br><br> - Jay<br><br><blockquote><hr>CC: m3devel@elegosoft.com<br>From: hosking@cs.purdue.edu<br>To: jayk123@hotmail.com<br>Subject: Re: [M3devel] tinderbox<br>Date: Thu, 1 May 2008 00:29:13 -0400<br><br>I wonder if we need TREE_USED(p) for proc_addr(p)?<div><br><div> <span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><div style=""><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><div>On Apr 30, 2008, at 10:00 PM, Jay wrote:</div></span></span></span></span></span></span></span></span></div></span></div><div><br class="EC_Apple-interchange-newline"><blockquote><span class="EC_Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px;"><div class="EC_hmmessage" style="font-size: 10pt; font-family: Tahoma;">PPC_DARWIN:<br> <br><a href="http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1209537639.21480#6551" name="6551" target="_blank"><u><font color="#000080" face="">6551</font></u></a> -> archiving libpatternmatching.a<br><a href="http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1209537639.21480#6552" name="6552" target="_blank"><u><font color="#000080" face="">6552</font></u></a> Undefined symbols:<br><a href="http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1209537639.21480#6553" name="6553" target="_blank"><u><font color="#000080" face="">6553</font></u></a> "_GlobTree__MatchTest", referenced from:<br><a href="http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1209537639.21480#6554" name="6554" target="_blank"><u><font color="#000080" face="">6554</font></u></a> _L_1 in GlobTree.mo<br><a href="http://tinderbox.elegosoft.com/tinderbox/cgi-bin/gunzip.cgi?tree=cm3&brief-log=1209537639.21480#6555" name="6555" target="_blank"><u><font color="#000080" face="">6555</font></u></a> _L_1 in GlobTree.mo<br><br><br>Perhaps fallout from my parse.c change?<br>I'll look -- later.<br> <br> - Jay<br></div></span></blockquote></div><br></div></blockquote></body>
</html>