[M3devel] [M3commit] CVS Update: cm3
Jay K
jay.krell at cornell.edu
Mon Dec 14 17:43:28 CET 2009
>> all DEC systems are little-endian
Ok, educate me.
VAX little endian?
MIPS-based DecStations running Ultrix little endian?
(again, MIPS ran NT, but MIPS is "well known" to be "either" there's often "mips" and "mipsle", "le"="little endian")
Alpha/VMS little endian?
Alpha/Tru64 little endian?
IA64/VMS little endian?
(IA64/HPUX little endian?)
(Alpha/IA64/MIPS/PPC NT yes little all endian)
- Jay
> To: jay.krell at cornell.edu
> Date: Mon, 14 Dec 2009 08:31:01 -0800
> From: mika at async.async.caltech.edu
> CC: m3devel at elegosoft.com
> Subject: Re: [M3devel] [M3commit] CVS Update: cm3
>
>
> Alpha is little-endian because it's DEC and all DEC systems are
> little-endian. It's one of those religious wars, now long forgotten...
> DEC did win that war, after all, but much good it did them.
>
> Also regarding Trestle: there are several tech reports about it that
> explain the locking schemes in detail. Are there really other windowing
> systems out there that have similarly good support for multithreaded
> programs? (I've certainly never seen one...I think Trestle is very
> very cool.)
>
> Mika
>
> Jay K writes:
> >--_53b61834-1f8f-4857-9285-039cb0730d0c_
> >Content-Type: text/plain; charset="iso-8859-1"
> >Content-Transfer-Encoding: quoted-printable
> >
> >
> >I assumed Alpha was little endian because it ran NT.
> >Then again=2C I know=2C a lot of chips go either way these days (PowerPC li=
> >ttle endian for NT and presumably XBox360=2C big endian for Mac and I think=
> > Linux and AIX?)
> >
> >Target.m3:
> >
> > (* big endian *)
> >
> > IF TextUtils.StartsWith(system=2C "PA")
> >
> > (* MIPS is definitely ambiguous! *)
> > OR TextUtils.StartsWith(system=2C "MIPS")
> > =20
> > (* PPC is a little ambiguous? *)
> > OR TextUtils.StartsWith(system=2C "PPC")
> >
> > OR TextUtils.StartsWith(system=2C "SPARC")
> > OR TextUtils.StartsWith(system=2C "SOL") THEN
> > Little_endian :=3D FALSE=3B
> > END=3B
> >
> >Anyway it shouldn't be hard to track down.
> >I'll probably divert to SPARC64_SOLARIS first=2C or maybe PPC64_{LINUX=2CDA=
> >RWIN} (iMac G5 arrived recently=2C though PPC64_AIX hardware has been sitti=
> >ng around...)
> >
> >The code I put in parse.c is definitely wierd=2C but I really thought it wa=
> >s correct=2C and it /has/ no survived a fair number of combinations. I do c=
> >ross builds /almost/ without considering host and target. Er=2C except you =
> >can't cross from 64bit to 32bit..I'll probably fix that pretty soon as it h=
> >as started hitting me more often... it's just something where the compiler =
> >gets confused and does host math with target limitations=2C where it should=
> > do target math.
> >
> > - Jay
> >
> >From: hosking at cs.purdue.edu
> >Date: Mon=2C 14 Dec 2009 10:46:25 -0500
> >To: jay.krell at cornell.edu
> >CC: m3commit at elegosoft.com
> >Subject: Re: [M3commit] CVS Update: cm3
> >
> >
> >
> >On 14 Dec 2009=2C at 10:43=2C Jay K wrote:I know I know. I know exactly the=
> > code. I rewrote it=2C at least once.
> >Cross compiling works.
> >Native does not.
> >It must be the threshold variables in RTCollector.
> >
> >Yeah=2C 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 ou=
> >t 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=2C so should not be too hard to =
> >fix.
> >I really thought I understood that code.
> >
> > - Jay
> >
> >
> >From: hosking at cs.purdue.edu
> >Date: Mon=2C 14 Dec 2009 10:38:06 -0500
> >To: jkrell at elego.de
> >CC: m3commit at elegosoft.com
> >Subject: Re: [M3commit] CVS Update: cm3
> >
> >This suggests an m3cg backend compiler problem for floating point on SPARC6=
> >4.
> >On 14 Dec 2009=2C at 14:40=2C Jay Krell wrote:CVSROOT: /usr/cvs
> >Changes by: jkrell at birch. 09/12/14 14:40:15
> >
> >Modified files:
> > cm3/m3-libs/m3core/src/runtime/SPARC64_SOLARIS/: RTMachine.i3=20
> > cm3/m3-libs/m3core/src/unix/: m3makefile=20
> >Removed files:
> > cm3/m3-libs/m3core/src/runtime/SPARC64_SOLARIS/: RTSignal.m3=20
> >
> >Log message:
> > updates so SPARC64_SOLARIS bootstrap can build
> > (possible tangent related to getting SPARC64_OPENBSD
> > to work -- problem apparently with the floating point
> > constants in RTCollector=2C such that Behind() is
> > always TRUE=2C even for the first allocation=2C so
> > access violate trying to garbage collect too
> > early=2C when self is still NULL)
> >
> >
> > =
> >
> >--_53b61834-1f8f-4857-9285-039cb0730d0c_
> >Content-Type: text/html; charset="iso-8859-1"
> >Content-Transfer-Encoding: quoted-printable
> >
> ><html>
> ><head>
> ><style><!--
> >.hmmessage P
> >{
> >margin:0px=3B
> >padding:0px
> >}
> >body.hmmessage
> >{
> >font-size: 10pt=3B
> >font-family:Verdana
> >}
> >--></style>
> ></head>
> ><body class=3D'hmmessage'>
> >I assumed Alpha was little endian because it ran NT.<br>Then again=2C I kno=
> >w=2C a lot of chips go either way these days (PowerPC little endian for NT =
> >and presumably XBox360=2C big endian for Mac and I think Linux and AIX?)<br=
> >><br>Target.m3:<br><br> =3B =3B =3B (* big endian *)<br><br>&nb=
> >sp=3B =3B =3B IF TextUtils.StartsWith(system=2C "PA")<br><br> =
> >=3B =3B =3B =3B =3B =3B =3B =3B =3B =3B=
> > =3B (* MIPS is definitely ambiguous! *)<br> =3B =3B =3B&nb=
> >sp=3B =3B =3B =3B =3B =3B =3B =3B OR TextUtils.=
> >StartsWith(system=2C "MIPS")<br> =3B =3B <br> =3B =3B =
> >=3B =3B =3B =3B =3B =3B =3B =3B =3B (* PPC =
> >is a little ambiguous? *)<br> =3B =3B =3B =3B =3B =
> >=3B =3B =3B =3B =3B =3B OR TextUtils.StartsWith(system=
> >=2C "PPC")<br><br> =3B =3B =3B =3B =3B =3B =3B&=
> >nbsp=3B =3B =3B =3B OR TextUtils.StartsWith(system=2C "SPARC")<=
> >br> =3B =3B =3B =3B =3B =3B =3B =3B =3B=
> > =3B =3B OR TextUtils.StartsWith(system=2C "SOL") THEN<br> =3B&=
> >nbsp=3B =3B =3B =3B =3B =3B Little_endian :=3D FALSE=3B=
> ><br> =3B =3B =3B END=3B<br><br>Anyway it shouldn't be hard to t=
> >rack down.<br>I'll probably divert to SPARC64_SOLARIS first=2C or maybe PPC=
> >64_{LINUX=2CDARWIN} (iMac G5 arrived recently=2C though PPC64_AIX hardware =
> >has been sitting around...)<br><br>The code I put in parse.c is definitely =
> >wierd=2C but I really thought it was correct=2C and it /has/ no survived a =
> >fair number of combinations. I do cross builds /almost/ without considering=
> > host and target. Er=2C except you can't cross from 64bit to 32bit..I'll pr=
> >obably 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 ta=
> >rget limitations=2C where it should do target math.<br><br> =3B- Jay<br=
> >><br><hr id=3D"stopSpelling">From: hosking at cs.purdue.edu<br>Date: Mon=2C 14=
> > Dec 2009 10:46:25 -0500<br>To: jay.krell at cornell.edu<br>CC: m3commit at elego=
> >soft.com<br>Subject: Re: [M3commit] CVS Update: cm3<br><br>
> >
> ><base><div><span class=3D"ecxApple-style-span" style=3D"border-collapse: se=
> >parate=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font-size: 1=
> >2px=3B font-style: normal=3B font-variant: normal=3B font-weight: normal=3B=
> > letter-spacing: normal=3B line-height: normal=3B text-indent: 0px=3B text-=
> >transform: none=3B white-space: normal=3B word-spacing: 0px=3B"><span class=
> >=3D"ecxApple-style-span" style=3D"border-collapse: separate=3B color: rgb(0=
> >=2C 0=2C 0)=3B font-family: Helvetica=3B font-size: 12px=3B font-style: nor=
> >mal=3B font-variant: normal=3B font-weight: normal=3B letter-spacing: norma=
> >l=3B line-height: normal=3B text-indent: 0px=3B text-transform: none=3B whi=
> >te-space: normal=3B word-spacing: 0px=3B"><div style=3D"word-wrap: break-wo=
> >rd=3B"><span class=3D"ecxApple-style-span" style=3D"border-collapse: separa=
> >te=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font-size: 12px=
> >=3B font-style: normal=3B font-variant: normal=3B font-weight: normal=3B le=
> >tter-spacing: normal=3B line-height: normal=3B text-indent: 0px=3B text-tra=
> >nsform: none=3B white-space: normal=3B word-spacing: 0px=3B"><span class=3D=
> >"ecxApple-style-span" style=3D"border-collapse: separate=3B color: rgb(0=2C=
> > 0=2C 0)=3B font-family: Helvetica=3B font-size: 12px=3B font-style: normal=
> >=3B font-variant: normal=3B font-weight: normal=3B letter-spacing: normal=
> >=3B line-height: normal=3B text-indent: 0px=3B text-transform: none=3B whit=
> >e-space: normal=3B word-spacing: 0px=3B"><span class=3D"ecxApple-style-span=
> >" style=3D"border-collapse: separate=3B color: rgb(0=2C 0=2C 0)=3B font-fam=
> >ily: Helvetica=3B font-size: 12px=3B font-style: normal=3B font-variant: no=
> >rmal=3B font-weight: normal=3B letter-spacing: normal=3B line-height: norma=
> >l=3B text-indent: 0px=3B text-transform: none=3B white-space: normal=3B wor=
> >d-spacing: 0px=3B"><span class=3D"ecxApple-style-span" style=3D"border-coll=
> >apse: separate=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font=
> >-size: 12px=3B font-style: normal=3B font-variant: normal=3B font-weight: n=
> >ormal=3B letter-spacing: normal=3B line-height: normal=3B text-indent: 0px=
> >=3B text-transform: none=3B white-space: normal=3B word-spacing: 0px=3B"><s=
> >pan class=3D"ecxApple-style-span" style=3D"border-collapse: separate=3B col=
> >or: rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font-size: 12px=3B font-s=
> >tyle: normal=3B font-variant: normal=3B font-weight: normal=3B letter-spaci=
> >ng: normal=3B line-height: normal=3B text-indent: 0px=3B text-transform: no=
> >ne=3B white-space: normal=3B word-spacing: 0px=3B"><span class=3D"ecxApple-=
> >style-span" style=3D"border-collapse: separate=3B color: rgb(0=2C 0=2C 0)=
> >=3B font-family: Helvetica=3B font-size: 12px=3B font-style: normal=3B font=
> >-variant: normal=3B font-weight: normal=3B letter-spacing: normal=3B line-h=
> >eight: normal=3B text-indent: 0px=3B text-transform: none=3B white-space: n=
> >ormal=3B word-spacing: 0px=3B"><span class=3D"ecxApple-style-span" style=3D=
> >"border-collapse: separate=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helve=
> >tica=3B font-size: 12px=3B font-style: normal=3B font-variant: normal=3B fo=
> >nt-weight: normal=3B letter-spacing: normal=3B line-height: normal=3B text-=
> >indent: 0px=3B text-transform: none=3B white-space: normal=3B word-spacing:=
> > 0px=3B"><span class=3D"ecxApple-style-span" style=3D"border-collapse: sepa=
> >rate=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font-size: 12p=
> >x=3B font-style: normal=3B font-variant: normal=3B font-weight: normal=3B l=
> >etter-spacing: normal=3B line-height: normal=3B text-indent: 0px=3B text-tr=
> >ansform: none=3B white-space: normal=3B word-spacing: 0px=3B"><div><span cl=
> >ass=3D"ecxApple-style-span" style=3D"font-size: medium=3B">On 14 Dec 2009=
> >=2C at 10:43=2C Jay K wrote:</span></div></span></span></span></span></span=
> >></span></span></span></div></span></span></div><div><br class=3D"ecxApple-=
> >interchange-newline"><blockquote><span class=3D"ecxApple-style-span" style=
> >=3D"border-collapse: separate=3B font-family: Helvetica=3B font-size: mediu=
> >m=3B font-style: normal=3B font-variant: normal=3B font-weight: normal=3B l=
> >etter-spacing: normal=3B line-height: normal=3B text-indent: 0px=3B text-tr=
> >ansform: none=3B white-space: normal=3B word-spacing: 0px=3B"><div class=3D=
> >"ecxhmmessage" style=3D"font-size: 10pt=3B font-family: Verdana=3B">I know =
> >I know. I know exactly the code. I rewrote it=2C at least once.<br>Cross co=
> >mpiling works.<br>Native does not.<br>It must be the threshold variables in=
> > RTCollector.<br></div></span></blockquote><div><br></div><div>Yeah=2C I've=
> > been bitten by just that scenario in the past -- those are the earliest us=
> >e of FP in the run-time linker.  =3BIf they are broken you find out qui=
> >ckly.  =3BCan you take a look at the gcc m3cg code for FP?  =3BIt w=
> >orked at one point just fine on native Alpha 64-bit=2C so should not be too=
> > hard to fix.</div><br><blockquote><span class=3D"ecxApple-style-span" styl=
> >e=3D"border-collapse: separate=3B font-family: Helvetica=3B font-size: medi=
> >um=3B font-style: normal=3B font-variant: normal=3B font-weight: normal=3B =
> >letter-spacing: normal=3B line-height: normal=3B text-indent: 0px=3B text-t=
> >ransform: none=3B white-space: normal=3B word-spacing: 0px=3B"><div class=
> >=3D"ecxhmmessage" style=3D"font-size: 10pt=3B font-family: Verdana=3B">I re=
> >ally thought I understood that code.<br><br> =3B- Jay<br><br><br><hr id=
> >=3D"ecxstopSpelling">From:<span class=3D"ecxApple-converted-space"> =3B=
> ></span><a href=3D"mailto:hosking at cs.purdue.edu">hosking at cs.purdue.edu</a><b=
> >r>Date: Mon=2C 14 Dec 2009 10:38:06 -0500<br>To:<span class=3D"ecxApple-con=
> >verted-space"> =3B</span><a href=3D"mailto:jkrell at elego.de">jkrell at eleg=
> >o.de</a><br>CC:<span class=3D"ecxApple-converted-space"> =3B</span><a h=
> >ref=3D"mailto:m3commit at elegosoft.com">m3commit at elegosoft.com</a><br>Subject=
> >: Re: [M3commit] CVS Update: cm3<br><br><div><span class=3D"ecxecxApple-sty=
> >le-span" style=3D"border-collapse: separate=3B color: rgb(0=2C 0=2C 0)=3B f=
> >ont-family: Helvetica=3B font-size: 12px=3B font-style: normal=3B font-vari=
> >ant: normal=3B font-weight: normal=3B letter-spacing: normal=3B line-height=
> >: normal=3B text-indent: 0px=3B text-transform: none=3B white-space: normal=
> >=3B word-spacing: 0px=3B"><span class=3D"ecxecxApple-style-span" style=3D"b=
> >order-collapse: separate=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helveti=
> >ca=3B font-size: 12px=3B font-style: normal=3B font-variant: normal=3B font=
> >-weight: normal=3B letter-spacing: normal=3B line-height: normal=3B text-in=
> >dent: 0px=3B text-transform: none=3B white-space: normal=3B word-spacing: 0=
> >px=3B"><div style=3D"word-wrap: break-word=3B"><span class=3D"ecxecxApple-s=
> >tyle-span" style=3D"border-collapse: separate=3B color: rgb(0=2C 0=2C 0)=3B=
> > font-family: Helvetica=3B font-size: 12px=3B font-style: normal=3B font-va=
> >riant: normal=3B font-weight: normal=3B letter-spacing: normal=3B line-heig=
> >ht: normal=3B text-indent: 0px=3B text-transform: none=3B white-space: norm=
> >al=3B word-spacing: 0px=3B"><span class=3D"ecxecxApple-style-span" style=3D=
> >"border-collapse: separate=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helve=
> >tica=3B font-size: 12px=3B font-style: normal=3B font-variant: normal=3B fo=
> >nt-weight: normal=3B letter-spacing: normal=3B line-height: normal=3B text-=
> >indent: 0px=3B text-transform: none=3B white-space: normal=3B word-spacing:=
> > 0px=3B"><span class=3D"ecxecxApple-style-span" style=3D"border-collapse: s=
> >eparate=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font-size: =
> >12px=3B font-style: normal=3B font-variant: normal=3B font-weight: normal=
> >=3B letter-spacing: normal=3B line-height: normal=3B text-indent: 0px=3B te=
> >xt-transform: none=3B white-space: normal=3B word-spacing: 0px=3B"><span cl=
> >ass=3D"ecxecxApple-style-span" style=3D"border-collapse: separate=3B color:=
> > rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font-size: 12px=3B font-styl=
> >e: normal=3B font-variant: normal=3B font-weight: normal=3B letter-spacing:=
> > normal=3B line-height: normal=3B text-indent: 0px=3B text-transform: none=
> >=3B white-space: normal=3B word-spacing: 0px=3B"><span class=3D"ecxecxApple=
> >-style-span" style=3D"border-collapse: separate=3B color: rgb(0=2C 0=2C 0)=
> >=3B font-family: Helvetica=3B font-size: 12px=3B font-style: normal=3B font=
> >-variant: normal=3B font-weight: normal=3B letter-spacing: normal=3B line-h=
> >eight: normal=3B text-indent: 0px=3B text-transform: none=3B white-space: n=
> >ormal=3B word-spacing: 0px=3B"><span class=3D"ecxecxApple-style-span" style=
> >=3D"border-collapse: separate=3B color: rgb(0=2C 0=2C 0)=3B font-family: He=
> >lvetica=3B font-size: 12px=3B font-style: normal=3B font-variant: normal=3B=
> > font-weight: normal=3B letter-spacing: normal=3B line-height: normal=3B te=
> >xt-indent: 0px=3B text-transform: none=3B white-space: normal=3B word-spaci=
> >ng: 0px=3B"><span class=3D"ecxecxApple-style-span" style=3D"border-collapse=
> >: separate=3B color: rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font-siz=
> >e: 12px=3B font-style: normal=3B font-variant: normal=3B font-weight: norma=
> >l=3B letter-spacing: normal=3B line-height: normal=3B text-indent: 0px=3B t=
> >ext-transform: none=3B white-space: normal=3B word-spacing: 0px=3B"><span c=
> >lass=3D"ecxecxApple-style-span" style=3D"border-collapse: separate=3B color=
> >: rgb(0=2C 0=2C 0)=3B font-family: Helvetica=3B font-size: 12px=3B font-sty=
> >le: normal=3B font-variant: normal=3B font-weight: normal=3B letter-spacing=
> >: normal=3B line-height: normal=3B text-indent: 0px=3B text-transform: none=
> >=3B white-space: normal=3B word-spacing: 0px=3B"><div><span class=3D"ecxecx=
> >Apple-style-span" style=3D"font-size: medium=3B"><font class=3D"ecxecxApple=
> >-style-span" color=3D"#0000ff" face=3D"'Gill Sans'">This suggests an m3cg b=
> >ackend 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=2C at 14:40=2C Jay Krell wrot=
> >e:</div><br class=3D"ecxecxApple-interchange-newline"><blockquote><div>CVSR=
> >OOT:<span class=3D"ecxecxApple-tab-span" style=3D"white-space: pre=3B"> </s=
> >pan>/usr/cvs<br>Changes by:<span class=3D"ecxecxApple-tab-span" style=3D"wh=
> >ite-space: pre=3B"> </span>jkrell at birch.<span class=3D"ecxecxApple-tab-span=
> >" style=3D"white-space: pre=3B"> </span>09/12/14 14:40:15<br><br>Modified f=
> >iles:<br><span class=3D"ecxecxApple-tab-span" style=3D"white-space: pre=3B"=
> >> </span>cm3/m3-libs/m3core/src/runtime/SPARC64_SOLARIS/: RTMachine.i3<span=
> > class=3D"ecxApple-converted-space"> =3B</span><br><span class=3D"ecxec=
> >xApple-tab-span" style=3D"white-space: pre=3B"> </span>cm3/m3-libs/m3core/s=
> >rc/unix/: m3makefile<span class=3D"ecxApple-converted-space"> =3B</span=
> >><br>Removed files:<br><span class=3D"ecxecxApple-tab-span" style=3D"white-=
> >space: pre=3B"> </span>cm3/m3-libs/m3core/src/runtime/SPARC64_SOLARIS/: RTS=
> >ignal.m3<span class=3D"ecxApple-converted-space"> =3B</span><br><br>Log=
> > message:<br><span class=3D"ecxecxApple-tab-span" style=3D"white-space: pre=
> >=3B"> </span>updates so SPARC64_SOLARIS bootstrap can build<br><span class=
> >=3D"ecxecxApple-tab-span" style=3D"white-space: pre=3B"> </span>(possible t=
> >angent related to getting SPARC64_OPENBSD<br><span class=3D"ecxecxApple-tab=
> >-span" style=3D"white-space: pre=3B"> </span>to work -- problem apparently =
> >with the floating point<br><span class=3D"ecxecxApple-tab-span" style=3D"wh=
> >ite-space: pre=3B"> </span>constants in RTCollector=2C such that Behind() i=
> >s<br><span class=3D"ecxecxApple-tab-span" style=3D"white-space: pre=3B"> </=
> >span>always TRUE=2C even for the first allocation=2C so<br><span class=3D"e=
> >cxecxApple-tab-span" style=3D"white-space: pre=3B"> </span>access violate t=
> >rying to garbage collect too<br><span class=3D"ecxecxApple-tab-span" style=
> >=3D"white-space: pre=3B"> </span>early=2C when self is still NULL)<br></div=
> >></blockquote></div><br></div></span><br class=3D"ecxApple-interchange-newl=
> >ine"></blockquote></div><br> </body>
> ></html>=
> >
> >--_53b61834-1f8f-4857-9285-039cb0730d0c_--
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20091214/e1b65dfb/attachment-0002.html>
More information about the M3devel
mailing list