-
Notifications
You must be signed in to change notification settings - Fork 152
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
AddKoreAttribute as a Frontend Kompiler Pass #3522
Conversation
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
kernel/src/main/java/org/kframework/backend/kore/ModuleToKORE.java
Outdated
Show resolved
Hide resolved
I'm currently blocked on the two pending issues mentioned above. The |
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
As far as the issue with the module transformer is concerned, it is a known issue that passes that only edit the attributes of sentences in a module get cached incorrectly by the code that helps cache module transformations, as a result of which the changes to the attribute get discarded. You have two options:
|
That's interesting, could you provide me with more details about it?
|
Blocked on #3523. |
… the uses if `isConstructor` and `isFunction`
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
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.
lgtm, but I would like it if someone else could have a look.
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
kernel/src/main/java/org/kframework/compile/AddKoreAttributes.java
Outdated
Show resolved
Hide resolved
Modifying function calls signatures Simplifying ModuleToKore
This reverts commit 4db2ccb.
…3187) * haskell-backend/src/main/native/haskell-backend: 2c1ff15bd - Export z3 overlay alone in flake (#3519) * Sync flake inputs to submodules * haskell-backend/src/main/native/haskell-backend: 93a705112 - [#3493] Add total attribute (#3505) * Sync flake inputs to submodules * haskell-backend/src/main/native/haskell-backend: bd61a0565 - kore-rpc Catch any runtime exception and send as error (#3522) * Sync flake inputs to submodules * haskell-backend/src/main/native/haskell-backend: 2020ceb1b - Fixing new nix update breaking cachix installation (#3526) * Sync flake inputs to submodules * haskell-backend/src/main/native/haskell-backend: 37f122964 - [#3493] Rename `Fl` (functional) by `T` (total) (#3521) * Sync flake inputs to submodules * haskell-backend/src/main/native/haskell-backend: 1c184832b - [#3523] Put unserialized definition.kore in bug report (#3527) * Sync flake inputs to submodules * haskell-backend/src/main/native/haskell-backend: 559424aa4 - InfoAttemptUnification to DebugAttemptUnification (#3525) * Sync flake inputs to submodules * Fix `Dockerfile` * Fix another `Dockerfile` * Update result for failing test The rename from functional to total changed these outputs --------- Co-authored-by: rv-jenkins <devops@runtimeverification.com> Co-authored-by: Tamás Tóth <tothtamas28@users.noreply.github.com> Co-authored-by: Tamas Toth <tamas.toth@runtimeverification.com> Co-authored-by: Radu Mereuta <headness13@gmail.com>
Part of #3444
This PR creates a new compiler pass that adds the Kore attributes to productions before
ModuleToKore
. This is part of the effort to refactor theModuleToKore
infrastructure to simplify it by decoupling functions and actions that can be done before the translation and that aren't related to (kore) code emission.Besides extracting the
AddKoreAttrubutes
function fromModuleToKore.java
, this PR also simplifies function calls such asisFunctional
andisConstructor
only to test if the attribute is present on the given production.