Hey guys, so the asm diff we are seeing in c1builtin-integral is not something we are not streaming out, or any other logic being wrong in the pph.
The problem is: we define a dg-options entry in the header file which tells deja-gnu to add flags to the compilation (so far so good...) The problem is: deja-gnu only sees those options when doing the pph compile (as deja-gnu takes its options by reading the file compiled it seems, not the full translation unit). In our case compiling the pph with -ffinite-math-only -fno-math-errno. When compiling the C file, those flags are no longer there (deja-gnu doesn't pass them in as they are not present in the C file) Furthermore, when doing the non-pph compile, those flags aren't passed either. It turns out, if we either: 1) Do the pph compile without the flags, and then the pph and non-pph compile: there is no asm diff 2) Do the pph compile with the flags, but also pass the flags when doing the C file compile (with and without pph): there is also no asm diff! So the question is: how do we want to treat flags passed to the pph compile? I don't think it makes sense to use these flags in the rest of the compilation, but not doing so also results in the flag only being use for half of the compilation... Maybe we should save the flags used as part of the pph compile and invalidate the pph file if we don't get the same set of flags when doing the real compilation (as we do, i think, with the identifier(macro) context present when compiling a given pph file)?? Gab