Closed maoif closed 1 year ago
The flonum->fixnum
bug is solved by modifying asm-mul/ovfl
in the backend.
The cp0.mo
bug is due to the different representations of +nan.0
on x86_64 and on RISC-V.
The
cp0.mo
bug is due to the different representations of+nan.0
on x86_64 and on RISC-V.
Hi, I'm interested in your work, could you please make an overview? Maybe will solve us many potential questions! Thanks.
The
cp0.mo
bug is due to the different representations of+nan.0
on x86_64 and on RISC-V.Hi, I'm interested in your work, could you please make an overview? Maybe will solve us many potential questions! Thanks.
Sure. I'm preparing the PR right now, and am writing an article explaining the porting process. Hope I can get them done soon.
Maybe you can let me know what questions you have?
The
cp0.mo
bug is due to the different representations of+nan.0
on x86_64 and on RISC-V.Hi, I'm interested in your work, could you please make an overview? Maybe will solve us many potential questions! Thanks.
Sure. I'm preparing the PR right now, and am writing an article explaining the porting process. Hope I can get them done soon.
Maybe you can let me know what questions you have?
It's my very pleasure to hear that! And here's my questions:
That's all, thank you!
The
cp0.mo
bug is due to the different representations of+nan.0
on x86_64 and on RISC-V.Hi, I'm interested in your work, could you please make an overview? Maybe will solve us many potential questions! Thanks.
Sure. I'm preparing the PR right now, and am writing an article explaining the porting process. Hope I can get them done soon.
Maybe you can let me know what questions you have?
It's my very pleasure to hear that! And here's my questions:
That's all, thank you!
Hello everyone,
I've been porting ChezScheme to riscv64 and loongarch64 (an ISA by a Chinese company) and so far the majority of the tests are passed. However, there are still some tests that stuck and I don't have a clue why they exist. You can check out my latest code here.
This is rv64le's mats report:
This is la64le's (loongarch64) mats report, which is better:
Threaded versions have similar issues so I omit the reports here.
riscv64 test environment:
loongarch64 test environment:
I looked at the
cp0-partial-folding
bug and found it leads to:It seems that the
(eqv? x y)
inequivalent-expansion?
fails to compare the two+nan.0
's in the two lists.But if I type the comparison directly in REPL, the result is correct:
The
fl.mo:Bug in mat flonum->fixnum
is also interesting. The test code is:The correct behavior of the code is to give an exception, but in rv64 and la64 the
flonum->fixnum
part returns 0. It's as if the 2ndunless
below failed to run:BUT, if I run
The error appears.
I would like to know if you guys know what the sources of the bugs are.