[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#792204: Setting default CPU to ultrasparc for -m32 on sparc64 does not work



On 07/20/2015 01:37 AM, Michael Karcher wrote:
> Hello,
> 
> the problem (ATOMIC_INT_LOCK_FREE == 1) applies for the 32-bit build of
> libstdc++,
> and is caused by gcc assuming a too old 32-bit sparc processor, as can
> be seen by:
> 
>> (unstable-sparc64-sbuild)mkarcher@ravirin:~$ COLUMNS=140 dpkg -l gcc-4.9
>> Desired=Unknown/Install/Remove/Purge/Hold
>> |
> Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
>> |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
>> ||/ Name                          Version            
> Architecture        Description
>>
> +++-=============================-===================-===================-===============================================================
>> ii  gcc-4.9                       4.9.2-21+sparc64   
> sparc64             GNU C compiler
> 
> (this is a custom build of the official debian gcc source with the
> symbol verification
> quieted by using fudged expected symbols lists)
> 
>> (unstable-sparc64-sbuild)mkarcher@ravirin:~$ g++-4.9 -std=c++11 -dM -E
> -m32 -x c++ /dev/null | grep INT_LOCK      
>> #define __GCC_ATOMIC_INT_LOCK_FREE 1
>> (unstable-sparc64-sbuild)mkarcher@ravirin:~$ g++-4.9 -std=c++11 -dM -E
> -m32 -mcpu=ultrasparc -x c++ /dev/null | grep INT_LOCK
>> #define __GCC_ATOMIC_INT_LOCK_FREE 2
> 
> The changelog messages for gcc seem to indicate that the default CPU for
> -m32 is
> intended to be ultrasparc:
> 
>> gcc-4.9 (4.9.0-10) unstable; urgency=medium
>>
>>   * Update to SVN 20140704 (r212295) from the gcc-4_9-branch.
>>
>>   * Explicitly set cpu_32 to ultrasparc for sparc64 builds.
> [...]
>> gcc-4.9 (4.9.0-9) unstable; urgency=medium
>>
>>   * Update to SVN 20140701 (r212192) from the gcc-4_9-branch.
>>   * Update libstdc++ symbols files for ARM.
>>   * Configure --with-cpu-32=ultrasparc on sparc64.
> 
> This seems to not have the intended effect of defaulting to require the
> ultrasparc
> architecture providing lock-free atomics.
> 
> Regards,
>   Michael Karcher

see sparc-force-cpu.diff, which currently disables this for sparc64 biarch. So
maybe somebody should just enable it and see if it works as intended, or make it
working.


Reply to: