mozilla-i686-build.patch
author Wolfgang Rosenauer <wr@rosenauer.org>
Mon, 17 Oct 2022 21:08:02 +0200
branchfirefox105
changeset 1179 c19c9e7820ef
permissions -rw-r--r--
Firefox 105.0.3
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1179
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     1
# HG changeset patch
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     2
# User Wolfgang Rosenauer <wr@rosenauer.org>
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     3
# Parent  63af48397aee6985bb8d711bd918a201e5c8c282
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     4
# References: bmo#1792159 - Add missing includes to AtomicOperationsGenerated.h
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     5
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     6
diff --git a/js/src/jit/GenerateAtomicOperations.py b/js/src/jit/GenerateAtomicOperations.py
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     7
--- a/js/src/jit/GenerateAtomicOperations.py
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     8
+++ b/js/src/jit/GenerateAtomicOperations.py
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
     9
@@ -702,16 +702,18 @@ HEADER_TEMPLATE = """\
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    10
  * License, v. 2.0. If a copy of the MPL was not distributed with this
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    11
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    12
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    13
 #ifndef jit_AtomicOperationsGenerated_h
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    14
 #define jit_AtomicOperationsGenerated_h
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    15
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    16
 /* This file is generated by jit/GenerateAtomicOperations.py. Do not edit! */
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    17
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    18
+#include "mozilla/Attributes.h"
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    19
+
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    20
 namespace js {
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    21
 namespace jit {
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    22
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    23
 %(contents)s
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    24
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    25
 } // namespace jit
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    26
 } // namespace js
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    27
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    28
diff --git a/mozglue/misc/SIMD_avx2.cpp b/mozglue/misc/SIMD_avx2.cpp
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    29
--- a/mozglue/misc/SIMD_avx2.cpp
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    30
+++ b/mozglue/misc/SIMD_avx2.cpp
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    31
@@ -50,17 +50,17 @@ template <typename TValue>
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    32
   }
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    33
   if (sizeof(TValue) == 2) {
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    34
     return _mm256_cmpeq_epi16(a, b);
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    35
   }
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    36
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    37
   return _mm256_cmpeq_epi64(a, b);
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    38
 }
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    39
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    40
-#  if defined(__GNUC__) && !defined(__clang__)
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    41
+#  if 0
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    42
 
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    43
 // See the comment in SIMD.cpp over Load32BitsIntoXMM. This is just adapted
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    44
 // from that workaround. Testing this, it also yields the correct instructions
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    45
 // across all tested compilers.
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    46
 __m128i Load64BitsIntoXMM(uintptr_t ptr) {
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    47
   int64_t tmp;
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    48
   memcpy(&tmp, reinterpret_cast<const void*>(ptr), sizeof(tmp));
c19c9e7820ef Firefox 105.0.3
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff changeset
    49
   return _mm_cvtsi64_si128(tmp);