aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--machxo2/arch.cc5
-rw-r--r--machxo2/arch.h11
2 files changed, 10 insertions, 6 deletions
diff --git a/machxo2/arch.cc b/machxo2/arch.cc
index 431fcc88..dccbcb87 100644
--- a/machxo2/arch.cc
+++ b/machxo2/arch.cc
@@ -118,11 +118,6 @@ BelId Arch::getBelByName(IdString name) const
IdString Arch::getBelName(BelId bel) const { return IdString(); }
-Loc Arch::getBelLocation(BelId bel) const
-{
- return Loc();
-}
-
BelId Arch::getBelByLocation(Loc loc) const
{
return BelId();
diff --git a/machxo2/arch.h b/machxo2/arch.h
index 1cf24892..527c6572 100644
--- a/machxo2/arch.h
+++ b/machxo2/arch.h
@@ -348,7 +348,16 @@ struct Arch : BaseCtx
BelId getBelByName(IdString name) const;
IdString getBelName(BelId bel) const;
- Loc getBelLocation(BelId bel) const;
+ Loc getBelLocation(BelId bel) const
+ {
+ NPNR_ASSERT(bel != BelId());
+ Loc loc;
+ loc.x = bel.location.x;
+ loc.y = bel.location.y;
+ loc.z = tileInfo(bel)->bel_data[bel.index].z;
+ return loc;
+ }
+
BelId getBelByLocation(Loc loc) const;
const std::vector<BelId> &getBelsByTile(int x, int y) const;
bool getBelGlobalBuf(BelId bel) const;