[LLVMbugs] [Bug 15040] New: vfmaddps called with incorrect memory address (1 Byte offset)

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Tue Jan 22 08:11:58 PST 2013


http://llvm.org/bugs/show_bug.cgi?id=15040

             Bug #: 15040
           Summary: vfmaddps called with incorrect memory address (1 Byte
                    offset)
           Product: clang
           Version: 3.2
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: -New Bugs
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: kretz at kde.org
                CC: llvmbugs at cs.uiuc.edu
    Classification: Unclassified


Hi,

I have a unit test that tests the vfmaddps instruction (via the _mm256_macc_ps
intrinsic), that fails with clang. I just found from looking at the
disassembly, that the load address, which clang encodes into the instruction,
is off by 1 Byte. Apparently it expects the instruction code to be one Byte
shorter (since it is relative to %rip):

4064e5:  c4 e3 fd 68 05 d2 49 03 00 00  vfmaddps
0x349d2(%rip),%ymm0,%ymm0,%ymm0        # 43aec1 <_IO_stdin_used+0x41>
4064ef:  c5 fd 7f 84 24 00 01 00 00     vmovdqa %ymm0,0x100(%rsp)

If the instruction code is modified to c4 e3 fd 68 05 d1 49 03 00 00, the test
passes. Let me know if you don't need me to reduce a testcase. I'll give
multidelta a bit of work and will attach a testcase later, otherwise.

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list