<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>244024</bug_id>
          
          <creation_ts>2022-08-17 01:23:18 -0700</creation_ts>
          <short_desc>libpas clang 14 warnings</short_desc>
          <delta_ts>2022-10-27 19:39:44 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>Web Template Framework</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>NEW</bug_status>
          <resolution></resolution>
          
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=247064</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Philippe Normand">philn</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>lmoura</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1891896</commentid>
    <comment_count>0</comment_count>
    <who name="Philippe Normand">philn</who>
    <bug_when>2022-08-17 01:23:18 -0700</bug_when>
    <thetext>In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_aligned_allocation_result.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_allocation_result.h:30:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:916:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_compare_exchange_weak((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
           ^
1 warning generated.
[42/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_allocator.c.o
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_bitfit_allocator.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_bitfit_allocator.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:916:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_compare_exchange_weak((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
           ^
1 warning generated.
[43/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_bitfit_directory.c.o
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_bitfit_directory.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_bitfit_directory.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_bitfit_max_free.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:916:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_compare_exchange_weak((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
           ^
1 warning generated.
[96/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_lock_free_read_ptr_ptr_hashtable.c.o
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_lock_free_read_ptr_ptr_hashtable.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_lock_free_read_ptr_ptr_hashtable.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_log.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:989:5: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    __c11_atomic_store((_Atomic pas_pair*)raw_ptr, value, 5);
    ^
1 warning generated.
[126/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_page_sharing_pool.c.o
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_page_sharing_pool.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_page_sharing_pool.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_bootstrap_free_heap.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_allocation_config.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_allocation_kind.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:916:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_compare_exchange_weak((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
           ^
1 warning generated.
[153/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_versioned_field.c.o
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_versioned_field.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_versioned_field.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:916:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_compare_exchange_weak((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
           ^
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:954:5: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    __c11_atomic_compare_exchange_strong((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
    ^
2 warnings generated.
[156/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_directory.c.o
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_directory.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_directory.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_bitvector.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_found_bit_index.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:966:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_load((_Atomic pas_pair*)raw_ptr, 0);
           ^
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:954:5: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    __c11_atomic_compare_exchange_strong((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
    ^
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:916:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_compare_exchange_weak((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
           ^
3 warnings generated.
[159/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_page.c.o
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_page.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_page.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_allocator_index.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:999:5: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    __c11_atomic_store((_Atomic pas_pair*)raw_ptr, value, 0);
    ^
1 warning generated.
[170/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_shared_page_directory.c.o
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_shared_page_directory.c:102:1624: warning: expression result unused [-Wunused-value]
        ({ const _Bool _verbose = 0; pas_segregated_directory* _directory; pas_segregated_directory_bit_reference _reference; _Bool _value; _Bool _result; _directory = (config-&gt;directory); _reference = (config-&gt;bit_reference); _value = (0); do { if (!0) break; if (__builtin_expect(!!(!pas_segregated_directory_bit_reference_is_null(_reference)), 1)) break; pas_assertion_failed_noreturn_silencer(&quot;/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_shared_page_directory.c&quot;, 103, __PRETTY_FUNCTION__, &quot;!pas_segregated_directory_bit_reference_is_null(_reference)&quot;); } while (0); if (pas_segregated_directory_bit_reference_is_inline(_reference)) { for (;;) { unsigned old_bits; unsigned new_bits; old_bits = _directory-&gt;bits; if (_value) new_bits = old_bits | (1u &lt;&lt; 0u); else new_bits = old_bits &amp; ~(1u &lt;&lt; 0u); if (old_bits == new_bits) { _result = 0; break; } if (pas_compare_and_swap_uint32_weak(&amp;_directory-&gt;bits, old_bits, new_bits)) { _result = 1; break; } } } else { for (;;) { unsigned old_bits; unsigned new_bits; old_bits = _reference.segment_ptr-&gt;eligible_bits; if (_value) new_bits = old_bits | _reference.mask; else new_bits = old_bits &amp; ~_reference.mask; if (old_bits == new_bits) { _result = 0; break; } if (pas_compare_and_swap_uint32_weak( &amp;_reference.segment_ptr-&gt;eligible_bits, old_bits, new_bits)) { _result = 1; break; } } } if (_verbose &amp;&amp; _result) { pas_log(&quot;%p[%s, %zu]: setting (ref) to %s at %s:%d %s\n&quot;, _directory, &quot;eligible&quot;, _reference.index, _value ? &quot;true&quot; : &quot;false&quot;, &quot;/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_shared_page_directory.c&quot;, 103, __PRETTY_FUNCTION__); } _result; });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       ^~~~~~~
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_shared_page_directory.c:391:1595: warning: expression result unused [-Wunused-value]
    ({ const _Bool _verbose = 0; pas_segregated_directory* _directory; pas_segregated_directory_bit_reference _reference; _Bool _value; _Bool _result; _directory = (directory); _reference = (bit_reference); _value = (0); do { if (!0) break; if (__builtin_expect(!!(!pas_segregated_directory_bit_reference_is_null(_reference)), 1)) break; pas_assertion_failed_noreturn_silencer(&quot;/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_shared_page_directory.c&quot;, 391, __PRETTY_FUNCTION__, &quot;!pas_segregated_directory_bit_reference_is_null(_reference)&quot;); } while (0); if (pas_segregated_directory_bit_reference_is_inline(_reference)) { for (;;) { unsigned old_bits; unsigned new_bits; old_bits = _directory-&gt;bits; if (_value) new_bits = old_bits | (1u &lt;&lt; 1u); else new_bits = old_bits &amp; ~(1u &lt;&lt; 1u); if (old_bits == new_bits) { _result = 0; break; } if (pas_compare_and_swap_uint32_weak(&amp;_directory-&gt;bits, old_bits, new_bits)) { _result = 1; break; } } } else { for (;;) { unsigned old_bits; unsigned new_bits; old_bits = _reference.segment_ptr-&gt;empty_bits; if (_value) new_bits = old_bits | _reference.mask; else new_bits = old_bits &amp; ~_reference.mask; if (old_bits == new_bits) { _result = 0; break; } if (pas_compare_and_swap_uint32_weak( &amp;_reference.segment_ptr-&gt;empty_bits, old_bits, new_bits)) { _result = 1; break; } } } if (_verbose &amp;&amp; _result) { pas_log(&quot;%p[%s, %zu]: setting (ref) to %s at %s:%d %s\n&quot;, _directory, &quot;empty&quot;, _reference.index, _value ? &quot;true&quot; : &quot;false&quot;, &quot;/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_shared_page_directory.c&quot;, 391, __PRETTY_FUNCTION__); } _result; });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          ^~~~~~~
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_shared_page_directory.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_shared_page_directory.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_directory.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_bitvector.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_found_bit_index.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:916:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_compare_exchange_weak((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
           ^
3 warnings generated.
[173/2125] Building C object Source/bmalloc/CMakeFiles/bmalloc.dir/libpas/src/libpas/pas_segregated_size_directory.c.o
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_size_directory.c:731:1188: warning: expression result unused [-Wunused-value]
    ({ const _Bool _verbose = 0; pas_segregated_directory* _directory; size_t _index; unsigned* _word_ptr; _Bool _value; _Bool _result; _directory = (directory); _index = (index); _value = (0); do { if (!0) break; if (__builtin_expect(!!(_index &lt; pas_segregated_directory_size(directory)), 1)) break; pas_assertion_failed_noreturn_silencer(&quot;/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_size_directory.c&quot;, 731, __PRETTY_FUNCTION__, &quot;_index &lt; pas_segregated_directory_size(directory)&quot;); } while (0); if (!_index) { _result = pas_segregated_directory_bits_set_by_mask( _directory, (1u &lt;&lt; 1u), _value); } else { size_t _adjusted_index; _adjusted_index = _index - 1; _word_ptr = &amp;pas_segregated_directory_segmented_bitvectors_get_ptr( &amp;pas_segregated_directory_data_ptr_load_non_null(&amp;_directory-&gt;data)-&gt;bitvectors, ((_adjusted_index) &gt;&gt; 5))-&gt;empty_bits; _result = pas_bitvector_set_atomic_in_word(_word_ptr, _adjusted_index, _value); } if (_verbose &amp;&amp; _result) { pas_log(&quot;%p[%s, %zu]: set to %s at %s:%d %s\n&quot;, _directory, &quot;empty&quot;, _index, _value ? &quot;true&quot; : &quot;false&quot;, &quot;/app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_size_directory.c&quot;, 731, __PRETTY_FUNCTION__); } _result; });
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   ^~~~~~~
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_size_directory.c:30:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_segregated_size_directory.h:29:
In file included from /app/webkit/Source/bmalloc/libpas/src/libpas/pas_allocator_index.h:29:
/app/webkit/Source/bmalloc/libpas/src/libpas/pas_utils.h:916:12: warning: large atomic operation may incur significant performance penalty; the access size (16 bytes) exceeds the max lock-free size (8  bytes) [-Watomic-alignment]
    return __c11_atomic_compare_exchange_weak((_Atomic pas_pair*)raw_ptr, &amp;old_value, new_value, 5, 5);
           ^
2 warnings generated.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1893435</commentid>
    <comment_count>1</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-08-24 01:25:01 -0700</bug_when>
    <thetext>&lt;rdar://problem/99073501&gt;</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>