avast / avast/retdec

apparent incorrect decompilation of very simple function

Open
#668 0 comments 0 reactions 1 assignee Claimed by @PeterMatula View on GitHub
bug P-output
Dominant language
C++
Stars
8.6k
Forks
1k
PR merge metrics
No merged PRs in 30d

Description

I decompiled this function using the latest retdec from Oct 16 on Linux:
```
0000000000000000 :
0: 48 89 f8 mov %rdi,%rax
3: c1 e8 1f shr $0x1f,%eax
6: c3 retq
```
the result is:
```
define i64 @func1643(i64 %arg1) local_unnamed_addr {
dec_label_pc_0:
%tmp7 = icmp slt i64 %arg1, 0
%v3_3 = zext i1 %tmp7 to i64
ret i64 %v3_3
}
```
but these functions don't return the same thing when the argument is 0x80000000LL: the object code returns 1 and the decompiled code returns 0.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.