Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 16 Feb 2020 20:09:40 +0000
From:      bugzilla-noreply@freebsd.org
To:        gecko@FreeBSD.org
Subject:   [Bug 243653] www/firefox: fix build on aarch64
Message-ID:  <bug-243653-21738-ExnEv4npHx@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-243653-21738@https.bugs.freebsd.org/bugzilla/>
References:  <bug-243653-21738@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D243653

--- Comment #4 from Jan Beich <jbeich@FreeBSD.org> ---
Comment on attachment 211696
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D211696
patch

(In reply to Mikael Urankar from comment #3)
> +    #include <machine/armreg.h>
> +#ifndef ID_AA64ISAR0_CRC32_VAL
> +#define ID_AA64ISAR0_CRC32_VAL ID_AA64ISAR0_CRC32
> +#endif

(cosmetic) Can you align whitespace so it looks like the following?

+    #include <machine/armreg.h>
+    #ifndef ID_AA64ISAR0_CRC32_VAL
+    #define ID_AA64ISAR0_CRC32_VAL ID_AA64ISAR0_CRC32
+    #endif

> Updated patch for firefox and firefox-esr

Without thunderbird? Also this version is broken:

  $ cc a.c
  a.c:15:13: warning: implicit declaration of function 'ID_AA64ISAR0_CRC32'=
 is
invalid in C99 [-Wimplicit-function-declaration]
          if (ID_AA64ISAR0_CRC32(id_aa64isar0) =3D=3D ID_AA64ISAR0_CRC32_BA=
SE) {
              ^
  a.c:14:24: error: expected readable system register
          id_aa64isar0 =3D READ_SPECIALREG(ID_AA64ISAR0_EL1);
                         ^
  /usr/include/machine/armreg.h:61:19: note: expanded from macro
'READ_SPECIALREG'
          __asm __volatile("mrs   %0, " __STRING(reg) : "=3D&r" (_val));   =
 \
                           ^
  <inline asm>:1:10: note: instantiated into assembly here
          mrs     x9, (((3) << 19) | ((0) << 16) | ((0) << 12) | ((6) << 8)=
 |
((0) << 5))
                      ^
  1 warning and 1 error generated.

  $ cat a.c
  #include <stdint.h>
  #include <stdio.h>

  #include <machine/armreg.h>
  #ifndef ID_AA64ISAR0_CRC32_VAL
  #define ID_AA64ISAR0_CRC32_VAL ID_AA64ISAR0_CRC32
  #endif

  int main(void)
  {
      uint32_t features =3D 0;
      uint64_t id_aa64isar0;

      id_aa64isar0 =3D READ_SPECIALREG(ID_AA64ISAR0_EL1);
      if (ID_AA64ISAR0_CRC32(id_aa64isar0) =3D=3D ID_AA64ISAR0_CRC32_BASE) {
          printf("CRC32 found\n");
      }
  }

> cliqz seems broken:

Then its maintainer can pick up the fix on their own. ;)

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-243653-21738-ExnEv4npHx>