-
Notifications
You must be signed in to change notification settings - Fork 42
[Operations] Change naming of operands and results to be declarative #577
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
Open
murphe67
wants to merge
193
commits into
main
Choose a base branch
from
fix_naming
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
193 commits
Select commit
Hold shift + click to select a range
4429fff
result io name
murphe67 130beba
typo
murphe67 5924e83
typo
murphe67 f57bed1
remove default implementations
murphe67 b925da3
remove default naming
murphe67 f0253fc
remove default calls
murphe67 b26a471
typo
murphe67 939573b
custom and simple
murphe67 da229b5
methods to interface
murphe67 c0ce4db
arith ops fixed
murphe67 4d86084
move to header
murphe67 deaf392
change infer functions
murphe67 b3fcd0a
arith io interface
murphe67 0cca80f
individual arith interfaces
murphe67 2db35bc
typo
murphe67 1805654
typo
murphe67 1524c23
typo
murphe67 01870a1
fix mux names
murphe67 0072329
namespace
murphe67 1c824e7
up to memory controller
murphe67 9bdf571
remove some num results
murphe67 89b9cf6
remove nameiointerface
murphe67 c3c2ca7
simple port name for end
murphe67 57c7638
more functions into tablegen
murphe67 4ef039b
move common funcs into header
murphe67 bd73f81
move out of detail
murphe67 58baf07
move autogenerated?
murphe67 3a56061
forward declaration
murphe67 e22ff87
move into ops h
murphe67 75ff38d
mem interface in hs
murphe67 8e8e289
remove body of end op get operands
murphe67 389668a
get array
murphe67 d42e4a0
remove namedio from name analysis
murphe67 3cbbda0
typo
murphe67 d913d1a
typo
murphe67 9c394cb
try declaration?
murphe67 7b951d6
move back into header
murphe67 098ddb4
remove lsq temporarily
murphe67 c125231
interfaces for name analysis
murphe67 30a842a
fix name
murphe67 d735920
more into header files
murphe67 9b79191
num operands on operation?
murphe67 894643d
results from get operation
murphe67 42b6598
merge declarations cond br
murphe67 5491bb1
remove polygeist path
murphe67 8282ba3
typo
murphe67 4bfed54
fix includes
murphe67 b719301
fixes
murphe67 1ab9e5e
clang format
murphe67 f6eed09
move into build include
murphe67 58ffe7e
clean up link creation
murphe67 3accda3
remove remove
murphe67 189e8a0
Merge branch 'main' of github.com:EPFL-LAP/dynamatic into polygeist-path
murphe67 6e369f1
Merge branch 'main' of github.com:EPFL-LAP/dynamatic into fix_naming
murphe67 f62b858
Merge branch 'polygeist-path' of github.com:EPFL-LAP/dynamatic into f…
murphe67 33aa07b
move naming into interfaces cpp
murphe67 9eb399f
add to header
murphe67 77003ab
remove compare funcs
murphe67 79b72d9
handshake
murphe67 bad71a5
lsq naming
murphe67 c1b92b3
typo
murphe67 e8efda1
mem controller op
murphe67 eebc5c9
typo
murphe67 0537c82
endop
murphe67 52a64a4
non static
murphe67 eaf7892
add simple naming?
murphe67 3af2447
2d
murphe67 5102c61
typo
murphe67 af393b3
move into function
murphe67 6a40f7f
typo
murphe67 aba1aec
endop
murphe67 a697a2d
typo
murphe67 9e3cc5f
fix ext
murphe67 28a5a7d
format
murphe67 cfd61fc
format
murphe67 b362a8f
try new interfaces
murphe67 879f4f6
end simple
murphe67 1b5c906
typo
murphe67 53c581b
semicolon
murphe67 3c23a89
typo
murphe67 651c465
typo
murphe67 25af5d5
func op header
murphe67 55e88fd
semicolon
murphe67 41c97fc
str copy?
murphe67 a034f1d
namespace
murphe67 6af72e1
fix call
murphe67 324afc0
concrete op
murphe67 a36d107
merge main
murphe67 fcde84a
commenting, check funcop?
murphe67 4e1fced
commenting, check funcop?
murphe67 60825b3
commenting, check end op?
murphe67 382f494
commenting, check end op?
murphe67 0d5894d
commenting, validate?
murphe67 6654307
commenting, inherit?
murphe67 8a3dd96
commenting, inherit?
murphe67 e551320
commenting, inherit?
murphe67 c35de58
commenting, inherit?
murphe67 1b218b0
commenting, inherit?
murphe67 ae77057
commenting, inherit?
murphe67 2ab2594
commenting, inherit?
murphe67 23ce952
inherit fixes
murphe67 41d16de
inherit fixes
murphe67 7fc4cdb
remove port namer
murphe67 fe6e660
remove port namer
murphe67 0370d0a
remove port namer
murphe67 0a0dff6
remove port namer
murphe67 d75b2a5
remove port namer
murphe67 d2a4551
remove port namer
murphe67 ac34325
remove port namer
murphe67 0f1f74e
remove port namer
murphe67 e59c39c
comments
murphe67 d50a1b4
need num ports?
murphe67 63958ab
need num ports?
murphe67 5236836
need num ports?
murphe67 00c887f
need num ports?
murphe67 043761e
need num ports?
murphe67 8dd2a0e
no port names
murphe67 158a8d7
no port names
murphe67 518528a
no port names
murphe67 47a8ba2
no port names
murphe67 7119bfe
no port names
murphe67 663b640
no port names
murphe67 26e6517
no port names
murphe67 72b7a81
no port names
murphe67 f5c16ac
small fixes
murphe67 c2ea688
small fixes
murphe67 4125ee0
small fixes
murphe67 9edf40f
small fixes
murphe67 e9beac0
small fixes
murphe67 f4adfe1
small fixes
murphe67 511aab7
small fixes
murphe67 4b81210
small fixes
murphe67 df47dc9
clang format
murphe67 26a7aac
merge
murphe67 38d75f5
format
murphe67 e9d0bdd
better comments
murphe67 e94e231
syntax
murphe67 f72f97b
format
murphe67 217ea16
remove duplicate
murphe67 37c0cd0
fix interface
murphe67 d5c042d
fix comments
murphe67 b881946
try base interface
murphe67 172a4cf
try base interface
murphe67 481a433
try base interface
murphe67 9f44066
try base interface
murphe67 0a622ce
try different order
murphe67 85c482c
try different order
murphe67 aac7552
comment out
murphe67 79c7306
fix bug
murphe67 c781876
add back
murphe67 8927309
export dot
murphe67 5023e63
log 2 csv
murphe67 3feaeb1
syntax
murphe67 353e0a8
detail
murphe67 c32ba80
detail
murphe67 515e14a
detail
murphe67 34d59d2
detail
murphe67 d54c540
detail
murphe67 245f3f8
detail
murphe67 7c0c3f4
detail
murphe67 5320690
detail
murphe67 5d239a1
detail
murphe67 60b2381
detail
murphe67 796fae4
detail
murphe67 ee6016d
detail
murphe67 5a14db8
failure
murphe67 544247c
failure
murphe67 12e5f9c
const
murphe67 0032e12
const
murphe67 a9a659e
const
murphe67 ecbb01b
wrapper
murphe67 0e3dff5
wrapper
murphe67 da6761f
wrapper
murphe67 65ebc90
format
murphe67 363090d
format
murphe67 3258817
syntax
murphe67 103d9e8
syntax
murphe67 914c58b
syntax
murphe67 3af1baf
syntax
murphe67 4f056a9
safety
murphe67 bef6f72
failure test
murphe67 60548e3
remove free functions
murphe67 6776ce3
remove free functions
murphe67 0d141b4
remove free functions
murphe67 3636a6e
remove free functions
murphe67 674ff06
remove free functions
murphe67 08e667a
remove free functions
murphe67 77ef046
remove free functions
murphe67 05f8adf
remove free functions
murphe67 8f6d196
remove free functions
murphe67 e41811d
remove free functions
murphe67 76db7b3
merge
murphe67 69d3aff
format
murphe67 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -11,7 +11,7 @@ | |
| //===----------------------------------------------------------------------===// | ||
| #include "experimental/Support/FormalProperty.h" | ||
| #include "dynamatic/Analysis/NameAnalysis.h" | ||
| #include "dynamatic/Dialect/Handshake/HandshakeInterfaces.h" | ||
| #include "dynamatic/Dialect/Handshake/HandshakeOps.h" | ||
| #include "dynamatic/Support/JSON/JSON.h" | ||
| #include "llvm/Support/JSON.h" | ||
| #include <memory> | ||
|
|
@@ -128,9 +128,6 @@ AbsenceOfBackpressure::AbsenceOfBackpressure(unsigned long id, TAG tag, | |
| Operation *ownerOp = res.getOwner(); | ||
| Operation *userOp = *res.getUsers().begin(); | ||
|
|
||
| handshake::PortNamer ownerNamer(ownerOp); | ||
| handshake::PortNamer userNamer(userOp); | ||
|
|
||
| unsigned long operandIndex = userOp->getNumOperands(); | ||
| for (auto [j, arg] : llvm::enumerate(userOp->getOperands())) { | ||
| if (arg == res) { | ||
|
|
@@ -144,9 +141,11 @@ AbsenceOfBackpressure::AbsenceOfBackpressure(unsigned long id, TAG tag, | |
| userChannel.operationName = getUniqueName(userOp).str(); | ||
| ownerChannel.channelIndex = res.getResultNumber(); | ||
| userChannel.channelIndex = operandIndex; | ||
| auto handshakeOwnerOp = handshake::getHandshakeBase(ownerOp); | ||
| ownerChannel.channelName = | ||
| ownerNamer.getOutputName(res.getResultNumber()).str(); | ||
|
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. since port names match directly to operand/result names, the formal property annotation can go use the getResultName and getOperandName functions |
||
| userChannel.channelName = userNamer.getInputName(operandIndex).str(); | ||
| handshakeOwnerOp.getResultName(res.getResultNumber()); | ||
| auto handshakeUserOp = handshake::getHandshakeBase(userOp); | ||
| userChannel.channelName = handshakeUserOp.getOperandName(operandIndex); | ||
| } | ||
|
|
||
| llvm::json::Value AbsenceOfBackpressure::extraInfoToJSON() const { | ||
|
|
@@ -184,18 +183,18 @@ ValidEquivalence::ValidEquivalence(unsigned long id, TAG tag, | |
| : FormalProperty(id, tag, TYPE::VEQ) { | ||
| Operation *op1 = res1.getOwner(); | ||
| unsigned int i = res1.getResultNumber(); | ||
| handshake::PortNamer namer1(op1); | ||
|
|
||
| Operation *op2 = res2.getOwner(); | ||
| unsigned int j = res2.getResultNumber(); | ||
| handshake::PortNamer namer2(op2); | ||
|
|
||
| ownerChannel.operationName = getUniqueName(op1).str(); | ||
| targetChannel.operationName = getUniqueName(op2).str(); | ||
| ownerChannel.channelIndex = i; | ||
| targetChannel.channelIndex = j; | ||
| ownerChannel.channelName = namer1.getOutputName(i).str(); | ||
| targetChannel.channelName = namer2.getOutputName(j).str(); | ||
| auto handshakeOp1 = handshake::getHandshakeBase(op1); | ||
| auto handshakeOp2 = handshake::getHandshakeBase(op2); | ||
| ownerChannel.channelName = handshakeOp1.getResultName(i); | ||
| targetChannel.channelName = handshakeOp2.getResultName(j); | ||
| } | ||
|
|
||
| llvm::json::Value ValidEquivalence::extraInfoToJSON() const { | ||
|
|
||
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
port namers no longer required