Thomas Morley - 46 minutes ago
Inline assembler fallback for _FPU_SETCW() missing in MINGW libraries
Issue 4943
As Issue 4943 on Windows compilation was triggered by
missing _FPU_SETCW() in the MINGW libraries, an alternate call to
initiate the X87 FPU setup as an inline-assembler command is added
- for MINGW 32 Bit compilation only.
https://codereview.appspot.com/575600043/
On Sat, 9 Jan 2016 at 09:55 Chris Yate chrisyate@gmail.com wrote:
So, it turns out this was easy to minimise the code. File is attached.
It's still ~70 bars but only one voice, which is the dynamics staff of a
piano score (without anything else), so it's only silent music."AutoPageBreaksOff" in the score block causes the exception failure.
I note some "insane spring distance" warnings.These don't happen in the
real thing.Chris
Note: According to Phil H's own tests: "This started in 2.19.21. 2.19.20 is OK."
Update: an instance of this affects also non-Windows systems, see comment below.
Diff:
Passes make. make check and a full make doc.
Reg test diffs here:
https://cloud-u8zj2dc4b.yourownnet.eu/s/p7SJnLKpswT2E5W
Sure you didn't confuse something?
In gittext I see:
SUBJECT: Issue 5646: Switch to Python 3.x
As far as I know, James only applies the patch but does not produce a commit, hence the gittxt is correct.
The differences look ok to me, the profiling results have always been a bit odd on my system. Fortunately we can now fix this correctly by sorting the snippet names before compiling them, see https://sourceforge.net/p/testlilyissues/issues/5721/.
"Jonas Hahnfeld" hahnjo@users.sourceforge.net writes:
If you take a look how LilyPond distributes jobs on the command line to
different LilyPond processes, it should be clear that basically any
addition or removal of a regtest causes a quite different distribution
of of snippets across processes.
--
David Kastrup
Right, my notion of "fix" has not been fully accurate. What I mean to say is that with #5721 you should get the same profiling results more often.
If you add a regtest, the result will change. If you run the tests incrementally, results will change because only changed tests are compiled. If you run with a different number of processes, the distribution will obviously change. If your system is busy with other things, timing will be different. And so on...
Patch on countdown for Feb 4th
It seems that Issue 5725 has fixed this issue in LilyPond 2.19.84 except https://sourceforge.net/p/testlilyissues/issues/4943/#b3ae .
Here is the results of my experiment on Windows 10 1909 (64 bit).
https://sourceforge.net/p/testlilyissues/issues/4943/#b3ae is similar to this issue, but maybe the cause is different.
I don't have macOS.
Would anyone test on macOS?
On Linux, lilypond 2.19.83 (Fedora package), testing the snippet mentioned above by Valentin, I get this error:
With lilypond 2.19.84 (just released .sh file) it still fails:
I don't see my previous comment, even if I received the email.. weird.
I've tested also on Windows 7.
I can compile the AssertionFailing.ly file and I get the same warnings I get also on Linux.
Valentine's example is failing in Windows just as in Linux, even though it's an example of bad input (a page break with no music before doesn't make sense).
So I think the fix was successful in bringing the behavior of Windows systems (and other 32bit x86 systems) close to that we experience with other systems.
That makes debugging such problems while on a different platform and finding fixes for them in future quite more likely.
Now Valentin has given an example that fails on both 32bit and 64bit x86 systems. Fixing that becomes now better in reach, but even though it perfectly fits the headline of this report (though not the committed patch), it's sort of buried in this issue. Maybe it makes sense to move this out into a fresh issue, now more amenable than fixing to previously?
I opened a new ticket:
https://sourceforge.net/p/testlilyissues/issues/5767/
and set this one to abandoned