Displaying 3 results from an estimated 3 matches for "sortedsuset".
2012 Oct 17
1
[LLVMdev] MI DAG constructor indeterminism
...uot;std::set<SUnit*> RejectMemNodes; " is easy. Something like
this will work:
struct SortSUComp {
bool operator()(const SUnit *left, const SUnit *right) const {
return left->NodeNum < right->NodeNum;
}
};
typedef std::set<SUnit*, SortSUComp> SortedSUSet;
SortedSUSet RejectMemNodes;
But in case of Value * as a key - is there any unique ID that is
deterministic and could be used here? As I understand getValueID () is not
unique, or could it be sufficient in this case?
Something as bulky as temporary sorting queue/vector is also possible, but...
2012 Oct 17
0
[LLVMdev] MI DAG constructor indeterminism
On Oct 16, 2012, at 1:43 PM, Sergei Larin <slarin at codeaurora.org> wrote:
>
> Andy,
>
> This is less of a question but rather a status quo verification…
>
> We currently have certain indeterminism in MI scheduler DAG construction – it is introduces by the use of std::map/std::set during edge traversal.
> Result – a random variation in SUnit edge order
2012 Oct 16
2
[LLVMdev] MI DAG constructor indeterminism
Andy,
This is less of a question but rather a status quo verification.
We currently have certain indeterminism in MI scheduler DAG construction
- it is introduces by the use of std::map/std::set during edge traversal.
Result - a random variation in SUnit edge order (which will remain fixed
thereafter). Logically, it is the same DAG, but topologically it is a
slightly different one,