fix: use DESIGN_DIR instead of custom dir variables in chameleon/microwatt#4080
Conversation
|
Just FYI: I'm trying to spin of a number of these cleanup issues to whittle down the amount of patches I have to carry in https://github.com/The-OpenROAD-Project/bazel-orfs/tree/main/orfs/patches As things settle down and I see the exact shape of changes to ORFS and they are stable, I'll start filing various other patches from that list. |
|
@maliberty Why on earth would this cause??? |
|
I would expect this to be a no-op so something isn't right. Do the wildcard matches yield the same results? |
I can't tell these two apart, I haven't tried to investigate. I would have dismissed it as unstable master, but it is from the same design that I changed. |
…owatt DESIGN_DIR is already defined in the Makefile as $(dir $(DESIGN_CONFIG)). These two designs defined redundant custom variables (chameleon_DIR, microwatt_DIR) that were identical to DESIGN_DIR. Use the standard variable to simplify config and remove non-standard patterns. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
$(dir ...) in GNU Make always appends a trailing slash, so DESIGN_DIR ended up as e.g. ".../chameleon/". When config.mk files use $(DESIGN_DIR)/gds/file.gds, this produced paths with "//" instead of "/". Mind-bogglingly, this was the only difference we could find that caused CI metric failures (antenna_diodes_count) in PR The-OpenROAD-Project#4080. Strip the trailing slash with $(patsubst %/,%,...) so that replacing custom _DIR variables with DESIGN_DIR is a true no-op. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
Head branch was pushed to by a user without write access
94845ad to
dc44f64
Compare
|
@maliberty I had my guy dig into it. |
|
@maliberty If this works, then doesn't this merit further investigation? Why would diode thingy fail due to an extra '/'? |
|
Locally I ran this change and did not reproduce the problem. I ran the prior commit and got the same results. I'm guessing the 'fix' from your guy is just luck rather than anything real and there is a real non-determinism. |
Can we deterministically reproduce the non-determinism with this one? If so, gold. |
DESIGN_DIR is already defined in the Makefile as$(dir $ (DESIGN_CONFIG)). These two designs defined redundant custom variables (chameleon_DIR, microwatt_DIR) that were identical to DESIGN_DIR. Use the standard variable to simplify config and remove non-standard patterns.