wasmtime icon indicating copy to clipboard operation
wasmtime copied to clipboard

x64: refactor the representation of `*Mem` and `*MemImm`

Open abrown opened this issue 7 months ago • 1 comments

While reflecting on why #10762 is hard, it seemed that the underlying problem to many ISLE matching issues is our inability to actually inspect the variants of the register specific versions of RegMem and RegMemImm. We had been wrapping instances of these Reg* types, but this change pushes the variants down to: GprMem, GprMemImm, XmmMem, XmmMemAligned, XmmMemImm, and XmmMemAlignedImm. With this, it should be possible to match directly on the variants in ISLE. This does not change any functionality.

abrown avatar May 14 '25 19:05 abrown

I will say, having tried to use this in #10762, that it doesn't just "solve everything." So we should judge this on whether it will make future matching easier. I know that I've reached for this kind of matching in the past but was frustrated it didn't exist.

abrown avatar May 14 '25 22:05 abrown