On 1/16/21 8:55 AM, Philip Balister wrote:
> On 1/16/21 8:34 AM, Mans Rullgard wrote:
>> This patch makes gcc produce broken code.  It is unclear why it is there
>> in the first place.  Drop it.
> 
> I'm having flashbacks to a time where gcc didn't support
> __sync_add_and_fetch and friends, so code that looks like this was
> copedi around as a work around. Compilers caught up and this patch
> should have been dropped years ago :)
> 
> I looked around and can't find any similar patterns in oe-core.
> 
> For amusement I looked in oe-classic and there are hints of this issue.
> And this specific patch comes from oe-classic.
> 
> Thanks for finding this Mans!

I gets worse, looks like I added the patch in 2008, complete with the
missing return statement.

https://github.com/openembedded/openembedded/commit/74e7c9a96d176e32aac4791c7e308a0c904f735b

Acked-by: Philip Balister <[email protected]>



> 
> Philip
> 
>>
>> Signed-off-by: Mans Rullgard <[email protected]>
>> ---
>>  .../boost/boost/arm-intrinsics.patch          | 55 -------------------
>>  meta/recipes-support/boost/boost_1.75.0.bb    |  2 +-
>>  2 files changed, 1 insertion(+), 56 deletions(-)
>>  delete mode 100644 meta/recipes-support/boost/boost/arm-intrinsics.patch
>>
>> diff --git a/meta/recipes-support/boost/boost/arm-intrinsics.patch 
>> b/meta/recipes-support/boost/boost/arm-intrinsics.patch
>> deleted file mode 100644
>> index fe85c69a827a..000000000000
>> --- a/meta/recipes-support/boost/boost/arm-intrinsics.patch
>> +++ /dev/null
>> @@ -1,55 +0,0 @@
>> -Upstream-Status: Backport
>> -
>> -8/17/2010 - rebased to 1.44 by Qing He <[email protected]>
>> -
>> -diff --git a/boost/smart_ptr/detail/atomic_count_sync.hpp 
>> b/boost/smart_ptr/detail/atomic_count_sync.hpp
>> -index b6359b5..78b1cc2 100644
>> ---- a/boost/smart_ptr/detail/atomic_count_sync.hpp
>> -+++ b/boost/smart_ptr/detail/atomic_count_sync.hpp
>> -@@ -33,17 +33,46 @@ public:
>> - 
>> -     long operator++()
>> -     {
>> -+#ifdef __ARM_ARCH_7A__
>> -+       int v1, tmp;
>> -+       asm volatile ("1:                 \n\t"
>> -+                     "ldrex   %0, %1     \n\t"
>> -+                     "add     %0 ,%0, #1 \n\t"
>> -+                     "strex   %2, %0, %1 \n\t"
>> -+                     "cmp     %2, #0     \n\t"
>> -+                     "bne     1b         \n\t"
>> -+                     : "=&r" (v1), "+Q"(value_), "=&r"(tmp)
>> -+                    );
>> -+#else
>> -         return __sync_add_and_fetch( &value_, 1 );
>> -+#endif
>> -     }
>> - 
>> -     long operator--()
>> -     {
>> -+#ifdef __ARM_ARCH_7A__
>> -+       int v1, tmp;
>> -+       asm volatile ("1:                 \n\t"
>> -+                     "ldrex   %0, %1     \n\t"
>> -+                     "sub     %0 ,%0, #1 \n\t"
>> -+                     "strex   %2, %0, %1 \n\t"
>> -+                     "cmp     %2, #0     \n\t"
>> -+                     "bne     1b         \n\t"
>> -+                     : "=&r" (v1), "+Q"(value_), "=&r"(tmp)
>> -+                    );
>> -+       return value_;
>> -+#else
>> -         return __sync_add_and_fetch( &value_, -1 );
>> -+#endif
>> -     }
>> - 
>> -     operator long() const
>> -     {
>> -+#if __ARM_ARCH_7A__
>> -+        return value_;
>> -+#else
>> -         return __sync_fetch_and_add( &value_, 0 );
>> -+#endif
>> -     }
>> - 
>> - private:
>> diff --git a/meta/recipes-support/boost/boost_1.75.0.bb 
>> b/meta/recipes-support/boost/boost_1.75.0.bb
>> index 33137e236dba..23b0ffc67e29 100644
>> --- a/meta/recipes-support/boost/boost_1.75.0.bb
>> +++ b/meta/recipes-support/boost/boost_1.75.0.bb
>> @@ -1,7 +1,7 @@
>>  require boost-${PV}.inc
>>  require boost.inc
>>  
>> -SRC_URI += "file://arm-intrinsics.patch \
>> +SRC_URI += " \
>>             file://boost-CVE-2012-2677.patch \
>>             file://boost-math-disable-pch-for-gcc.patch \
>>             
>> file://0001-Don-t-set-up-arch-instruction-set-flags-we-do-that-o.patch \
>>
>>
>>
>>
>>
>>
>>
>> 
>>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#146877): 
https://lists.openembedded.org/g/openembedded-core/message/146877
Mute This Topic: https://lists.openembedded.org/mt/79727098/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to