From 5261a2a91ba505fbf2ad4dabf525eb328ff61365 Mon Sep 17 00:00:00 2001 From: James Cherry Date: Fri, 9 Aug 2024 15:40:21 -0700 Subject: [PATCH] liberty min_pulse_width missing related_pin Signed-off-by: James Cherry --- liberty/LibertyBuilder.cc | 2 ++ liberty/LibertyReader.cc | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/liberty/LibertyBuilder.cc b/liberty/LibertyBuilder.cc index 1b353ebf..9b52db9f 100644 --- a/liberty/LibertyBuilder.cc +++ b/liberty/LibertyBuilder.cc @@ -678,6 +678,8 @@ LibertyBuilder::makeMinPulseWidthArcs(LibertyCell *cell, TimingRole *role, TimingArcAttrsPtr attrs) { + if (from_port == nullptr) + from_port = to_port; TimingArcSet *arc_set = makeTimingArcSet(cell, from_port, to_port, related_out, role, attrs); for (auto to_rf : RiseFall::range()) { diff --git a/liberty/LibertyReader.cc b/liberty/LibertyReader.cc index d8064180..72749377 100644 --- a/liberty/LibertyReader.cc +++ b/liberty/LibertyReader.cc @@ -4119,7 +4119,8 @@ LibertyReader::endTiming(LibertyGroup *group) } TimingType timing_type = timing_->attrs()->timingType(); if (timing_->relatedPortNames() == nullptr - && !(timing_type == TimingType::min_clock_tree_path + && !(timing_type == TimingType::min_pulse_width + || timing_type == TimingType::min_clock_tree_path || timing_type == TimingType::max_clock_tree_path)) libWarn(1243, group, "timing group missing related_pin/related_bus_pin."); }