cs01 / cs01/gdbgui

Large values in registers display incorrectly

Open
#512 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
10.4k
Forks
521
PR merge metrics
No merged PRs in 30d

Description

**Describe the bug**
Large values in registers are not displayed correctly. The loss of precision is reminiscent of that of JS floating point.

**To Reproduce**
Steps to reproduce the behavior:
1. Create a binary that stores a large value in a register, like with `or $0xffffffffffffffff, %rax`
2. Load the binary in gdbgui and run `starti`
3. Step past the instruction

**Expected behavior**
The value in rax should be displayed as `0xffffffffffffffff` and `18446744073709551615`.

**Actual behaviour**

Image

**Please complete the following information:**
* OS: Linux 6.18.25, NixOS 25.11
* gdbgui version (`gdbgui -v`): 0.15.3.0
* gdb version (`gdb -v`): 16.3
* browser [e.g. chrome, safari]: LibreWolf 150.0-1
* python packages (`pip freeze`): (Nix unpins the versions in requirements.txt before building)
```
bidict==0.23.1
blinker==1.9.0
Brotli==1.2.0
click==8.2.1
dnspython==2.8.0
eventlet==0.40.0
Flask==3.1.2
Flask-Compress==1.17
Flask-SocketIO==5.5.1
greenlet==3.2.3
h11==0.16.0
itsdangerous==2.2.0
Jinja2==3.1.6
MarkupSafe==3.0.3
pygdbmi==0.11.0.0
Pygments==2.19.2
python-engineio==4.12.3
python-socketio==5.14.3
simple-websocket==1.1.0
six==1.17.0
Werkzeug==3.1.4
wsproto==1.2.0
zstandard==0.23.0
```

**Additional context**

`18446744073709551615 + ''` evaluates to `'18446744073709552000'` in JS.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.