Checkpoint the party/runtime stack before share-program and malicious-mode work.

Ship the TLS mesh, composer, Beaver/Yao/leaf MPC, prep/online paths, apps, and docs so the tree is pushable before elevating share_expr, security_mode, and prep resume.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Ryan Henry 2026-09-28 05:59:19 -06:00
parent 695f8e84f7
commit 0d22946a0e
1835 changed files with 170291 additions and 2849 deletions

View file

@ -130,7 +130,7 @@ class bitstring : public bit_array_base<bitstring<Nbits, WordT>, WordT>
HEDLEY_ALWAYS_INLINE
HEDLEY_NO_THROW
constexpr explicit bitstring(word_type val) noexcept
: data_{Nbits < bits_per_word ? static_cast<word_type>(val & (static_cast<word_type>(~word_type{0}) >> utils::bitlength_of_v<word_type> - Nbits)) : val} { }
: data_{Nbits < bits_per_word ? static_cast<word_type>(val & (static_cast<word_type>(~word_type{0}) >> (utils::bitlength_of_v<word_type> - Nbits))) : val} { }
/// @brief Constructs a `dpf::bitstring` using the characters in the
/// `std::basic_string` `str`. An optional starting position `pos`
@ -782,11 +782,22 @@ struct mod_pow_2<dpf::bitstring<Nbits, WordT>>
}
};
/// @brief Bitstrings add by XOR over their packed words.
template <std::size_t Nbits, typename WordT>
struct has_characteristic_two<dpf::bitstring<Nbits, WordT>>
: public std::true_type {};
} // namespace utils
namespace bitstrings
{
/// @name bitN_t
/// @{
/// @brief `bitN_t` is `dpf::bitstring<N>` for N from 1 through 128. Not `dpf::bit`.
/// @see dpf::bitstring
/// @see dpf::bit
// 1--9
using bit1_t = dpf::bitstring<1>;
using bit2_t = dpf::bitstring<2>;
@ -929,6 +940,8 @@ using bit126_t = dpf::bitstring<126>;
using bit127_t = dpf::bitstring<127>;
using bit128_t = dpf::bitstring<128>;
/// @}
namespace literals = dpf::literals::bitstrings;
} // namespace bitstrings
@ -1008,6 +1021,11 @@ constexpr static auto operator "" _bitstring_u128()
return bitstring_literal<dpf::bitstring<sizeof...(bits), simde_uint128>, bits...>();
}
/// @name bitstring literals `_bN`
/// @{
/// @brief Digit-string literal for `dpf::bitstring<N>`. The first character is the high bit.
/// @see dpf::bitstring
// 1--9
template <char ...bits> constexpr static auto operator "" _b1() { return bitstring_literal<dpf::bitstring<1>, bits...>(); }
template <char ...bits> constexpr static auto operator "" _b2() { return bitstring_literal<dpf::bitstring<2>, bits...>(); }
@ -1150,6 +1168,8 @@ template <char ...bits> constexpr static auto operator "" _b126() { return bitst
template <char ...bits> constexpr static auto operator "" _b127() { return bitstring_literal<dpf::bitstring<127>, bits...>(); }
template <char ...bits> constexpr static auto operator "" _b128() { return bitstring_literal<dpf::bitstring<128>, bits...>(); }
/// @}
} // namespace bitstrings
} // namespace literals