Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SystemZ Vector Load with alignment hint #2194

Open
juergenchrist opened this issue Nov 13, 2023 · 1 comment
Open

SystemZ Vector Load with alignment hint #2194

juergenchrist opened this issue Nov 13, 2023 · 1 comment

Comments

@juergenchrist
Copy link

Hi,

when trying to disassemble a SystemZ Vector Load instruction that includes an alignment hint, capstone does not recognize this instruction:

$ cstool -d systemz 0xe70050003006
ERROR: invalid assembly code

Without the alignment hint, everything works fine:

$ stool -d systemz 0xe70050000006
 0  e7 00 50 00 00 06  vl	%v0, 0(%r5)
	ID: 1966 (vl)
	op_count: 2
		operands[0].type: REG = v0
		operands[1].type: MEM
			operands[1].mem.base: REG = 5
	Groups: vector 

I guess the third operand (4-bit immediate M3 with possible values 0 for no alignment, 3 for doubleword aligned, and 4 for quadword aligned) is currently not parsed/supported. Would it be possible to add this?

Thanks.

@XVilka
Copy link
Contributor

XVilka commented Dec 21, 2023

The best way to update System Z deficiencies is to do the "auto-sync" with the mainstream LLVM like it was done for ARM, ARM64, PPC, Tricore, Alpha: #2015
There is currently a lack of hands working on the project, and System Z, sadly, is not yet one of our (Rizin team) priorities. Thus, they could do such an update if people want to contribute. If there is a desire to proceed - we could describe the process in detail.
There is some short documentation already:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants