commit | 229d0983b5c1765a50afe1a67853487bb6b145f4 | [log] [tgz] |
---|---|---|
author | Zalathar <Zalathar@users.noreply.github.com> | Mon Jan 01 22:46:45 2024 +1100 |
committer | Zalathar <Zalathar@users.noreply.github.com> | Sun Jan 14 12:11:25 2024 +1100 |
tree | b4367da528840353034ed0d89843ad8fcd5865d2 | |
parent | c412cd4bc2241d7a67813b594cfc7e284e32c55b [diff] |
coverage: Simplify the loop that combines blocks into BCBs The old loop had two separate places where it would flush the acumulated list of straight-line blocks into a new BCB. One occurred at the start of the loop body when the current block couldn't be chained into, and the other occurred at the end of the loop body when the current block couldn't be chained from. The latter check can be hoisted to the start of the loop body by making it examine the previous block (which has added itself to the list) instead of the current block. With that done, we can combine the two separate flushes into one flush with two possible trigger conditions.
This is the main source code repository for Rust. It contains the compiler, standard library, and documentation.
Note: this README is for users rather than contributors. If you wish to contribute to the compiler, you should read CONTRIBUTING.md instead.
Read “Installation” from The Book.
If you really want to install from source (though this is not recommended), see INSTALL.md.
See https://www.rust-lang.org/community for a list of chat platforms and forums.
See CONTRIBUTING.md.
Rust is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0), with portions covered by various BSD-like licenses.
See LICENSE-APACHE, LICENSE-MIT, and COPYRIGHT for details.
The Rust Foundation owns and protects the Rust and Cargo trademarks and logos (the “Rust Trademarks”).
If you want to use these names or brands, please read the media guide.
Third-party logos may be subject to third-party copyrights and trademarks. See Licenses for details.