diff options
author | Eddie Hung <eddieh@ece.ubc.ca> | 2019-02-07 09:26:41 -0800 |
---|---|---|
committer | Eddie Hung <eddieh@ece.ubc.ca> | 2019-02-07 09:26:41 -0800 |
commit | f9f15e79cdcd59ef4fc5cc3d12b9217d72b6177e (patch) | |
tree | 4f8da746ffe583bd576246a69bc65c9f26d47f98 /common | |
parent | 6cc1bfcb37199e0988d0f06ce34071b409ab8019 (diff) | |
download | nextpnr-f9f15e79cdcd59ef4fc5cc3d12b9217d72b6177e.tar.gz nextpnr-f9f15e79cdcd59ef4fc5cc3d12b9217d72b6177e.tar.bz2 nextpnr-f9f15e79cdcd59ef4fc5cc3d12b9217d72b6177e.zip |
Fix slack_histogram computation accessing num_bins+1
Diffstat (limited to 'common')
-rw-r--r-- | common/timing.cc | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/common/timing.cc b/common/timing.cc index f3cb4306..194a0e00 100644 --- a/common/timing.cc +++ b/common/timing.cc @@ -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) { |