Comments (9)
is this for x86 32bit?
from keystone.
Oh yes sorry I forgot to mention that.
from keystone.
how do Nasm, Xed, or any assemblers handle this case?
i tried with some, but none accepts "push word 0x0d" or "push dword 0x0d", or can distinguish the differences.
from keystone.
With XED there is no textual input so the user has to specify whether a word
or dword
was intended. OA assumes a dword
per default (as does XEDParse) so I'd say assuming a dword
is the correct behavior.
As for handling pushing a word
I don't really know to be honest. This website mentions using pushw
and pushd
to explicitly tell the assembler what to emit.
from keystone.
nasm and gnu as in intel mode output 6A 0D
for push 0x0d
. nasm supports push word 0x0d
(which outputs 66 6A 0D
), gnu as supports push word ptr 0x0d
in intel mode (which also outputs 66 6A 0D
). I have no idea how to convince gnu as in AT&T mode to output these opcodes (pushw $13
yields 66 FF 35 03 00 00 00
, which is push word [dword 3]
).
from keystone.
this is fixed now
$ kstool x32 "push 0xd"
push 0xd = [ 6a 0d ]
$ kstool x32 "push word 0xd"
push word 0xd = [ 66 6a 0d ]
from keystone.
Great!
from keystone.
from keystone.
Yes I will look at all of them as soon as possible. I added some more tests
to XEDParse that currently fail for various reasons. I believe they pass
Keystone.
On Tue, 14 Jun 2016 at 19:17, Nguyen Anh Quynh [email protected]
wrote:
can you confirm all the other issues you reported? most of them are fixed
now.—
You are receiving this because you modified the open/close state.Reply to this email directly, view it on GitHub
#10 (comment),
or mute the thread
https://github.com/notifications/unsubscribe/ACWCmbjWgjW4YQHpTgoma7jVk8YvOO4Dks5qLuI5gaJpZM4ISiQq
.
from keystone.
Related Issues (20)
- An infinite loop in llvm/lib/MC/MCParser/AsmParser.cpp
- python : mov reg,qword ptr [XXX] error
- AArch64 floating point not right HOT 1
- 仅仅是使用官方的例子,都无法正常运行 HOT 3
- How to use as a cmake subdirectory
- 80386 call in 8086 mode
- Need support LongArch
- Can't install python bindings. /llvm/lib64/libkeystone.so not found
- Unmaintained? HOT 3
- support hex to asm ? HOT 1
- Keystone Not Assembling Powerpc HOT 1
- Keystone automatically converting immediates for relative instructions as if they were absolute? HOT 1
- MIPS- Branch absolute target restricted to 16 bits
- under ATT style, it treats decimal numbers as hexadecimal numbers. that is very painful.
- under intel style, Invalid operand (KS_ERR_ASM_INVALIDOPERAND) when same Label is accessed second time.
- that is a problem, there is hard coding to force Radix to 16 when calling ks_option. and there is not export api to set the radix
- Inline comments inside assembly code string | python HOT 1
- keystone can not recognize the symbol with '@' which contained by __stdcall or msvcp functions
- keystone is bad supporting X86 when resolving PCRel. HOT 1
- `leal (%eax,%eax), %edx` invalid operand. failure parsing operand ` (%eax,%eax)`, bad supporting to index addressing HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from keystone.