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: jbg...@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.