www/firefox: unbreak on aarch64 and powerpc64

PR:		234253
Submitted by:	Mikaël Urankar
This commit is contained in:
Jan Beich 2019-03-01 19:14:38 +00:00
parent d134d46255
commit 5e1e05f2d8
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=494312
8 changed files with 932 additions and 0 deletions

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,29 @@
Regressed by https://svnweb.freebsd.org/changeset/base/324815
gfx/skia/skia/src/core/SkCpu.cpp:81:37: error: use of undeclared identifier 'AT_HWCAP'
uint32_t hwcaps = getauxval(AT_HWCAP);
^
--- gfx/skia/skia/src/core/SkCpu.cpp.orig 2019-02-27 22:18:23 UTC
+++ gfx/skia/skia/src/core/SkCpu.cpp
@@ -70,6 +70,20 @@
return features;
}
+#elif defined(SK_CPU_ARM64) && defined(__FreeBSD__)
+ #include <machine/armreg.h>
+
+ static uint32_t read_cpu_features() {
+ uint32_t features = 0;
+ uint64_t id_aa64isar0;
+
+ id_aa64isar0 = READ_SPECIALREG(ID_AA64ISAR0_EL1);
+ if (ID_AA64ISAR0_CRC32(id_aa64isar0) == ID_AA64ISAR0_CRC32_BASE) {
+ features |= SkCpu::CRC32;
+ }
+ return features;
+ }
+
#elif defined(SK_CPU_ARM64) && __has_include(<sys/auxv.h>)
#include <sys/auxv.h>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,29 @@
Regressed by https://svnweb.freebsd.org/changeset/base/324815
gfx/skia/skia/src/core/SkCpu.cpp:81:37: error: use of undeclared identifier 'AT_HWCAP'
uint32_t hwcaps = getauxval(AT_HWCAP);
^
--- mozilla-release/gfx/skia/skia/src/core/SkCpu.cpp.orig 2019-02-27 22:18:23 UTC
+++ mozilla-release/gfx/skia/skia/src/core/SkCpu.cpp
@@ -70,6 +70,20 @@
return features;
}
+#elif defined(SK_CPU_ARM64) && defined(__FreeBSD__)
+ #include <machine/armreg.h>
+
+ static uint32_t read_cpu_features() {
+ uint32_t features = 0;
+ uint64_t id_aa64isar0;
+
+ id_aa64isar0 = READ_SPECIALREG(ID_AA64ISAR0_EL1);
+ if (ID_AA64ISAR0_CRC32(id_aa64isar0) == ID_AA64ISAR0_CRC32_BASE) {
+ features |= SkCpu::CRC32;
+ }
+ return features;
+ }
+
#elif defined(SK_CPU_ARM64) && __has_include(<sys/auxv.h>)
#include <sys/auxv.h>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,29 @@
Regressed by https://svnweb.freebsd.org/changeset/base/324815
gfx/skia/skia/src/core/SkCpu.cpp:81:37: error: use of undeclared identifier 'AT_HWCAP'
uint32_t hwcaps = getauxval(AT_HWCAP);
^
--- gfx/skia/skia/src/core/SkCpu.cpp.orig 2019-02-27 22:18:23 UTC
+++ gfx/skia/skia/src/core/SkCpu.cpp
@@ -70,6 +70,20 @@
return features;
}
+#elif defined(SK_CPU_ARM64) && defined(__FreeBSD__)
+ #include <machine/armreg.h>
+
+ static uint32_t read_cpu_features() {
+ uint32_t features = 0;
+ uint64_t id_aa64isar0;
+
+ id_aa64isar0 = READ_SPECIALREG(ID_AA64ISAR0_EL1);
+ if (ID_AA64ISAR0_CRC32(id_aa64isar0) == ID_AA64ISAR0_CRC32_BASE) {
+ features |= SkCpu::CRC32;
+ }
+ return features;
+ }
+
#elif defined(SK_CPU_ARM64) && __has_include(<sys/auxv.h>)
#include <sys/auxv.h>

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,29 @@
Regressed by https://svnweb.freebsd.org/changeset/base/324815
gfx/skia/skia/src/core/SkCpu.cpp:81:37: error: use of undeclared identifier 'AT_HWCAP'
uint32_t hwcaps = getauxval(AT_HWCAP);
^
--- gfx/skia/skia/src/core/SkCpu.cpp.orig 2019-02-27 22:18:23 UTC
+++ gfx/skia/skia/src/core/SkCpu.cpp
@@ -70,6 +70,20 @@
return features;
}
+#elif defined(SK_CPU_ARM64) && defined(__FreeBSD__)
+ #include <machine/armreg.h>
+
+ static uint32_t read_cpu_features() {
+ uint32_t features = 0;
+ uint64_t id_aa64isar0;
+
+ id_aa64isar0 = READ_SPECIALREG(ID_AA64ISAR0_EL1);
+ if (ID_AA64ISAR0_CRC32(id_aa64isar0) == ID_AA64ISAR0_CRC32_BASE) {
+ features |= SkCpu::CRC32;
+ }
+ return features;
+ }
+
#elif defined(SK_CPU_ARM64) && __has_include(<sys/auxv.h>)
#include <sys/auxv.h>