Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 80c1e5f70b782e8dbd5c190e9b90e91fc81e4579
      
https://github.com/WebKit/WebKit/commit/80c1e5f70b782e8dbd5c190e9b90e91fc81e4579
  Author: David Kilzer <[email protected]>
  Date:   2026-05-26 (Tue, 26 May 2026)

  Changed paths:
    M Tools/lldb/dump_class_layout_unittest.py
    M Tools/lldb/lldbWebKitTester/DumpClassLayoutTesting.cpp

  Log Message:
  -----------
  REGRESSION(310262@main): [lldb] 
dump_class_layout_unittest.serial_test_InheritsFromClassWithPaddedBitfields 
fails constantly across all platforms.
<https://bugs.webkit.org/show_bug.cgi?id=315215>
<rdar://177546068>

Reviewed by Simon Fraser.

`ClassWithPaddedBitfields` has a different exposed tail-padding profile
between architectures: x86_64 reports `dsize=10` and lets
`derivedBitfield` reuse six bytes of the base's tail padding at +10
(16-byte derived class), while arm64/arm64e report `dsize=16` and place
`derivedBitfield` at +16 (24-byte derived class).  The previous expected
output assumed the arm64 layout, but `setUpClass` pinned `'x86_64'`, so
EWS bots loaded the x86_64 slice of the universal `lldbWebKitTester`
binary and saw the 16-byte layout.  Local engineering builds using
`ONLY_ACTIVE_ARCH=YES` produced an arm64-only binary, which let lldb
fall back to arm64 and report the 24-byte layout that matched the
hardcoded expected output.

Detect the host architecture via `/usr/bin/lipo -archs` and prefer
`arm64e` on Apple silicon, falling back to whatever slice is present.
Branch the expected output for
`serial_test_InheritsFromClassWithPaddedBitfields` on the selected
architecture.  The other padded-bitfield tests need no change because
their layouts are identical across architectures.

* Tools/lldb/dump_class_layout_unittest.py:
(_select_architecture): Add.
(TestDumpClassLayout.setUpClass):
- Pick the architecture to use for the tests.
(TestDumpClassLayout.serial_test_InheritsFromClassWithPaddedBitfields):
- Check the expected results based on the architecture.
* Tools/lldb/lldbWebKitTester/DumpClassLayoutTesting.cpp:
(InheritsFromClassWithPaddedBitfields):
- Add comment about layouts on different architectures.

Canonical link: https://commits.webkit.org/313939@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to