Hacker News new | ask | show | jobs
by tofof 4338 days ago
TLDR: Headline (and indeed bulk of article) is phantom symptom. True cause is register allocator behavior.

Specifically, allocator's handling of an instruction with a false dependency on register that's written to, coupled with multiple compilers being unaware of the false dependency.

1 comments

Maybe one should add, that (as much I understood) it is a problem of the processor handling one specific (and rare) instruction. It does assume register dependencies that do not exist. It was shown, that AMD does not have this behavior. And it shows, that today's processors are enormous complex beasts.

The problem with the compilers was, that they where not aware of this behavior and thus generated sub-optimal code for this situation ... but compiler builders are also mere humans.

Did they file a bug for gcc and clang?