libfolly: Fix compilation for older ARM platforms

ARM6 and below do not support the yield instruction. Do not use it there.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
This commit is contained in:
Rosen Penev 2019-06-17 11:32:52 -07:00
parent 070bda03ed
commit ed1204a2d1
2 changed files with 12 additions and 1 deletions

View file

@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=libfolly
PKG_VERSION:=2019.06.10.00
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://codeload.github.com/facebook/folly/tar.gz/v$(PKG_VERSION)?

View file

@ -0,0 +1,11 @@
--- a/folly/portability/Asm.h
+++ b/folly/portability/Asm.h
@@ -38,7 +38,7 @@ inline void asm_volatile_pause() {
::_mm_pause();
#elif defined(__i386__) || FOLLY_X64
asm volatile("pause");
-#elif FOLLY_AARCH64 || defined(__arm__)
+#elif FOLLY_AARCH64 || (defined(__arm__) && !(__ARM_ARCH < 7))
asm volatile("yield");
#elif FOLLY_PPC64
asm volatile("or 27,27,27");