3 ms·
What are these non deterministic compilers I keep hearing about, honestly curious.
by WD-42 1y ago
What are these non deterministic compilers I keep hearing about, honestly curious.
- charcircuit 1y agoFor example looping over the files in a directory can happen in a different order depending on the order the files were created in. If you are linking a bunch of objects the order typically matters. If the compiler is implemented correctly the resulting binary should functionally be the same but the binary itself may not be exactly the same. Or even when implemented correctly you will see cases where different objects can be the one to define a duplicate symbol depending on their relative order.
- ModernMech 1y agoThat's not nondeterminism though, you've changed the input (the order of the files). Nondeterminism would be if the binary changes despite the files being in the same order. If the binary is the same holding fixed the order of the files, then the output is deterministic.
- PhunkyPhil 1y agoGCC can use randomized branch prediction.