forked from mirrors/gecko-dev
Bug 1942738 - Move the .fpu neon directive around. a=RyanVM
clang's integrated assembler doesn't handle .fpu coming before .arch like GNU as does. The pixman patch was sent upstream: https://gitlab.freedesktop.org/pixman/pixman/-/issues/113#note_2746582 Original Revision: https://phabricator.services.mozilla.com/D235087 Differential Revision: https://phabricator.services.mozilla.com/D235100
This commit is contained in:
parent
2b44371b08
commit
4816f4d40e
5 changed files with 35 additions and 3 deletions
|
|
@ -63,3 +63,5 @@ pixman-interp.patch: use lower quality interpolation by default on mobile
|
|||
pixman-intrin.patch: include intrin.h on Windows to fix bustage
|
||||
|
||||
pixman-rename.patch: include pixman-rename.h for renaming of external symbols
|
||||
|
||||
pixman-neon.patch: fix for a build failure with clang on armhf linux
|
||||
|
|
|
|||
|
|
@ -55,9 +55,9 @@
|
|||
#endif
|
||||
|
||||
.text
|
||||
.fpu neon
|
||||
.arch armv7a
|
||||
.object_arch armv4
|
||||
.fpu neon
|
||||
.eabi_attribute 10, 0
|
||||
.eabi_attribute 12, 0
|
||||
.arm
|
||||
|
|
|
|||
|
|
@ -40,9 +40,9 @@
|
|||
#endif
|
||||
|
||||
.text
|
||||
.fpu neon
|
||||
.arch armv7a
|
||||
.object_arch armv4
|
||||
.fpu neon
|
||||
.eabi_attribute 10, 0 /* suppress Tag_FP_arch */
|
||||
.eabi_attribute 12, 0 /* suppress Tag_Advanced_SIMD_arch */
|
||||
.arm
|
||||
|
|
|
|||
30
gfx/cairo/pixman-neon.patch
Normal file
30
gfx/cairo/pixman-neon.patch
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
diff --git a/gfx/cairo/libpixman/src/pixman-arm-neon-asm-bilinear.S b/gfx/cairo/libpixman/src/pixman-arm-neon-asm-bilinear.S
|
||||
index 6bd27360aa027..cd33babca1e0c 100644
|
||||
--- a/gfx/cairo/libpixman/src/pixman-arm-neon-asm-bilinear.S
|
||||
+++ b/gfx/cairo/libpixman/src/pixman-arm-neon-asm-bilinear.S
|
||||
@@ -55,9 +55,9 @@
|
||||
#endif
|
||||
|
||||
.text
|
||||
-.fpu neon
|
||||
.arch armv7a
|
||||
.object_arch armv4
|
||||
+.fpu neon
|
||||
.eabi_attribute 10, 0
|
||||
.eabi_attribute 12, 0
|
||||
.arm
|
||||
diff --git a/gfx/cairo/libpixman/src/pixman-arm-neon-asm.S b/gfx/cairo/libpixman/src/pixman-arm-neon-asm.S
|
||||
index 0e092577f1c73..c04b335d1e5bd 100644
|
||||
--- a/gfx/cairo/libpixman/src/pixman-arm-neon-asm.S
|
||||
+++ b/gfx/cairo/libpixman/src/pixman-arm-neon-asm.S
|
||||
@@ -40,9 +40,9 @@
|
||||
#endif
|
||||
|
||||
.text
|
||||
- .fpu neon
|
||||
.arch armv7a
|
||||
.object_arch armv4
|
||||
+ .fpu neon
|
||||
.eabi_attribute 10, 0 /* suppress Tag_FP_arch */
|
||||
.eabi_attribute 12, 0 /* suppress Tag_Advanced_SIMD_arch */
|
||||
.arm
|
||||
|
|
@ -53,11 +53,11 @@ void __attribute((noinline,optimize("-fomit-frame-pointer")))
|
|||
* q13, q14, q15 - various constants (#16, #149, #204, #50, #104, #154)
|
||||
*/
|
||||
asm volatile (
|
||||
".fpu neon\n"
|
||||
/* Allow to build on targets not supporting neon, and force the object file
|
||||
* target to avoid bumping the final binary target */
|
||||
".arch armv7-a\n"
|
||||
".object_arch armv4t\n"
|
||||
".fpu neon\n"
|
||||
".macro convert_macroblock size\n"
|
||||
/* load up to 16 source pixels */
|
||||
".if \\size == 16\n"
|
||||
|
|
|
|||
Loading…
Reference in a new issue