{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":65503623,"defaultBranch":"master","name":"rust","ownerLogin":"Mark-Simulacrum","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2016-08-11T21:46:30.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/5047365?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1714954730.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"206251b04f5b0f8623209af6caab2a515c71eb9f","ref":"refs/heads/lockless-cache","pushedAt":"2024-05-06T00:18:50.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"[WIP] Improve VecCache under parallel frontend\n\nThis replaces the single Vec allocation with a series of progressively\nlarger buckets. With the cfg for parallel enabled but with -Zthreads=1,\nthis looks like a slight regression in i-count and cycle counts (<0.1%).\n\nWith the parallel frontend at -Zthreads=4, this is an improvement (-5%\nwall-time from 5.788 to 5.4688 on libcore) than our current Lock-based\napproach, likely due to reducing the bouncing of the cache line holding\nthe lock. At -Zthreads=32 it's a huge improvement (-46%: 8.829 -> 4.7319\nseconds).\n\nFIXME: Extract the internals to rustc_data_structures, safety comments,\netc.","shortMessageHtmlLink":"[WIP] Improve VecCache under parallel frontend"}},{"before":"7877ec9322aac7003654c07dc8a971f61cd93362","after":"fbc3dff8b06d8d077121701e63ee9fb0f7c5318b","ref":"refs/heads/vtable-methods","pushedAt":"2024-05-05T12:00:44.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Deduplicate supertrait_def_ids code","shortMessageHtmlLink":"Deduplicate supertrait_def_ids code"}},{"before":"60df1bd4331b01a2a202c004030bf947530a320d","after":"7877ec9322aac7003654c07dc8a971f61cd93362","ref":"refs/heads/vtable-methods","pushedAt":"2024-05-05T01:10:26.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Deduplicate supertrait_def_ids code","shortMessageHtmlLink":"Deduplicate supertrait_def_ids code"}},{"before":"d2277a2d3bd83e314a8d4f164beec24ef4ab67d8","after":"ab1764180a9ad91a845e159c06fb84af77480907","ref":"refs/heads/optional-drop","pushedAt":"2024-05-04T23:58:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Omit non-needs_drop drop_in_place in vtables\n\nThis replaces the drop_in_place reference with null in vtables. On\nlibrustc_driver.so, this drops about ~17k dynamic relocations from the\noutput, since many vtables can now be placed in read-only memory, rather\nthan having a relocated pointer included.\n\nThis makes a tradeoff by adding a null check at vtable call sites.\nThat's hard to avoid without changing the vtable format (e.g., to use a\npc-relative relocation instead of an absolute address, and avoid the\ndynamic relocation that way). But it seems likely that the check is\ncheap at runtime.","shortMessageHtmlLink":"Omit non-needs_drop drop_in_place in vtables"}},{"before":"96eed21574dfe05f05bdc6a44ad38f9eaa61063f","after":"d2277a2d3bd83e314a8d4f164beec24ef4ab67d8","ref":"refs/heads/optional-drop","pushedAt":"2024-05-04T21:05:39.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Omit non-needs_drop drop_in_place in vtables\n\nThis replaces the drop_in_place reference with null in vtables. On\nlibrustc_driver.so, this drops about ~17k dynamic relocations from the\noutput, since many vtables can now be placed in read-only memory, rather\nthan having a relocated pointer included.\n\nThis makes a tradeoff by adding a null check at vtable call sites.\nThat's hard to avoid without changing the vtable format (e.g., to use a\npc-relative relocation instead of an absolute address, and avoid the\ndynamic relocation that way). But it seems likely that the check is\ncheap at runtime.","shortMessageHtmlLink":"Omit non-needs_drop drop_in_place in vtables"}},{"before":"fe92f565991050944c44fba9db054995bdc7c92d","after":"96eed21574dfe05f05bdc6a44ad38f9eaa61063f","ref":"refs/heads/optional-drop","pushedAt":"2024-05-04T12:58:28.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Omit non-needs_drop drop_in_place in vtables\n\nThis replaces the drop_in_place reference with null in vtables. On\nlibrustc_driver.so, this drops about ~17k dynamic relocations from the\noutput, since many vtables can now be placed in read-only memory, rather\nthan having a relocated pointer included.\n\nThis makes a tradeoff by adding a null check at vtable call sites.\nThat's hard to avoid without changing the vtable format (e.g., to use a\npc-relative relocation instead of an absolute address, and avoid the\ndynamic relocation that way). But it seems likely that the check is\ncheap at runtime.","shortMessageHtmlLink":"Omit non-needs_drop drop_in_place in vtables"}},{"before":"e81c4a749279a369ff18027ca91ed66d6d59c776","after":null,"ref":"refs/heads/beta-next","pushedAt":"2024-05-03T23:32:45.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"}},{"before":"7a69a4a5cf750c29ba53ef102dd8a9d148b5a620","after":null,"ref":"refs/heads/relnotes","pushedAt":"2024-05-03T23:05:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"}},{"before":null,"after":"e81c4a749279a369ff18027ca91ed66d6d59c776","ref":"refs/heads/beta-next","pushedAt":"2024-05-02T12:46:26.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Bump to released 1.78 compiler","shortMessageHtmlLink":"Bump to released 1.78 compiler"}},{"before":"a64f94161130944f8fda1f6dcc00f37860f43ecf","after":"44988e25770e87949e282f606dee702906bd2eed","ref":"refs/heads/bootstrap-bump","pushedAt":"2024-05-02T03:23:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Workaround rustfmt bug replacing type ascription","shortMessageHtmlLink":"Workaround rustfmt bug replacing type ascription"}},{"before":"e18c81e7751045143c371db4f79d3560018ac34c","after":"a64f94161130944f8fda1f6dcc00f37860f43ecf","ref":"refs/heads/bootstrap-bump","pushedAt":"2024-05-02T02:25:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Step bootstrap cfgs","shortMessageHtmlLink":"Step bootstrap cfgs"}},{"before":"f2937cd6b5dc518ab05f699a96837de7e7c368b5","after":"e18c81e7751045143c371db4f79d3560018ac34c","ref":"refs/heads/bootstrap-bump","pushedAt":"2024-05-02T01:52:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Step bootstrap cfgs","shortMessageHtmlLink":"Step bootstrap cfgs"}},{"before":"175c9990808be266cc0dde318b29ee30c3f1f8dc","after":"fe92f565991050944c44fba9db054995bdc7c92d","ref":"refs/heads/optional-drop","pushedAt":"2024-05-02T01:12:07.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Omit non-needs_drop drop_in_place in vtables\n\nThis replaces the drop_in_place reference with null in vtables. On\nlibrustc_driver.so, this drops about ~17k dynamic relocations from the\noutput, since many vtables can now be placed in read-only memory, rather\nthan having a relocated pointer included.\n\nThis makes a tradeoff by adding a null check at vtable call sites. I'm\nnot sure that's readily avoidable without changing the vtable format\n(e.g., so that we can use a pc-relative relocation instead of an\nabsolute address, and avoid the dynamic relocation that way). But it\nseems likely that the check is cheap at runtime.","shortMessageHtmlLink":"Omit non-needs_drop drop_in_place in vtables"}},{"before":"d6e216da76ed102d5fd3845170705de9baac5246","after":"f2937cd6b5dc518ab05f699a96837de7e7c368b5","ref":"refs/heads/bootstrap-bump","pushedAt":"2024-05-02T01:02:13.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Step bootstrap cfgs","shortMessageHtmlLink":"Step bootstrap cfgs"}},{"before":"2de0b83a29ee0094819dbf912b6882d73e8279a5","after":"d6e216da76ed102d5fd3845170705de9baac5246","ref":"refs/heads/bootstrap-bump","pushedAt":"2024-04-29T13:41:04.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Step bootstrap cfgs","shortMessageHtmlLink":"Step bootstrap cfgs"}},{"before":null,"after":"2de0b83a29ee0094819dbf912b6882d73e8279a5","ref":"refs/heads/bootstrap-bump","pushedAt":"2024-04-29T13:39:46.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"x.py fmt re-run","shortMessageHtmlLink":"x.py fmt re-run"}},{"before":"2de4566f8aba1a756b1a848dd6a2e1482f662a58","after":"0d61eaea5977143b7809b5a8f9e03e8d5c439870","ref":"refs/heads/stable-next","pushedAt":"2024-04-29T12:49:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Don't trigger `unused_qualifications` on global paths","shortMessageHtmlLink":"Don't trigger unused_qualifications on global paths"}},{"before":null,"after":"2de4566f8aba1a756b1a848dd6a2e1482f662a58","ref":"refs/heads/stable-next","pushedAt":"2024-04-29T12:48:45.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Don't trigger `unused_qualifications` on global paths\n\n# Conflicts:\n#\ttests/ui/lint/lint-qualification.stderr","shortMessageHtmlLink":"Don't trigger unused_qualifications on global paths"}},{"before":"532195dd7198e33a9adbbb487cdfa3d450bf0093","after":null,"ref":"refs/heads/beta-next","pushedAt":"2024-04-29T12:47:53.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"}},{"before":"21dcfbdaa13be0e1aa9f2c61fc71f08dd9f4dc3b","after":null,"ref":"refs/heads/stable-next","pushedAt":"2024-04-28T17:17:42.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"}},{"before":"a553f4262edb1e5431a50dd8ede00350f0751311","after":"532195dd7198e33a9adbbb487cdfa3d450bf0093","ref":"refs/heads/beta-next","pushedAt":"2024-04-28T14:11:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Mark more entries in rustc_data_structures as no_inline for docs\n\nThis is a workaround for #122758, but it's not clear why 1.79 requires a\nmore extensive amount of no_inline than the previous release. Seems like\nthere's something relatively subtle happening here.","shortMessageHtmlLink":"Mark more entries in rustc_data_structures as no_inline for docs"}},{"before":null,"after":"21dcfbdaa13be0e1aa9f2c61fc71f08dd9f4dc3b","ref":"refs/heads/stable-next","pushedAt":"2024-04-28T13:31:27.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Cranelift: Revert raw-dylib for Windows futex APIs","shortMessageHtmlLink":"Cranelift: Revert raw-dylib for Windows futex APIs"}},{"before":"ca8ca610f445824e03c980f12c6bae818ef70bc3","after":"a553f4262edb1e5431a50dd8ede00350f0751311","ref":"refs/heads/beta-next","pushedAt":"2024-04-28T13:29:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Bump to beta","shortMessageHtmlLink":"Bump to beta"}},{"before":"a7696ed4abcbaf953be35e62fdb42be82b2e94de","after":null,"ref":"refs/heads/bump-version","pushedAt":"2024-04-28T13:26:27.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"}},{"before":"157289665241d564b714f3d375bc7bfa150e16d5","after":"a7696ed4abcbaf953be35e62fdb42be82b2e94de","ref":"refs/heads/bump-version","pushedAt":"2024-04-27T23:04:02.000Z","pushType":"push","commitsCount":4028,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Bump version to 1.80","shortMessageHtmlLink":"Bump version to 1.80"}},{"before":"6b0e8d0696068f239e74085600054c557865c5ba","after":"7a69a4a5cf750c29ba53ef102dd8a9d148b5a620","ref":"refs/heads/relnotes","pushedAt":"2024-04-27T23:00:24.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"1.78 release notes","shortMessageHtmlLink":"1.78 release notes"}},{"before":"d70f73551739106220967bd6eaf328cb5e41a265","after":"6b0e8d0696068f239e74085600054c557865c5ba","ref":"refs/heads/relnotes","pushedAt":"2024-04-27T22:59:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"1.78 release notes","shortMessageHtmlLink":"1.78 release notes"}},{"before":"e4f3c166285d28a2942784628b676833f0162027","after":"175c9990808be266cc0dde318b29ee30c3f1f8dc","ref":"refs/heads/optional-drop","pushedAt":"2024-04-27T20:32:43.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Omit non-needs_drop drop_in_place in vtables\n\nThis replaces the drop_in_place reference with null in vtables. On\nlibrustc_driver.so, this drops about ~17k dynamic relocations from the\noutput, since many vtables can now be placed in read-only memory, rather\nthan having a relocated pointer included.\n\nThis makes a tradeoff by adding a null check at vtable call sites. I'm\nnot sure that's readily avoidable without changing the vtable format\n(e.g., so that we can use a pc-relative relocation instead of an\nabsolute address, and avoid the dynamic relocation that way). But it\nseems likely that the check is cheap at runtime.","shortMessageHtmlLink":"Omit non-needs_drop drop_in_place in vtables"}},{"before":"080d085315f89f367939bfc43cfd7263b74f3aff","after":"e4f3c166285d28a2942784628b676833f0162027","ref":"refs/heads/optional-drop","pushedAt":"2024-04-27T19:49:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Omit non-needs_drop drop_in_place in vtables\n\nThis replaces the drop_in_place reference with null in vtables. On\nlibrustc_driver.so, this drops about ~17k dynamic relocations from the\noutput, since many vtables can now be placed in read-only memory, rather\nthan having a relocated pointer included.\n\nThis makes a tradeoff by adding a null check at vtable call sites. I'm\nnot sure that's readily avoidable without changing the vtable format\n(e.g., so that we can use a pc-relative relocation instead of an\nabsolute address, and avoid the dynamic relocation that way). But it\nseems likely that the check is cheap at runtime.","shortMessageHtmlLink":"Omit non-needs_drop drop_in_place in vtables"}},{"before":"288ece0833fafd874c8544b09c4c1bdddb36910a","after":"080d085315f89f367939bfc43cfd7263b74f3aff","ref":"refs/heads/optional-drop","pushedAt":"2024-04-27T18:35:29.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"Mark-Simulacrum","name":"Mark Rousskov","path":"/Mark-Simulacrum","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5047365?s=80&v=4"},"commit":{"message":"Omit non-needs_drop drop_in_place in vtables\n\nThis replaces the drop_in_place reference with null in vtables. On\nlibrustc_driver.so, this drops about ~17k dynamic relocations from the\noutput, since many vtables can now be placed in read-only memory, rather\nthan having a relocated pointer included.\n\nThis makes a tradeoff by adding a null check at vtable call sites. I'm\nnot sure that's readily avoidable without changing the vtable format\n(e.g., so that we can use a pc-relative relocation instead of an\nabsolute address, and avoid the dynamic relocation that way). But it\nseems likely that the check is cheap at runtime.","shortMessageHtmlLink":"Omit non-needs_drop drop_in_place in vtables"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEQhJw2AA","startCursor":null,"endCursor":null}},"title":"Activity ยท Mark-Simulacrum/rust"}