Quoting David Kastrup <d...@gnu.org>:
That would have been my most likely guess. Probably the "min" function call.
You are absolultely right! I was able to work around the gcc bug by making a separate function for Moment comparison and using it instead of min():
Moment min_moment (Moment m1, Moment m2) { return min (m1, m2); }
That's x64_64 assembly. Please let me know if you want i386 assembly.Would definitely help with my limited vocabulary. This is enough of a headacher without secondguessing the instruction set.
OK, I made files with -O1 and -O2 from the files that only differ in that the "original" uses min() and the "workaround" uses min_moment(). Of the four files, simultaneous-music-iterator-O2-original.s is the only one broken (I tested).
Please let me know it you need anything else. -- Regards, Pavel Roskin
simultaneous-music-iterator.tar.bz2
Description: application/bzip
_______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel