[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug gas/31617] New: VAX: Check immediates to match expected operand typ
From: |
address@hidden |
Subject: |
[Bug gas/31617] New: VAX: Check immediates to match expected operand type |
Date: |
Sun, 07 Apr 2024 21:06:25 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=31617
Bug ID: 31617
Summary: VAX: Check immediates to match expected operand type
Product: binutils
Version: unspecified
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: gas
Assignee: unassigned at sourceware dot org
Reporter: jbglaw@lug-owl.de
Target Milestone: ---
In NetBSD's src/sys/arch/vax/vax/unimpl_emul.S, we had three bogus assembler
statements:
movq $0f0.0, TMPFRAC2
movd $0f0.0, TMPFRAC1
movd $0f0, (%r0)
NOVQ is ment to work on a 64bit (integer) value, MOVD is ment to work on a
D_Float type (64bit wide.) The supplied immediate value is of type F_Float and
thus only 32bit wide.
Compiling the actual unimpl_emul.S resulted in observable differences: The
generated immediate was correctly rendered as 64bit wide, with the low 32bit
containing the correctly parsed F_Float, but the upper 32bit contained random
stale data. Thus, interpreted as D_Float, the value is no longer 0.0 .
As we know the expected types for all instructions, we'd be able to reject such
a situation where not even the size is correct.
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug gas/31617] New: VAX: Check immediates to match expected operand type,
address@hidden <=