[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [csmith-dev] c++ features

Atomic is available in C1X.

Yes, my motivation is that I've talked to multiple C++ compiler developers lately and basically everyone is worried about how the new memory model interacts with their optimizer. It's safe to say they'll be flushing out subtle bugs for several years, but we could accelerate that process.

What about inline? You will probably need to look at what kinds of
functions get inlined. There is lots of stuff you could stress,
eg, simplification when arguments are literal, optimization
opportunities in different calling contexts and stack handling
for different amounts of local storage.

Generating inline directive is a great idea, and (like "register") it's totally free at generation time.

Of course the aggressive compilers we test do a ton of inlining anyway, without being specifically asked, so this might matter most for the simpler, less aggressive tools.

Anyway, I've added this to our list.