{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":45469588,"defaultBranch":"master","name":"rust","ownerLogin":"Amanieu","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2015-11-03T13:52:04.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/278509?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1722035154.0","currentOid":""},"activityList":{"items":[{"before":"ed50c4ee365b97cc3a614ebe21179dedeb5331a0","after":"9963a6c400f7c5aa762e0b5419df756432f2e83b","ref":"refs/heads/riscv64-musl-tier2","pushedAt":"2024-08-03T22:26:19.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Add platform support document for riscv64gc-unknown-linux-musl","shortMessageHtmlLink":"Add platform support document for riscv64gc-unknown-linux-musl"}},{"before":"131e4fac69b13e46a1d3b189ed67dd601f71b253","after":"ed50c4ee365b97cc3a614ebe21179dedeb5331a0","ref":"refs/heads/riscv64-musl-tier2","pushedAt":"2024-08-03T21:06:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Explicitly use GCC 11 for riscv64gc-unknown-linux-musl builds","shortMessageHtmlLink":"Explicitly use GCC 11 for riscv64gc-unknown-linux-musl builds"}},{"before":"beacd70600c77d460a594dc7dcdae7d30a2cb366","after":"131e4fac69b13e46a1d3b189ed67dd601f71b253","ref":"refs/heads/riscv64-musl-tier2","pushedAt":"2024-08-03T14:02:24.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Revert \"Make riscv64gc-unknown-linux-musl dynamically linked by default\"\n\nThis reverts commit b056ab67f1e6035384dc300cc2d96463e78dd67b.","shortMessageHtmlLink":"Revert \"Make riscv64gc-unknown-linux-musl dynamically linked by default\""}},{"before":"47e6db542e4a80b6c4b3aa4ab2eb2a991474f24f","after":"eb726a50e65387c348ba56f2416fc3c0b649f95e","ref":"refs/heads/const-asm-type","pushedAt":"2024-08-02T18:59:35.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"add `needs-asm-support` to invalid-sym-operand","shortMessageHtmlLink":"add needs-asm-support to invalid-sym-operand"}},{"before":"e7ee91df73d67ce60130bed6d727c1f168d23ce2","after":"beacd70600c77d460a594dc7dcdae7d30a2cb366","ref":"refs/heads/riscv64-musl-tier2","pushedAt":"2024-08-01T19:56:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Add platform support document for riscv64gc-unknown-linux-musl","shortMessageHtmlLink":"Add platform support document for riscv64gc-unknown-linux-musl"}},{"before":"be66415e11234832b0ba10007d7445aef6213cb6","after":"47e6db542e4a80b6c4b3aa4ab2eb2a991474f24f","ref":"refs/heads/const-asm-type","pushedAt":"2024-08-01T19:13:05.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"separate test file for invalid const operand","shortMessageHtmlLink":"separate test file for invalid const operand"}},{"before":"c4f19258d78ae37cf711c82c72c961aaddd9f524","after":"e7ee91df73d67ce60130bed6d727c1f168d23ce2","ref":"refs/heads/riscv64-musl-tier2","pushedAt":"2024-08-01T19:11:11.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Add platform support document for riscv64gc-unknown-linux-musl","shortMessageHtmlLink":"Add platform support document for riscv64gc-unknown-linux-musl"}},{"before":"f3a8465575561d4ae1fecbf9a9144ffd580b2041","after":"bb584882070f2f45b35f0af172069e7c00d63983","ref":"refs/heads/orig-binary-search","pushedAt":"2024-07-30T16:10:29.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Rewrite binary search implementation\n\nThis restores the original binary search implementation from #45333\nwhich has the nice property of having a loop count that only depends on\nthe size of the slice. This, along with explicit conditional moves\nfrom #128250, means that the entire binary search loop can be perfectly\npredicted by the branch predictor.\n\nAdditionally, LLVM is able to unroll the loop when the slice length is\nknown at compile-time. This results in a very compact code sequence of\n3-4 instructions per binary search step and zero branches.\n\nFixes #53823","shortMessageHtmlLink":"Rewrite binary search implementation"}},{"before":"ad788b9c15abfa247cd5a98a4dc6d5f9d657eb26","after":"4f78f9fbb05145d437540181fda9bcc83d5a53e4","ref":"refs/heads/select_unpredictable","pushedAt":"2024-07-28T16:25:10.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Force LLVM to use CMOV for binary search\n\nSince https://reviews.llvm.org/D118118, LLVM will no longer turn CMOVs\ninto branches if it comes from a `select` marked with an `unpredictable`\nmetadata attribute.\n\nThis PR introduces `core::intrinsics::select_unpredictable` which emits\nsuch a `select` and uses it in the implementation of `binary_search_by`.","shortMessageHtmlLink":"Force LLVM to use CMOV for binary search"}},{"before":"21ee15741d020022d3b6736b378240dd1a697743","after":"f3a8465575561d4ae1fecbf9a9144ffd580b2041","ref":"refs/heads/orig-binary-search","pushedAt":"2024-07-27T22:28:55.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Rewrite binary search implementation\n\nThis restores the original binary search implementation from #45333\nwhich has the nice property of having a loop count that only depends on\nthe size of the slice. This, along with explicit conditional moves\nfrom #128250, means that the entire binary search loop can be perfectly\npredicted by the branch predictor.\n\nAdditionally, LLVM is able to unroll the loop when the slice length is\nknown at compile-time. This results in a very compact code sequence of\n3-4 instructions per binary search step and zero branches.\n\nFixes #53823","shortMessageHtmlLink":"Rewrite binary search implementation"}},{"before":"4f92aeb78627d385064fe213b36b95ec83a74eb5","after":"ad788b9c15abfa247cd5a98a4dc6d5f9d657eb26","ref":"refs/heads/select_unpredictable","pushedAt":"2024-07-27T22:26:01.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Force LLVM to use CMOV for binary search\n\nSince https://reviews.llvm.org/D118118, LLVM will no longer turn CMOVs\ninto branches if it comes from a `select` marked with an `unpredictable`\nmetadata attribute.\n\nThis PR introduces `core::intrinsics::select_unpredictable` which emits\nsuch a `select` and uses it in the implementation of `binary_search_by`.","shortMessageHtmlLink":"Force LLVM to use CMOV for binary search"}},{"before":"7751cfe63a17000e71bcbb1d65331a0772ef5d03","after":"21ee15741d020022d3b6736b378240dd1a697743","ref":"refs/heads/orig-binary-search","pushedAt":"2024-07-27T16:35:51.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Rewrite binary search implementation\n\nThis restores the original binary search implementation from #45333\nwhich has the nice property of having a loop count that only depends on\nthe size of the slice. This, along with explicit conditional moves\nfrom #128250, means that the entire binary search loop can be perfectly\npredicted by the branch predictor.\n\nAdditionally, LLVM is able to unroll the loop when the slice length is\nknown at compile-time. This results in a very compact code sequence of\n3-4 instructions per binary search step and zero branches.\n\nFixes #53823","shortMessageHtmlLink":"Rewrite binary search implementation"}},{"before":"472058aead191064023be42c15a7a68b6d2ffae9","after":"4f92aeb78627d385064fe213b36b95ec83a74eb5","ref":"refs/heads/select_unpredictable","pushedAt":"2024-07-27T16:31:22.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Force LLVM to use CMOV for binary search\n\nSince https://reviews.llvm.org/D118118, LLVM will no longer turn CMOVs\ninto branches if it comes from a `select` marked with an `unpredictable`\nmetadata attribute.\n\nThis PR introduces `core::intrinsics::select_unpredictable` which emits\nsuch a `select` and uses it in the implementation of `binary_search_by`.","shortMessageHtmlLink":"Force LLVM to use CMOV for binary search"}},{"before":"627c57f692f222f4646a0739ddb32c78047a6326","after":"7751cfe63a17000e71bcbb1d65331a0772ef5d03","ref":"refs/heads/orig-binary-search","pushedAt":"2024-07-27T13:50:06.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Rewrite binary search implementation\n\nThis restores the original binary search implementation from #45333\nwhich has the nice property of having a loop count that only depends on\nthe size of the slice. This, along with explicit conditional moves\nfrom #128250, means that the entire binary search loop can be perfectly\npredicted by the branch predictor.\n\nAdditionally, LLVM is able to unroll the loop when the slice length is\nknown at compile-time. This results in a very compact code sequence of\n3-4 instructions per binary search step and zero branches.\n\nFixes #53823","shortMessageHtmlLink":"Rewrite binary search implementation"}},{"before":"d000d5fb79ab45fe3950ad034daaf8c7edbe243a","after":"627c57f692f222f4646a0739ddb32c78047a6326","ref":"refs/heads/orig-binary-search","pushedAt":"2024-07-26T23:58:19.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Rewrite binary search implementation\n\nThis restores the original binary search implementation from #45333\nwhich has the nice property of having a loop count that only depends on\nthe size of the slice. This, along with explicit conditional moves\nfrom #128250, means that the entire binary search loop can be perfectly\npredicted by the branch predictor.\n\nAdditionally, LLVM is able to unroll the loop when the slice length is\nknown at compile-time. This results in a very compact code sequence of\n3-4 instructions per binary search step and zero branches.\n\nFixes #53823","shortMessageHtmlLink":"Rewrite binary search implementation"}},{"before":null,"after":"d000d5fb79ab45fe3950ad034daaf8c7edbe243a","ref":"refs/heads/orig-binary-search","pushedAt":"2024-07-26T23:05:54.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Rewrite binary search implementation\n\nThis restores the original binary search implementation from #45333\nwhich has the nice property of having a loop count that only depends on\nthe size of the slice. This, along with explicit conditional moves\nfrom #128250, means that the entire binary search loop can be perfectly\npredicted by the branch predictor.\n\nAdditionally, LLVM is able to unroll the loop when the slice length is\nknown at compile-time. This results in a very compact code sequence of\n3-4 instructions per binary search step and zero branches.\n\nFixes #53823","shortMessageHtmlLink":"Rewrite binary search implementation"}},{"before":"d933f9a9a66e647cb4b512b2e9b81c59d837a21e","after":"472058aead191064023be42c15a7a68b6d2ffae9","ref":"refs/heads/select_unpredictable","pushedAt":"2024-07-26T22:10:13.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Force LLVM to use CMOV for binary search\n\nSince https://reviews.llvm.org/D118118, LLVM will no longer turn CMOVs\ninto branches if it comes from a `select` marked with an `unpredictable`\nmetadata attribute.\n\nThis PR introduces `core::intrinsics::select_unpredictable` which emits\nsuch a `select` and uses it in the implementation of `binary_search_by`.","shortMessageHtmlLink":"Force LLVM to use CMOV for binary search"}},{"before":null,"after":"d933f9a9a66e647cb4b512b2e9b81c59d837a21e","ref":"refs/heads/select_unpredictable","pushedAt":"2024-07-26T21:19:56.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Force LLVM to use CMOV for binary search\n\nSince https://reviews.llvm.org/D118118, LLVM will no longer turn CMOVs\ninto branches if it comes from a `select` marked with an `unpredictable`\nmetadata attribute.\n\nThis PR introduces `core::intrinsics::select_unpredictable` which emits\nsuch a `select` and uses it in the implementation of `binary_search_by`.","shortMessageHtmlLink":"Force LLVM to use CMOV for binary search"}},{"before":null,"after":"393c1a7826e24e41bf5c1e0250ec2bacb8a7f202","ref":"refs/heads/opt-binary_search","pushedAt":"2024-07-26T15:15:22.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Faster midpoint calculation for `binary_search_by`\n\nThis takes advantage of the fact that slices can only have a maximum of\n`isize::MAX` elements, which means that the midpoint can be calculated\nusing `(left + right) / 2` instead of `left + (right - left) / 2`.\n\nThe old calculation is kept only for ZST slices which can have up to\n`usize::MAX` elements.\n\nComparison with previous version: https://rust.godbolt.org/z/YccscWoqv","shortMessageHtmlLink":"Faster midpoint calculation for binary_search_by"}},{"before":"1133ccdd6247b2899cd9c9d408c355f3f140fbe4","after":"be66415e11234832b0ba10007d7445aef6213cb6","ref":"refs/heads/const-asm-type","pushedAt":"2024-07-25T23:00:14.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"use `ErrorGuaranteed` from emit","shortMessageHtmlLink":"use ErrorGuaranteed from emit"}},{"before":"82f78f108e302b33825217a866a193941e02e6db","after":"1133ccdd6247b2899cd9c9d408c355f3f140fbe4","ref":"refs/heads/const-asm-type","pushedAt":"2024-07-25T09:21:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"use `ErrorGuaranteed` from emit","shortMessageHtmlLink":"use ErrorGuaranteed from emit"}},{"before":"1a0f64388e48103eb0b9494ebd2fcb2a3b404114","after":"82f78f108e302b33825217a866a193941e02e6db","ref":"refs/heads/const-asm-type","pushedAt":"2024-07-23T22:32:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"rustfmt","shortMessageHtmlLink":"rustfmt"}},{"before":"2bb74fab77c733ecaac25beaf0a363f0f75f20f6","after":"1a0f64388e48103eb0b9494ebd2fcb2a3b404114","ref":"refs/heads/const-asm-type","pushedAt":"2024-07-23T22:02:04.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Apply suggestions from code review\n\nCo-authored-by: Amanieu d'Antras ","shortMessageHtmlLink":"Apply suggestions from code review"}},{"before":"ff7418f760c0ca087d210ced9874dcf3ffd5788e","after":"2bb74fab77c733ecaac25beaf0a363f0f75f20f6","ref":"refs/heads/const-asm-type","pushedAt":"2024-07-22T18:16:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Work around #96304 by ignoring one test case","shortMessageHtmlLink":"Work around rust-lang#96304 by ignoring one test case"}},{"before":"747898789f1c790827debb4bf0527c4d03f675cf","after":"c4f19258d78ae37cf711c82c72c961aaddd9f524","ref":"refs/heads/riscv64-musl-tier2","pushedAt":"2024-07-05T20:33:14.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Add platform support document for riscv64gc-unknown-linux-musl","shortMessageHtmlLink":"Add platform support document for riscv64gc-unknown-linux-musl"}},{"before":"c0ab01dfe3e4f16b0510ea8264f0b1db416c37a9","after":"747898789f1c790827debb4bf0527c4d03f675cf","ref":"refs/heads/riscv64-musl-tier2","pushedAt":"2024-06-22T15:04:49.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Add platform support document for riscv64gc-unknown-linux-musl","shortMessageHtmlLink":"Add platform support document for riscv64gc-unknown-linux-musl"}},{"before":null,"after":"bd2252ff8362881e4520a9d386195694985a5415","ref":"refs/heads/mem-prelude","pushedAt":"2024-06-15T22:50:44.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Fix unnecessary qualifications in clippy","shortMessageHtmlLink":"Fix unnecessary qualifications in clippy"}},{"before":"fe07e37cf34b42ab03fb42826466ec58fd295f38","after":"ff7418f760c0ca087d210ced9874dcf3ffd5788e","ref":"refs/heads/const-asm-type","pushedAt":"2024-06-11T18:05:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Work around #96304 by ignoring one test case","shortMessageHtmlLink":"Work around rust-lang#96304 by ignoring one test case"}},{"before":"d61ff43e1c883dd5923458de3d74e940afa0f503","after":"fe07e37cf34b42ab03fb42826466ec58fd295f38","ref":"refs/heads/const-asm-type","pushedAt":"2024-06-11T16:51:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Work around #96304 by ignoring one test case","shortMessageHtmlLink":"Work around rust-lang#96304 by ignoring one test case"}},{"before":"03c307a4c347eccd1dac3b891ae3c96030517422","after":"d61ff43e1c883dd5923458de3d74e940afa0f503","ref":"refs/heads/const-asm-type","pushedAt":"2024-06-11T16:12:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Amanieu","name":"Amanieu d'Antras","path":"/Amanieu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/278509?s=80&v=4"},"commit":{"message":"Work around #96304 by ignoring one test case","shortMessageHtmlLink":"Work around rust-lang#96304 by ignoring one test case"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEkQp7TgA","startCursor":null,"endCursor":null}},"title":"Activity ยท Amanieu/rust"}