-
Notifications
You must be signed in to change notification settings - Fork 299
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Calyx] Lower Arith CmpFOp to Calyx #7860
base: main
Are you sure you want to change the base?
Conversation
My first guess is this is being inlined because of InlineCombGroups. |
Makes sense, and I think I shouldn’t put them into comb groups in the first place since |
Yes, if you want these to be read in sequential order then they need to be placed in registers. |
1ceae59
to
0db4e8e
Compare
} | ||
|
||
// General case | ||
StringRef opName = cmpf.getOperationName().split(".").second; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Maybe I should refactor with buildLibraryBinaryPipeOp
, it's tricky though
This patch tries to lowers
arith::cmpf
to Calyx. Relevant issue: #7821One thing I'm still trying to figure out is that, taking
ult
as an example, I tried to create aCombGroup
to evaluatestd_compareFN.lt || std_compareFN.unordered
.My test case is:
and I
dump
intermediate result afterBuildOpGroups
, it shows:so clearly we can see:
But after the entire execution, it finishes with:
There's no appearance of that combinational group. Any insight why could this happen? @cgyurgyik @andrewb1999 @rachitnigam