You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
After the last change in the file CfToHandshake, it is impossible to declare external functions. During the application of applyFullConversion, the pattern ConvertCalls is executed on the calls of external functions before transforming the external functions into handshake functions in the LowerFuncToHandshake pattern. During the ConvertCalls, there is a check to ensure that the call refers to a handshake function. This check fails. There are 2 possible solutions to this problem:
The check is skipped in the ConvertCalls pattern
The LowerFuncToHandshake pattern is executed with a partial conversion before executing all the other patterns
The text was updated successfully, but these errors were encountered:
The commit 582684a
re-structured the `CfToHandshake` conversion pass, after which
external functions could no longer be used. This commit fixes
this issue. A template benchmark to evaluate this feature is the
following one.
```cpp
#include "dynamatic/Integration.h"
int external_1(in_int_t a);
int external(in_int_t a) {
int c = a >> 5;
external_1( c );
return (c+2);
}
```
In the previous commit, the frontend's `compile` command
fail, now it works correctly.
Fixes#108.
After the last change in the file CfToHandshake, it is impossible to declare external functions. During the application of applyFullConversion, the pattern ConvertCalls is executed on the calls of external functions before transforming the external functions into handshake functions in the LowerFuncToHandshake pattern. During the ConvertCalls, there is a check to ensure that the call refers to a handshake function. This check fails. There are 2 possible solutions to this problem:
The text was updated successfully, but these errors were encountered: