Vincent Laporte

Results 92 comments of Vincent Laporte

The `eclib` directory of both branches should be “reconciled” as a first step.

IIRC, register allocation never allocates anything to RSP.

Thanks for the report. This is indeed a bug (both in `master` and `glob-array3`). The correct behavior of the compiler would be to reject this program with the following explanation:...

Here the error is raised by “asmgen”, the final pass of the compiler.

You’re right Jean-Christophe. However this particular error message is improved, it will remain a compiler bug. The instruction selection emitted an instruction that does not exist (without even a word...

At commit 4739cb65, the error message used to be: > compilation error in functions main and main at position line 19: Need to spill RAX { r.381 }

The register allocation treats differently conflicts within a single function and conflicts with the callers: https://github.com/jasmin-lang/jasmin/blob/5231b52c77290d26e78d0a14706d1ae90e5a8ccd/compiler/src/regalloc.ml#L314-L315 The current implementation continues (picks a register that will be in conflict somewhere) but...

Yes, so that you get a neat “need-to-spill” error message on the call-site (irony).

Jasmin 2022.04.0 no longer fails on these examples.

Are there any good reasons to use this kind of pattern? It seems that the inline function could declare its own local stack variable instead of receiving it from the...