Merge pull request #226 from YosysHQ/190207

Fix slack_histogram computation accessing num_bins+1
This commit is contained in:
Eddie Hung 2019-02-09 10:16:23 -08:00 committed by GitHub
commit a520b38424
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -930,8 +930,7 @@ void timing_analysis(Context *ctx, bool print_histogram, bool print_fmax, bool p
unsigned bar_width = 60;
auto min_slack = slack_histogram.begin()->first;
auto max_slack = slack_histogram.rbegin()->first;
auto bin_size = std::max(1u, (max_slack - min_slack) / num_bins);
num_bins = std::min((max_slack - min_slack) / bin_size, num_bins) + 1;
auto bin_size = std::max<unsigned>(1, ceil((max_slack - min_slack) / float(num_bins)));
std::vector<unsigned> bins(num_bins);
unsigned max_freq = 0;
for (const auto &i : slack_histogram) {