Teach LIAR/x86-64 about ordered vs unordered comparisons.
authorTaylor R Campbell <campbell@mumble.net>
Wed, 28 Nov 2018 04:43:18 +0000 (04:43 +0000)
committerTaylor R Campbell <campbell@mumble.net>
Wed, 28 Nov 2018 04:43:18 +0000 (04:43 +0000)
commit1770067912d02f08768190a581aff820614a243f
tree56a34212ae89a70c24e56b7ff03ed85f4e098255
parent9e752d778aa97854b7ac03671593400da2d3eb3b
Teach LIAR/x86-64 about ordered vs unordered comparisons.

- Fix miscompilation of ordered comparisons: now the standard
  comparison operators raise exceptions, which trap if you ask.

- Open-code the unordered comparisons flo:safe< &c.
src/compiler/machines/x86-64/machin.scm
src/compiler/machines/x86-64/rulflo.scm
tests/microcode/test-flonum-except.scm