Currently LayoutAssignment only deals with a module at a time and
knows nothing about other modules. Therefore, sends and recvs are given a default layout to ensure that the layout is the same across all communicating modules. This CL adds a ChannelLayoutConstraints object which can be passed into LayoutAssignment. When a send or recv is layed out, its chosen layout is saved into the ChannelLayoutConstraints. When, later, another instruction is seen in a different module that uses the same communicating channel ID, the layout is constrained to be the same as in the previous module. PiperOrigin-RevId: 180771799
Loading
Please sign in to comment