gitextract_fzr909fs/ ├── .github/ │ └── workflows/ │ └── nix.yaml ├── .gitignore ├── .ocamlformat ├── .ocamlformat-ignore ├── LICENSE-APACHE ├── LICENSE-MIT ├── Makefile ├── README.md ├── bin/ │ ├── dune │ └── main.ml ├── cremepat/ │ ├── Lex.ml │ ├── Parse.mly │ ├── ParseTree.ml │ ├── README.md │ ├── cremepat.ml │ └── dune ├── dune ├── dune-project ├── eurydice.opam ├── flake.nix ├── include/ │ └── eurydice_glue.h ├── lib/ │ ├── AstOfLlbc.ml │ ├── Builtin.ml │ ├── Bundles.ml │ ├── Cleanup1.ml │ ├── Cleanup2.ml │ ├── Cleanup3.ml │ ├── LoadLlbc.ml │ ├── Logging.ml │ ├── Options.ml │ ├── PreCleanup.ml │ ├── Utf8.ml │ └── dune ├── out/ │ ├── test-array/ │ │ ├── array.c │ │ └── array.h │ ├── test-array2d/ │ │ ├── array2d.c │ │ └── array2d.h │ ├── test-castunsize/ │ │ ├── castunsize.c │ │ └── castunsize.h │ ├── test-closure/ │ │ ├── closure.c │ │ └── closure.h │ ├── test-closure_fn_cast/ │ │ ├── closure_fn_cast.c │ │ └── closure_fn_cast.h │ ├── test-collision/ │ │ ├── collision.c │ │ └── collision.h │ ├── test-const_generics/ │ │ ├── const_generics.c │ │ └── const_generics.h │ ├── test-core_num/ │ │ ├── core_num.c │ │ └── core_num.h │ ├── test-dst/ │ │ ├── dst.c │ │ └── dst.h │ ├── test-dyn_trait_struct_type/ │ │ ├── dyn_trait_struct_type.c │ │ └── dyn_trait_struct_type.h │ ├── test-floating_points/ │ │ ├── floating_points.c │ │ └── floating_points.h │ ├── test-fn_cast/ │ │ ├── fn_cast.c │ │ └── fn_cast.h │ ├── test-fn_higher_order/ │ │ ├── fn_higher_order.c │ │ └── fn_higher_order.h │ ├── test-for/ │ │ ├── for.c │ │ └── for.h │ ├── test-global_ref/ │ │ ├── global_ref.c │ │ └── global_ref.h │ ├── test-i32_shl/ │ │ ├── i32_shl.c │ │ └── i32_shl.h │ ├── test-inline_attributes/ │ │ ├── inline_attributes.c │ │ └── inline_attributes.h │ ├── test-int_switch/ │ │ ├── int_switch.c │ │ └── int_switch.h │ ├── test-issue_102/ │ │ ├── issue_102.c │ │ └── issue_102.h │ ├── test-issue_104/ │ │ ├── issue_104.c │ │ └── issue_104.h │ ├── test-issue_105/ │ │ ├── issue_105.c │ │ └── issue_105.h │ ├── test-issue_106/ │ │ ├── issue_106.c │ │ └── issue_106.h │ ├── test-issue_107/ │ │ ├── issue_107.c │ │ └── issue_107.h │ ├── test-issue_123/ │ │ ├── issue_123.c │ │ └── issue_123.h │ ├── test-issue_128/ │ │ ├── issue_128.c │ │ └── issue_128.h │ ├── test-issue_212/ │ │ ├── issue_212.c │ │ └── issue_212.h │ ├── test-issue_37/ │ │ ├── issue_37.c │ │ └── issue_37.h │ ├── test-issue_49/ │ │ ├── issue_49.c │ │ └── issue_49.h │ ├── test-issue_96/ │ │ ├── issue_96.c │ │ └── issue_96.h │ ├── test-issue_k630/ │ │ ├── issue_k630.c │ │ └── issue_k630.h │ ├── test-issue_shift/ │ │ ├── issue_shift.c │ │ └── issue_shift.h │ ├── test-libcrux-ml-dsa/ │ │ ├── internal/ │ │ │ ├── libcrux_mldsa_avx2.h │ │ │ ├── libcrux_mldsa_core.h │ │ │ ├── libcrux_mldsa_portable.h │ │ │ ├── libcrux_sha3_avx2.h │ │ │ └── libcrux_sha3_internal.h │ │ ├── libcrux_mldsa44_avx2.c │ │ ├── libcrux_mldsa44_avx2.h │ │ ├── libcrux_mldsa44_portable.c │ │ ├── libcrux_mldsa44_portable.h │ │ ├── libcrux_mldsa65_avx2.c │ │ ├── libcrux_mldsa65_avx2.h │ │ ├── libcrux_mldsa65_portable.c │ │ ├── libcrux_mldsa65_portable.h │ │ ├── libcrux_mldsa87_avx2.c │ │ ├── libcrux_mldsa87_avx2.h │ │ ├── libcrux_mldsa87_portable.c │ │ ├── libcrux_mldsa87_portable.h │ │ ├── libcrux_mldsa_avx2.c │ │ ├── libcrux_mldsa_avx2.h │ │ ├── libcrux_mldsa_core.c │ │ ├── libcrux_mldsa_core.h │ │ ├── libcrux_mldsa_portable.c │ │ ├── libcrux_mldsa_portable.h │ │ ├── libcrux_sha3.h │ │ ├── libcrux_sha3_avx2.c │ │ ├── libcrux_sha3_avx2.h │ │ └── libcrux_sha3_internal.h │ ├── test-libcrux-ml-kem/ │ │ ├── internal/ │ │ │ ├── libcrux_core.h │ │ │ ├── libcrux_mlkem1024_avx2.h │ │ │ ├── libcrux_mlkem1024_portable.h │ │ │ ├── libcrux_mlkem512_avx2.h │ │ │ ├── libcrux_mlkem512_portable.h │ │ │ ├── libcrux_mlkem768_avx2.h │ │ │ ├── libcrux_mlkem768_portable.h │ │ │ ├── libcrux_mlkem_avx2.h │ │ │ ├── libcrux_mlkem_portable.h │ │ │ └── libcrux_sha3_internal.h │ │ ├── libcrux_core.c │ │ ├── libcrux_core.h │ │ ├── libcrux_mlkem1024.h │ │ ├── libcrux_mlkem1024_avx2.c │ │ ├── libcrux_mlkem1024_avx2.h │ │ ├── libcrux_mlkem1024_portable.c │ │ ├── libcrux_mlkem1024_portable.h │ │ ├── libcrux_mlkem512.h │ │ ├── libcrux_mlkem512_avx2.c │ │ ├── libcrux_mlkem512_avx2.h │ │ ├── libcrux_mlkem512_portable.c │ │ ├── libcrux_mlkem512_portable.h │ │ ├── libcrux_mlkem768.h │ │ ├── libcrux_mlkem768_avx2.c │ │ ├── libcrux_mlkem768_avx2.h │ │ ├── libcrux_mlkem768_portable.c │ │ ├── libcrux_mlkem768_portable.h │ │ ├── libcrux_mlkem_avx2.c │ │ ├── libcrux_mlkem_avx2.h │ │ ├── libcrux_mlkem_portable.c │ │ ├── libcrux_mlkem_portable.h │ │ ├── libcrux_sha3_avx2.c │ │ ├── libcrux_sha3_avx2.h │ │ ├── libcrux_sha3_internal.h │ │ ├── libcrux_sha3_portable.c │ │ └── libcrux_sha3_portable.h │ ├── test-libcrux-ml-kem-no-const/ │ │ ├── internal/ │ │ │ ├── libcrux_core.h │ │ │ ├── libcrux_mlkem1024_avx2.h │ │ │ ├── libcrux_mlkem1024_portable.h │ │ │ ├── libcrux_mlkem512_avx2.h │ │ │ ├── libcrux_mlkem512_portable.h │ │ │ ├── libcrux_mlkem768_avx2.h │ │ │ ├── libcrux_mlkem768_portable.h │ │ │ ├── libcrux_mlkem_avx2.h │ │ │ ├── libcrux_mlkem_portable.h │ │ │ └── libcrux_sha3_internal.h │ │ ├── libcrux_core.c │ │ ├── libcrux_core.h │ │ ├── libcrux_mlkem1024.h │ │ ├── libcrux_mlkem1024_avx2.c │ │ ├── libcrux_mlkem1024_avx2.h │ │ ├── libcrux_mlkem1024_portable.c │ │ ├── libcrux_mlkem1024_portable.h │ │ ├── libcrux_mlkem512.h │ │ ├── libcrux_mlkem512_avx2.c │ │ ├── libcrux_mlkem512_avx2.h │ │ ├── libcrux_mlkem512_portable.c │ │ ├── libcrux_mlkem512_portable.h │ │ ├── libcrux_mlkem768.h │ │ ├── libcrux_mlkem768_avx2.c │ │ ├── libcrux_mlkem768_avx2.h │ │ ├── libcrux_mlkem768_portable.c │ │ ├── libcrux_mlkem768_portable.h │ │ ├── libcrux_mlkem_avx2.c │ │ ├── libcrux_mlkem_avx2.h │ │ ├── libcrux_mlkem_portable.c │ │ ├── libcrux_mlkem_portable.h │ │ ├── libcrux_sha3_avx2.c │ │ ├── libcrux_sha3_avx2.h │ │ ├── libcrux_sha3_internal.h │ │ ├── libcrux_sha3_portable.c │ │ └── libcrux_sha3_portable.h │ ├── test-lvalue/ │ │ ├── lvalue.c │ │ └── lvalue.h │ ├── test-mismatch/ │ │ ├── mismatch.c │ │ └── mismatch.h │ ├── test-more_dst/ │ │ ├── more_dst.c │ │ └── more_dst.h │ ├── test-more_primitive_types/ │ │ ├── more_primitive_types.c │ │ └── more_primitive_types.h │ ├── test-more_str/ │ │ ├── more_str.c │ │ └── more_str.h │ ├── test-names/ │ │ ├── names.c │ │ └── names.h │ ├── test-nested_arrays/ │ │ ├── nested_arrays.c │ │ └── nested_arrays.h │ ├── test-nested_arrays2/ │ │ ├── nested_arrays2.c │ │ └── nested_arrays2.h │ ├── test-option/ │ │ ├── option.c │ │ └── option.h │ ├── test-parentparent/ │ │ ├── parentparent.c │ │ └── parentparent.h │ ├── test-partial_eq/ │ │ ├── partial_eq.c │ │ └── partial_eq.h │ ├── test-raw_pointers/ │ │ ├── raw_pointers.c │ │ └── raw_pointers.h │ ├── test-reborrow/ │ │ ├── reborrow.c │ │ └── reborrow.h │ ├── test-recursion/ │ │ ├── recursion.c │ │ └── recursion.h │ ├── test-repeat/ │ │ ├── repeat.c │ │ └── repeat.h │ ├── test-result/ │ │ ├── result.c │ │ └── result.h │ ├── test-signed_wrapping/ │ │ ├── signed_wrapping.c │ │ └── signed_wrapping.h │ ├── test-slice_array/ │ │ ├── slice_array.c │ │ └── slice_array.h │ ├── test-step_by/ │ │ ├── step_by.c │ │ └── step_by.h │ ├── test-substr/ │ │ ├── substr.c │ │ └── substr.h │ ├── test-symcrust/ │ │ ├── internal/ │ │ │ └── Eurydice.h │ │ ├── symcrust.c │ │ └── symcrust.h │ ├── test-trait_generics/ │ │ ├── trait_generics.c │ │ └── trait_generics.h │ ├── test-traits/ │ │ ├── traits.c │ │ └── traits.h │ ├── test-traits2/ │ │ ├── traits2.c │ │ └── traits2.h │ ├── test-traits3/ │ │ ├── traits3.c │ │ └── traits3.h │ ├── test-we_need_charon_monomorphization/ │ │ ├── we_need_charon_monomorphization.c │ │ └── we_need_charon_monomorphization.h │ ├── test-where_clauses_closures/ │ │ ├── where_clauses_closures.c │ │ └── where_clauses_closures.h │ ├── test-where_clauses_fncg/ │ │ ├── where_clauses_fncg.c │ │ └── where_clauses_fncg.h │ ├── test-where_clauses_simple/ │ │ ├── where_clauses_simple.c │ │ └── where_clauses_simple.h │ └── testxx-result/ │ ├── result.cc │ └── result.h ├── scripts/ │ ├── check-dependency.sh │ ├── ci-check-charon-pin-is-forward.sh │ ├── ci-check-charon-pin-is-merged.sh │ ├── format.sh │ └── update-charon-pin.sh └── test/ ├── array.rs ├── array2d.rs ├── castunsize.rs ├── chunks.rs ├── closure.rs ├── closure_fn_cast.rs ├── collision.rs ├── const_generics.rs ├── core_cmp_lib.c ├── core_num.rs ├── core_str_lib.c ├── dst.rs ├── dyn_trait_struct_type.rs ├── floating_points.rs ├── fn_cast.rs ├── fn_higher_order.rs ├── for.rs ├── global_ref.rs ├── i32_shl.rs ├── inline_attributes.rs ├── int_switch.rs ├── issue_102.rs ├── issue_104.rs ├── issue_105.rs ├── issue_106.rs ├── issue_107.rs ├── issue_123.rs ├── issue_128.rs ├── issue_14.rs ├── issue_212.rs ├── issue_311.rs ├── issue_37.rs ├── issue_49.rs ├── issue_96.rs ├── issue_99.rs ├── issue_k630.rs ├── issue_shift.rs ├── libcrux-ml-dsa/ │ ├── CMakeLists.txt │ ├── c.yaml │ └── tests/ │ ├── mldsa65.cc │ ├── nistkats-65.json │ └── nistkats_pre_hashed-65.json ├── libcrux-ml-kem/ │ ├── CMakeLists.txt │ ├── c.yaml │ ├── intrinsics/ │ │ └── libcrux_intrinsics_avx2.h │ └── tests/ │ ├── mlkem768.cc │ ├── mlkem768_nistkats.json │ └── sha3.cc ├── lvalue.rs ├── main.c ├── mismatch.rs ├── more_dst.rs ├── more_primitive_types.rs ├── more_primitive_types.yaml ├── more_str.rs ├── mutable_slice_range.rs ├── names.rs ├── nested_arrays.rs ├── nested_arrays2.rs ├── option.rs ├── parentparent.rs ├── partial_eq.rs ├── partial_eq_stubs.c ├── println.rs ├── raw_pointers.rs ├── reborrow.rs ├── recursion.rs ├── repeat.rs ├── result.rs ├── signed_wrapping.rs ├── slice_array.rs ├── step_by.rs ├── substr.rs ├── substr.yaml ├── substr_impl.c ├── substr_stubs.h ├── symcrust.rs ├── trait_generics.rs ├── traits.rs ├── traits2.rs ├── traits3.rs ├── we_need_charon_monomorphization.rs ├── where_clauses.rs ├── where_clauses_closures.rs ├── where_clauses_fncg.rs └── where_clauses_simple.rs