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
Right now we have dep-nodes representing the trans for individual items. We should create a dep-node also for each partition. These dep-nodes will not have a DefId but rather the string representing the partition name. They will have incoming edges from the trans of each individual item -- some trans items, such as drop glue, may not have their own individual item and can just be lumped under the partition node.
Upon startup, when the dep-node for a partition is deemed to be dirty, we will also delete the associated .o file from the disk. The same is true if the hash of the partition contents (cc #34037) changes.
One question: could it somehow happen (I don't think so...but maybe?) that a partition just ceases to exist, but none of the inputs change? I guess one example might be changing the partition strategy? We may just want to do a little walk over the graph and delete extra nodes.
One question: could it somehow happen (I don't think so...but maybe?) that a partition just ceases to exist, but none of the inputs change? I guess one example might be changing the partition strategy? We may just want to do a little walk over the graph and delete extra nodes.
I think that should be covered by the code that deletes partitions when the hash does not match any more. Since the name of old partition would not show up in the new partitioning, the corresponding object file would get deleted at that point.
Enable reuse of `.o` files if nothing has changed
This PR completes a first "spike" for incremental compilation by enabling us to reuse `.o` files when nothing has changed. When in incr. mode, we will save `.o` files into the temporary directory, then copy them back out again if they are still valid. The code is still a bit rough but it does seem to work. =)
r? @michaelwoeristerFixes#34036Fixes#34037Fixes#34038
Right now we have dep-nodes representing the trans for individual items. We should create a dep-node also for each partition. These dep-nodes will not have a
DefId
but rather the string representing the partition name. They will have incoming edges from the trans of each individual item -- some trans items, such as drop glue, may not have their own individual item and can just be lumped under the partition node.Upon startup, when the dep-node for a partition is deemed to be dirty, we will also delete the associated
.o
file from the disk. The same is true if the hash of the partition contents (cc #34037) changes.One question: could it somehow happen (I don't think so...but maybe?) that a partition just ceases to exist, but none of the inputs change? I guess one example might be changing the partition strategy? We may just want to do a little walk over the graph and delete extra nodes.
cc @michaelwoerister
The text was updated successfully, but these errors were encountered: