Re: solaris build problem with Sun compilers
От | Alan Stange |
---|---|
Тема | Re: solaris build problem with Sun compilers |
Дата | |
Msg-id | 446C6B44.9040800@rentec.com обсуждение исходный текст |
Ответ на | Re: solaris build problem with Sun compilers (Bruce Momjian <pgman@candle.pha.pa.us>) |
Ответы |
Re: solaris build problem with Sun compilers
|
Список | pgsql-ports |
Bruce Momjian wrote: > Alan Stange wrote: >> Tom Lane wrote: >>> Alan Stange <stange@rentec.com> writes: >>> >>>> Check out the comment and implementation for cas32() in this .il >>>> template file for libc from OpenSolaris: >>>> >>> >>>> http://cvs.opensolaris.org/source/xref/on/usr/src/lib/libc/sparc/threads/sparc.il >>>> >>> If you mean >>> >>> * When compiling with -xarch=v8, the compiler refuses to >>> * accept the 'cas' instruction, so we encode it in hex below. >>> >>> I can't say that that impresses me. It still will fail on v8 chips no? >>> What's the point of fooling the compiler if you can't fool the hardware? >> I believe the trick here is that Solaris 10 will only run on v9 hardware >> (or the sun4u systems), which all have the instruction. But the v8 ABI >> "model" doesn't have it. So, in some sense the ABI doesn't "allow" >> this instruction, but the hardware does, so they can just slam it in >> knowing that it'll work. > Uh, are you saying our Solaris Sparc "cas" ASM is only going to work for > Solaris 11 tools? That doesn't sound good. We must have people using > earlier Solaris tools. No, I'm not saying that at all. I think I'm saying that cas is OK for any reasonable Solaris+Sparc+Sun compiler combination. It'll fail on any SuperSparc based hardware and older compilers (more than ~5 years), but that's too bad. I'm also saying that cas in not OK for any gcc+binutils combination. As far as I can tell, gcc is still building code for the v7 platform by default. It's possible to override this, but I don't think it's something you can test for in the preprocessor. -- Alan
В списке pgsql-ports по дате отправления: