[all-commits] [llvm/llvm-project] 7e1ee1: [libcxx] Add strict weak ordering checks to sortin...

Daniel Kutenin via All-commits all-commits at lists.llvm.org
Sun Jun 4 10:27:46 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 7e1ee1e10dc0b77914de714b8f420c487e5705c6
      https://github.com/llvm/llvm-project/commit/7e1ee1e10dc0b77914de714b8f420c487e5705c6
  Author: Danila Kutenin <kutdanila at yandex.ru>
  Date:   2023-06-04 (Sun, 04 Jun 2023)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/sort.h
    M libcxx/include/__algorithm/sort_heap.h
    M libcxx/include/__algorithm/stable_sort.h
    M libcxx/include/__debug
    A libcxx/include/__debug_utils/strict_weak_ordering_check.h
    M libcxx/include/module.modulemap.in
    M libcxx/test/libcxx/algorithms/alg.sorting/assert.sort.invalid_comparator.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/complexity.pass.cpp
    M libcxx/test/std/algorithms/alg.sorting/alg.heap.operations/sort.heap/ranges_sort_heap.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/robust_against_proxy_iterators_lifetime_bugs.pass.cpp

  Log Message:
  -----------
  [libcxx] Add strict weak ordering checks to sorting algorithms

This is the implementation of the first proposal of strict weak ordering checks described in https://discourse.llvm.org/t/rfc-strict-weak-ordering-checks-in-the-debug-libc/70217

This targets the most vulnerable algorithms like std::sort

Reviewed By: philnik, #libc

Differential Revision: https://reviews.llvm.org/D150264




More information about the All-commits mailing list