radare2/test/db/cmd/cmd_aea
aemmitt-ns ec173d40d6
ESIL signedness and other extensions ##esil (#17436)
* fix typo in anal_arm esil (does not affect esil execution)
* add af flag setting and sof op for sub overflow, change borrow
* remove the break that was 'breaking' everything, fix warning
* add new sign extension operator and use it to handle signedness in imul
* work on expressions for idiv, div, imul, mul, remove  and just modify sub/cmp
* add clz and reorder the sign extension arguments to be in line with all other ops
* add support for many arm64 instructions
* add sign extension to all ldr*s instructions
* make numerous changes to fix REV*, SXT*, LSL, LSR, ASR, SDIV, MOVN and others, to be detailed in PR
* add sxt* to shifted_register_append, use it to fix opcall and ldr / str
* remove unnecessary commented code
* add some comments
* add clz and reorder the sign extension arguments to be in line with all other ops
* add sign extension to all ldr*s instructions
* make numerous changes to fix REV*, SXT*, LSL, LSR, ASR, SDIV, MOVN and others, to be detailed in PR
* add sxt* to shifted_register_append, use it to fix opcall and ldr / str
* fix wrong type check in esil_signext
* change borrow flag back to the way it was
* add example comment to esil_signext
* unbreak movk
* format mask in sub, cmp, and movk as hex
* add test for esil signext operator
* use ULL instead of (ut64) cast in shifts
2020-09-02 00:03:24 +02:00

121 lines
1.4 KiB
Plaintext

NAME=aea 5
FILE=-
ARGS=-a x86 -b64
CMDS=wx 4889e5b8ffff000089c2c1ea1f01d0;aea 5
EXPECT=<<EOF
I: rsp eax edx
A: rsp rbp rax eax rdx cf edx zf pf sf of af
R: rsp eax edx
W: rbp rax rdx cf edx zf pf sf eax of af
V: 0 65535 1
N: rsp
EOF
RUN
NAME=aeaj 5
FILE=-
ARGS=-a x86 -b64
CMDS=wx 4889e5b8ffff000089c2c1ea1f01d0;aeaj 5~{}
EXPECT=<<EOF
{
"A": [
"rsp",
"rbp",
"rax",
"eax",
"rdx",
"cf",
"edx",
"zf",
"pf",
"sf",
"of",
"af"
],
"I": [
"rsp",
"eax",
"edx"
],
"R": [
"rsp",
"eax",
"edx"
],
"W": [
"rbp",
"rax",
"rdx",
"cf",
"edx",
"zf",
"pf",
"sf",
"eax",
"of",
"af"
],
"V": [
"0",
"65535",
"1"
],
"N": [
"rsp"
]
}
EOF
RUN
NAME=aeA 15
FILE=-
ARGS=-a x86 -b64
CMDS=wx 4889e5b8ffff000089c2c1ea1f01d0;aeA 15
EXPECT=<<EOF
I: rsp eax edx
A: rsp rbp rax eax rdx cf edx zf pf sf of af
R: rsp eax edx
W: rbp rax rdx cf edx zf pf sf eax of af
V: 0 65535 1
N: rsp
EOF
RUN
NAME=aes delay slot
FILE=bins/elf/mipsloop
CMDS=<<EOF
s main
aeim
28aes
ar?v0
ar?a1
sr PC
pi 2
EOF
EXPECT=<<EOF
0x0000000a
0x00007a62
lw a0, -segment.LOAD0(gp)
lw t9, -sym.imp.printf(gp)
EOF
RUN
NAME=aes delay slot2
FILE=bins/elf/mipsloop
CMDS=<<EOF
s main
aeim
aesu 0x000804d8
ar?v0
ar?a1
sr PC
pi 2
EOF
EXPECT=<<EOF
0x0000000a
0x00007a62
lw a0, -segment.LOAD0(gp)
lw t9, -sym.imp.printf(gp)
EOF
RUN