[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug binutils/30953] New: Objdump cuts 32bit displacements for AVX instr
From: |
blarsen at redhat dot com |
Subject: |
[Bug binutils/30953] New: Objdump cuts 32bit displacements for AVX instructions |
Date: |
Mon, 09 Oct 2023 15:40:31 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=30953
Bug ID: 30953
Summary: Objdump cuts 32bit displacements for AVX instructions
Product: binutils
Version: unspecified
Status: NEW
Severity: normal
Priority: P2
Component: binutils
Assignee: unassigned at sourceware dot org
Reporter: blarsen at redhat dot com
Target Milestone: ---
Compiling the following program with gcc:
int global = 1;
int main() {
asm("vmovd %0, %%xmm0": "=m"(global) : : "xmm0");
return 0;
}
And examining with objump -d, I get the following disassembly for the main
function:
0000000000401106 <main>:
401106: 55 push %rbp
401107: 48 89 e5 mov %rsp,%rbp
40110a: c5 f9 6e 05 0a 2f 00 vmovd 0x2f0a(%rip),%xmm0 #
40401c <global>
401111: 00
401112: b8 00 00 00 00 mov $0x0,%eax
401117: 5d pop %rbp
401118: c3 ret
notice how byte 401111 is a single null byte. That byte is part of the 32 bit
displacement for the vmovd instruction, and should be printed in the same line.
Results obtained with:
$ objdump -v
GNU objdump version 2.38-27.fc37
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug binutils/30953] New: Objdump cuts 32bit displacements for AVX instructions,
blarsen at redhat dot com <=