I've spent some time building GCC-4.7 and discovered that it contains sparcv8+ assembler and doesn't build when you try to set the architecture to be sparcv8. A simple solution is to build for sparcv8+ as the base achitecture. With GCC it's a bigger deal that with other software, because once we build libgcc_s.so.1 for sparcv8+, anything built with GCC will no longer work on sparcv8. I've already compiled libgmp for sparcv8+, but this only causes the compiler itself not work on sparcv8. The change I'm talking about here, goes deeper, and affects anything built with GCC.<div>

<br></div><div>For me, who joined the project in 2009 and worked with modern hardware, it's a rather abstract idea to support hardware that was last built in 1996. I've never worked with such hardware and it's hard for me to assess how important it is to keep this compatibility. I'm considering following options:</div>

<div><br></div><div>- using sparcv8+ as the base architecture for GCC and breaking the compatibility</div><div>- not building GCC-4.7 for Solaris 9; we've agreed on sparcv8+ for Solaris 10</div><div>- trying to patch the assembler code not to use compare-and-swap</div>

<div>- trying to hack the build process to build libgcc_s and libstdc++ for sparcv8</div><div><br></div><div>Thoughts?</div><div><div><br></div><div>Maciej</div></div>