Debugging carry legalisation
Signed-off-by: David Shah <davey1576@gmail.com>
This commit is contained in:
parent
c0724a7e97
commit
27a9850921
@ -128,15 +128,20 @@ class PlacementLegaliser
|
|||||||
bool legalise_carries()
|
bool legalise_carries()
|
||||||
{
|
{
|
||||||
std::vector<CellChain> carry_chains = find_chains(
|
std::vector<CellChain> carry_chains = find_chains(
|
||||||
ctx, is_lc,
|
ctx,
|
||||||
[](const Context *ctx, const CellInfo *cell) {
|
[](const Context *ctx, const CellInfo *cell) {
|
||||||
|
return is_lc(ctx, cell);
|
||||||
|
},
|
||||||
|
[](const Context *ctx, const
|
||||||
|
|
||||||
|
CellInfo *cell) {
|
||||||
CellInfo *carry_prev =
|
CellInfo *carry_prev =
|
||||||
net_driven_by(ctx, cell->ports.at(ctx->id("CIN")).net, is_lc, ctx->id("COUT"));
|
net_driven_by(ctx, cell->ports.at(ctx->id("CIN")).net, is_lc, ctx->id("COUT"));
|
||||||
if (carry_prev != nullptr)
|
if (carry_prev != nullptr)
|
||||||
return carry_prev;
|
return carry_prev;
|
||||||
CellInfo *i3_prev = net_driven_by(ctx, cell->ports.at(ctx->id("I3")).net, is_lc, ctx->id("COUT"));
|
/*CellInfo *i3_prev = net_driven_by(ctx, cell->ports.at(ctx->id("I3")).net, is_lc, ctx->id("COUT"));
|
||||||
if (i3_prev != nullptr)
|
if (i3_prev != nullptr)
|
||||||
return i3_prev;
|
return i3_prev;*/
|
||||||
return (CellInfo *)nullptr;
|
return (CellInfo *)nullptr;
|
||||||
},
|
},
|
||||||
[](const Context *ctx, const CellInfo *cell) {
|
[](const Context *ctx, const CellInfo *cell) {
|
||||||
@ -144,10 +149,10 @@ class PlacementLegaliser
|
|||||||
net_only_drives(ctx, cell->ports.at(ctx->id("COUT")).net, is_lc, ctx->id("CIN"), false);
|
net_only_drives(ctx, cell->ports.at(ctx->id("COUT")).net, is_lc, ctx->id("CIN"), false);
|
||||||
if (carry_next != nullptr)
|
if (carry_next != nullptr)
|
||||||
return carry_next;
|
return carry_next;
|
||||||
CellInfo *i3_next =
|
/*CellInfo *i3_next =
|
||||||
net_only_drives(ctx, cell->ports.at(ctx->id("COUT")).net, is_lc, ctx->id("I3"), false);
|
net_only_drives(ctx, cell->ports.at(ctx->id("COUT")).net, is_lc, ctx->id("I3"), false);
|
||||||
if (i3_next != nullptr)
|
if (i3_next != nullptr)
|
||||||
return i3_next;
|
return i3_next;*/
|
||||||
return (CellInfo *)nullptr;
|
return (CellInfo *)nullptr;
|
||||||
});
|
});
|
||||||
bool success = true;
|
bool success = true;
|
||||||
|
Loading…
Reference in New Issue
Block a user