Fields

hardware None
os None

Parameters

Fields

NameValue

Parameters

NameValue
git_commit commit b3a199469c9d54fb3bdabf6dff5677b401f8fef6
Author: Louis Dionne <ldionne.2@gmail.com>
Date: Thu Oct 16 23:40:58 2025 -0400

[libc++] Properly implement array cookies in the ARM ABI (#160182)

When we implemented array cookie support for hardening std::unique_ptr,
the implementation was only done for the Itanium ABI. I did not
initially realize that ARM was using a different ABI for array cookies,
so unique_ptr should not have been hardened on ARM.

However, we were also incorrectly setting the ABI-detection macro: we
were pretending to be using a vanilla Itanium ABI when in reality the
(similar but different) ARM ABI was in use. As a result, unique_ptr was
using the wrong representation for array cookies on ARM, which
fortunately only mattered in the case of overaligned types.

This patch fixes that.

rdar://160852193
Filter

ldionne-old-macbook-results test results

Run Order Start Time Duration
Current 556303 2025-12-16T16:40:01 0:00:00
Previous 556176 2025-12-16T16:40:01 0:00:00
Baseline 485288 2025-12-16T16:40:01 0:00:00


Tests Summary

Status Group # # (B)
Performance Regressions 1 0
Performance Improvements 7 0
Added Tests 0 16
Unchanged Tests 72 64
Total Tests 80

Performance Regressions - execution_time Δ Previous Current σ Δ (B) σ (B)
710_omnetpp_r 1.38% 8.559 8.678 - 0.00% -

Performance Improvements - execution_time Δ Previous Current σ Δ (B) σ (B)
706_stockfish_r -4.00% 21.513 20.652 - 0.00% -
736_ocio_r -3.49% 16.745 16.160 - 0.00% -
709_cactus_r -2.34% 19.739 19.276 - 0.00% -
707_ntest_r -2.29% 16.607 16.227 - 0.00% -
735_gem5_r -1.42% 13.514 13.321 - 0.00% -
748_flightdm_r -1.09% 8.910 8.813 - 0.00% -
753_ns3_r -1.01% 10.202 10.098 - 0.00% -

Added Tests - execution_time
706_stockfish_r
707_ntest_r
709_cactus_r
710_omnetpp_r
721_gcc_r
723_llvm_r
727_cppcheck_r
729_abc_r
731_astcenc_r
735_gem5_r
736_ocio_r
737_gmsh_r
748_flightdm_r
750_sealcrypto_r
753_ns3_r
766_femflow_r


Report Time: 0.26s
Name Current %
706_stockfish_r 20.652 -4.00%
707_ntest_r 16.227 -2.29%
709_cactus_r 19.276 -2.34%
710_omnetpp_r 8.678 1.38%
721_gcc_r 12.921 -
723_llvm_r 11.469 -
727_cppcheck_r 24.846 -
729_abc_r 18.829 -
731_astcenc_r 10.115 -
735_gem5_r 13.321 -1.42%
736_ocio_r 16.160 -3.49%
737_gmsh_r 12.843 -
748_flightdm_r 8.813 -1.09%
750_sealcrypto_r 18.490 -
753_ns3_r 10.098 -1.01%
766_femflow_r 12.765 -
Geometric Mean 14.041 -