<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Verdana
}
--></style>
</head>
<body class='hmmessage'>
I assumed Alpha was little endian because it ran NT.<br>Then again, I know, a lot of chips go either way these days (PowerPC little endian for NT and presumably XBox360, big endian for Mac and I think Linux and AIX?)<br><br>Target.m3:<br><br>    (* big endian *)<br><br>    IF TextUtils.StartsWith(system, "PA")<br><br>            (* MIPS is definitely ambiguous! *)<br>            OR TextUtils.StartsWith(system, "MIPS")<br>   <br>            (* PPC is a little ambiguous? *)<br>            OR TextUtils.StartsWith(system, "PPC")<br><br>            OR TextUtils.StartsWith(system, "SPARC")<br>            OR TextUtils.StartsWith(system, "SOL") THEN<br>        Little_endian := FALSE;<br>    END;<br><br>Anyway it shouldn't be hard to track down.<br>I'll probably divert to SPARC64_SOLARIS first, or maybe PPC64_{LINUX,DARWIN} (iMac G5 arrived recently, though PPC64_AIX hardware has been sitting around...)<br><br>The code I put in parse.c is definitely wierd, but I really thought it was correct, and it /has/ no survived a fair number of combinations. I do cross builds /almost/ without considering host and target. Er, except you can't cross from 64bit to 32bit..I'll probably fix that pretty soon as it has started hitting me more often... it's just something where the compiler gets confused and does host math with target limitations, where it should do target math.<br><br> - Jay<br><br><hr id="stopSpelling">From: hosking@cs.purdue.edu<br>Date: Mon, 14 Dec 2009 10:46:25 -0500<br>To: jay.krell@cornell.edu<br>CC: m3commit@elegosoft.com<br>Subject: Re: [M3commit] CVS Update: cm3<br><br>

<base><div><span class="ecxApple-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="ecxApple-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="word-wrap: break-word;"><span class="ecxApple-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="ecxApple-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="ecxApple-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="ecxApple-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="ecxApple-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="ecxApple-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="ecxApple-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="ecxApple-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><span class="ecxApple-style-span" style="font-size: medium;">On 14 Dec 2009, at 10:43, Jay K wrote:</span></div></span></span></span></span></span></span></span></span></div></span></span></div><div><br class="ecxApple-interchange-newline"><blockquote><span class="ecxApple-style-span" style="border-collapse: separate; font-family: Helvetica; font-size: medium; 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="ecxhmmessage" style="font-size: 10pt; font-family: Verdana;">I know I know. I know exactly the code. I rewrote it, at least once.<br>Cross compiling works.<br>Native does not.<br>It must be the threshold variables in RTCollector.<br></div></span></blockquote><div><br></div><div>Yeah, I've been bitten by just that scenario in the past -- those are the earliest use of FP in the run-time linker.  If they are broken you find out quickly.  Can you take a look at the gcc m3cg code for FP?  It worked at one point just fine on native Alpha 64-bit, so should not be too hard to fix.</div><br><blockquote><span class="ecxApple-style-span" style="border-collapse: separate; font-family: Helvetica; font-size: medium; 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="ecxhmmessage" style="font-size: 10pt; font-family: Verdana;">I really thought I understood that code.<br><br> - Jay<br><br><br><hr id="ecxstopSpelling">From:<span class="ecxApple-converted-space"> </span><a href="mailto:hosking@cs.purdue.edu">hosking@cs.purdue.edu</a><br>Date: Mon, 14 Dec 2009 10:38:06 -0500<br>To:<span class="ecxApple-converted-space"> </span><a href="mailto:jkrell@elego.de">jkrell@elego.de</a><br>CC:<span class="ecxApple-converted-space"> </span><a href="mailto:m3commit@elegosoft.com">m3commit@elegosoft.com</a><br>Subject: Re: [M3commit] CVS Update: cm3<br><br><div><span class="ecxecxApple-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="ecxecxApple-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="word-wrap: break-word;"><span class="ecxecxApple-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="ecxecxApple-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="ecxecxApple-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="ecxecxApple-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="ecxecxApple-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="ecxecxApple-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="ecxecxApple-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="ecxecxApple-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><span class="ecxecxApple-style-span" style="font-size: medium;"><font class="ecxecxApple-style-span" color="#0000ff" face="'Gill Sans'">This suggests an m3cg backend compiler problem for floating point on SPARC64.</font></span></div></span></span></span></span></span></span></span></span></div></span></span></div><div><br></div><div><div>On 14 Dec 2009, at 14:40, Jay Krell wrote:</div><br class="ecxecxApple-interchange-newline"><blockquote><div>CVSROOT:<span class="ecxecxApple-tab-span" style="white-space: pre;">        </span>/usr/cvs<br>Changes by:<span class="ecxecxApple-tab-span" style="white-space: pre;">       </span>jkrell@birch.<span class="ecxecxApple-tab-span" style="white-space: pre;">       </span>09/12/14 14:40:15<br><br>Modified files:<br><span class="ecxecxApple-tab-span" style="white-space: pre;">      </span>cm3/m3-libs/m3core/src/runtime/SPARC64_SOLARIS/: RTMachine.i3<span class="ecxApple-converted-space"> </span><br><span class="ecxecxApple-tab-span" style="white-space: pre;">   </span>cm3/m3-libs/m3core/src/unix/: m3makefile<span class="ecxApple-converted-space"> </span><br>Removed files:<br><span class="ecxecxApple-tab-span" style="white-space: pre;">        </span>cm3/m3-libs/m3core/src/runtime/SPARC64_SOLARIS/: RTSignal.m3<span class="ecxApple-converted-space"> </span><br><br>Log message:<br><span class="ecxecxApple-tab-span" style="white-space: pre;">    </span>updates so SPARC64_SOLARIS bootstrap can build<br><span class="ecxecxApple-tab-span" style="white-space: pre;">    </span>(possible tangent related to getting SPARC64_OPENBSD<br><span class="ecxecxApple-tab-span" style="white-space: pre;">      </span>to work -- problem apparently with the floating point<br><span class="ecxecxApple-tab-span" style="white-space: pre;">     </span>constants in RTCollector, such that Behind() is<br><span class="ecxecxApple-tab-span" style="white-space: pre;">   </span>always TRUE, even for the first allocation, so<br><span class="ecxecxApple-tab-span" style="white-space: pre;">    </span>access violate trying to garbage collect too<br><span class="ecxecxApple-tab-span" style="white-space: pre;">      </span>early, when self is still NULL)<br></div></blockquote></div><br></div></span><br class="ecxApple-interchange-newline"></blockquote></div><br>                                    </body>
</html>