-
Notifications
You must be signed in to change notification settings - Fork 75
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
Re-enable vgather in tests when x64asm is fixed #552
Comments
Would one of you mind taking this over? I have an easy to reproduce version, but I don't really know how to go from there. Basically, the sanbox cannot run the following code:
|
I think it must be that x64asm isn't assembling this correctly. You can assign it to me but I won't be able to look at it for a bit. On Tue, Feb 24, 2015 at 11:28 PM, Stefan Heule [email protected]
|
Yeah, that's what I suspect, too, I just don't know how I can check that (easily). I guess if it's easy for you to give me a few quick hints how to check that, then I'll give it another try. |
Take the one instruction and put it in a text file, foo.s. Then from the command line: $ g++ -c foo.s And compare the two files. That will at least show you how (if) the two On Tue, Feb 24, 2015 at 11:30 PM, Stefan Heule [email protected]
|
g++ is already unhappy: |
Okay. I understand this. Explanation coming -- On Tue, Feb 24, 2015 at 11:38 PM, Stefan Heule [email protected]
|
This is the same issue as the one that's already in x64asm. At least it's This one instruction takes a specific kind of memory operand. Instead of What you'll need to do is --
canonical_op "vm32x" = "vm32"
op2type "m32" = "VM32" op2tag "m32" = "VM_32"
VM_32
Ug... let's cross this bridge when you get here
On Tue, Feb 24, 2015 at 11:38 PM, eric schkufza [email protected]
|
Steps 1-5 correspond to fixing the ticket that's already in x64asm. If you just add dummy handlers to Transforms for returning failure when you On Tue, Feb 24, 2015 at 11:48 PM, eric schkufza [email protected]
|
I can say a little bit more about step 5 -- The method you're going to have to fix is Assembler::mod_rm_sib(). Wow. This method is an implementation of table 2-3 from vol2 of the intel The new version is going to have to implement table 2-13. The mod/rm byte On Tue, Feb 24, 2015 at 11:50 PM, eric schkufza [email protected]
|
I say you're going to have to use sfinae because this is a templated method You might have to check with him about how all this templating works now. On Tue, Feb 24, 2015 at 11:59 PM, eric schkufza [email protected]
|
Is there more we're doing here or can we close this? |
I think this was taken care of in another ticket (the build failing part) I'd say change the name to "add support for vgather once x64asm is fixed" On Thu, Feb 26, 2015 at 11:21 PM, Berkeley Churchill <
|
See also: StanfordPL/x64asm#149 |
No description provided.
The text was updated successfully, but these errors were encountered: