{"push_id":790823352,"size":4,"distinct_size":0,"ref":"refs/heads/auto","head":"21ba40da14c6656d822fecf5f701ba15a3e34752","before":"6873b9fee4af732fe81d54fdcedbd31201e3edf0","commits":[{"sha":"90c48bed25751f4c171b1555f8114234ca0a81c4","author":{"email":"d5e0892e7d66bcce47406a02632e7b4f50cda414@gmail.com","name":"Björn Steinbrink"},"message":"Centralise the handling of attributes on extern functions","distinct":false,"url":"https://api.github.com/repos/rust-lang/rust/commits/90c48bed25751f4c171b1555f8114234ca0a81c4"},{"sha":"e4e67bd489934702e4958a03bb4c948919d38920","author":{"email":"d5e0892e7d66bcce47406a02632e7b4f50cda414@gmail.com","name":"Björn Steinbrink"},"message":"Add an attribute to mark function as unwinding","distinct":false,"url":"https://api.github.com/repos/rust-lang/rust/commits/e4e67bd489934702e4958a03bb4c948919d38920"},{"sha":"bd6da30fcdab5bf98051cf8d49411cd6f98e1290","author":{"email":"d5e0892e7d66bcce47406a02632e7b4f50cda414@gmail.com","name":"Björn Steinbrink"},"message":"Mark all extern functions as nounwind\n\nUnwinding across an FFI boundary is undefined behaviour, so we can mark\nall external function as nounwind. The obvious exception are those\nfunctions that actually perform the unwinding.","distinct":false,"url":"https://api.github.com/repos/rust-lang/rust/commits/bd6da30fcdab5bf98051cf8d49411cd6f98e1290"},{"sha":"21ba40da14c6656d822fecf5f701ba15a3e34752","author":{"email":"3a2c29237f73c7cf88424b80e427b1884f346b35@rust-lang.org","name":"bors"},"message":"Auto merge of #28358 - dotdash:nounwind, r=alexcrichton\n\nThis allows to skip the codegen for all the unneeded landing pads, reducing code size across the board by about 2-5%, depending on the crate. Compile times seem to be pretty unaffected though :-/","distinct":false,"url":"https://api.github.com/repos/rust-lang/rust/commits/21ba40da14c6656d822fecf5f701ba15a3e34752"}]}