Issue building boost libs 1_35_0 on sparcv8 arch. with gcc 4.0.2

FYI, I ran across a problem with the boost inline assembly code in boost_1_35_0/boost/detail/sp_counted_base_gcc_sparc.hpp. This file has inline assembly which uses the "cas" instruction. __asm__ __volatile__( "cas %0, %2, %1" : "+m" (*dest_), "+r" (swap_) : "r" (compare_) : "memory" ); Sparcv8 and pre-v8 architectures seem to be using the "swap" instruction instead. The native sparcv8 assembler therefore complains on trying to parse this: gcc.compile.c++ /home/cmchan/boost_libs/boost/bin.v2/libs/date_time/build/gcc-4.0.2/debu g/threading-multi/greg_month.o /var/tmp//ccMoGlpR.s: Assembler messages: /var/tmp//ccMoGlpR.s:1936: Error: Architecture mismatch on "cas". /var/tmp//ccMoGlpR.s:1936: (Requires v9|v9a|v9b; requested architecture is v8.) The file mentioned above is new in boost_1_35_0 and is included from boost_1_35_0/boost/detail/sp_counted_base.hpp: #elif defined(__GNUC__) && ( defined( __sparcv8 ) || defined( __sparcv9 ) ) Simply removing the pre-processing for __sparcv8 fixes the issue. I am not sure if this is really a tool-chain issue or the problem with the header boost_1_35_0/boost/detail/sp_counted_base.hpp Thanks, Aniket. <DIV><FONT size="1"> E-mail confidentiality. -------------------------------- This e-mail contains confidential and / or privileged information belonging to Spirent Communications plc, its affiliates and / or subsidiaries. If you are not the intended recipient, you are hereby notified that any disclosure, copying, distribution and / or the taking of any action based upon reliance on the contents of this transmission is strictly forbidden. If you have received this message in error please notify the sender by return e-mail and delete it from your system. If you require assistance, please contact our IT department at helpdesk@spirent.com. Spirent Communications plc Northwood Park, Gatwick Road, Crawley, West Sussex, RH10 9XN, United Kingdom. Tel No. +44 (0) 1293 767676 Fax No. +44 (0) 1293 767677 Registered in England Number 470893 Registered at Northwood Park, Gatwick Road, Crawley, West Sussex, RH10 9XN, United Kingdom. Or if within the US, Spirent Communications, 26750 Agoura Road, Calabasas, CA, 91302, USA. Tel No. 1-818-676- 2300 </FONT></DIV>
participants (1)
-
Bhat, Aniket